ad38 building quality into your release pipeline
play

AD38 - Building Quality into Your Release Pipeline - PDF document

AD38 DevOps Practices 11:30 AM AD38 - Building Quality into Your Release Pipeline Presented by: Troy Walsh


  1. ¡ ¡ ¡ ¡ AD38 ¡ DevOps ¡Practices ¡ 11:30 ¡AM ¡ ¡ ¡ ¡ ¡ ¡ AD38 ¡-­‑ ¡Building ¡Quality ¡into ¡Your ¡ Release ¡Pipeline ¡ ¡ Presented ¡by: ¡ ¡ ¡ ¡ Troy ¡Walsh ¡ ¡ ¡Magenic ¡ ¡ Brought ¡to ¡you ¡by: ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ 888 -­‑-­‑-­‑ 268 -­‑-­‑-­‑ 8770 ¡ ·√·√ ¡904 -­‑-­‑-­‑ 278 -­‑-­‑-­‑ 0524 ¡-­‑ ¡info@techwell.com ¡-­‑ ¡ https://agiledevopswest.techwell.com/ ¡ ¡

  2. ¡ Troy ¡Walsh ¡ ¡ Troy ¡Walsh ¡is ¡the ¡national ¡quality ¡assurance ¡& ¡testing ¡practice ¡lead ¡and ¡co ¡DevOps ¡lead ¡ for ¡Magenic ¡Technologies. ¡He ¡started ¡his ¡career ¡in ¡the ¡DevOps ¡space ¡as ¡a ¡Release ¡ developer, ¡creating ¡custom ¡build, ¡deployment ¡and ¡installation ¡solutions ¡for ¡Epic ¡ Systems. ¡Following ¡Epic, ¡he ¡transitioned ¡to ¡consulting ¡where ¡he ¡developed ¡a ¡love ¡for ¡ test ¡automation. ¡Troy ¡is ¡a ¡frequent ¡blogger ¡(Magenic.com ¡and ¡CIO.com) ¡and ¡speaker ¡ (Twin ¡Cities ¡Test ¡Automation ¡Group, ¡SauceCon, ¡The ¡Executive ¡Leadership ¡Institute ¡and ¡ more) ¡with ¡a ¡passion ¡for ¡test ¡automation ¡and ¡DevOps. ¡

  3. 6.6.19 Building Quality into Your Release Pipeline Troy oy Wals lsh

  4. Overview » A note about tooling » High level overview of DevOps » What we mean by quality » The key to effective DevOps » Core concepts » Live demo » Questions 2

  5. A Note About Tooling » Process over tooling » Let your needs dictate your tools » Beware of the best of breed trap 3

  6. DevOps High-level » Defined Processes Plan • Backlo cklog Groo ooming ming › Transparency • Sprint int plannin nning › Consistency Build ld Monit itor or • Develop elop • Usage ge • Compi mpile le • Failur ilures es • Conf nfigur igure/ e/Deplo eploy • User er feed edback ck • Create e Artif ifact ct » Automation • Suppor port ticket kets • Operabili ility › Deployments › Configuration Test › Testing Oper erat ate • Unit it • Feature ure • Conf nfigur iguration ion • Regres ession ion • Depl ployme oyment nt • Performa manc nce • Healt lth checks ecks • UAT » Fast feedback • Secur curit ity Release lease › Business • Artif ifact • Conf nfigur igure/ e/Deplo eploy › Development • Hosting ing 4

  7. What Do We Mean By “Quality” » Code » Processes » Product » Operability 5

  8. Pl Plan T an To o Fail ail 6

  9. Terms » CI › Continuous integration » CD › Continuous delivery or deployment » CT › Continuous testing 7

  10. Source Control » Where source code lives » Tracks change history » Provides a way to branch *Different source control technologies do this differently » Provides a way to share branches 8

  11. Static Code Analysis » Looks at the source code » Finds style, code quality, test coverage and security issues » A must for any enterprise level application 9

  12. Gates » Criteria that must be met before an automated process can continue » Helps assure quality » Types › Code › Build › Deploy › Quality 10 10

  13. Gated Check-in » Build that runs be befor ore merging changes into a shared branch » Can be part of branch policy » Should only run unit test » Time sensitive 11 11

  14. Triggers » Kicking off a process when an event happens » Event types › CI › Scheduled › Manual › Hybrid 12 12

  15. Build » Group of tasks that compile and/or package content » Content typically comes form source control » Build artifact › A copy of the content created via a build process 13 13

  16. Unit Test » Black box testing » Lives with the application code » Typically done by development 14 14

  17. Package » Taking the results of a build and packaging it to a redistributable form 15 15

  18. CI » CI = Continuous Integration » Build that runs after merging changes into a shared branch » Process by which changes to a shared repository are automatically built and tested with each check-in » CI build artifacts are often used as release candidates 16 16

  19. Deployment » Copying files to a host » Often packages are what get deployed » Example: › Bring down service › Copy over new files › Configure new content › Bring back up service 17 17

  20. CD » CD = Continuous Deployment » Process by which changes to a shared repository are automatically deployed with each check-in » Runs after CI » Often deploys CI artifacts 18 18

  21. Release Pipeline » Process by which changes get released to environments 19 19

  22. Configuration » Global application value » Often needs to be updated for each environment *Especially ally true when build arti tifa facts cts are deployed » Common override strategies › Environment variables › Transform › Scripted › Host override 20 20

  23. CT » CT = Continuous Testing » An automated process which attempts to measure or assure the quality of an automated deployment » Runs as part t of of CD » Often used as a CD gating mechanism » Often, but not always, accomplished by leveraging ATDD and/or BDD practices 21 21

  24. CT - Performance » Verifies the application is responsive » Several different types are load, stress and response time tests. 22 22

  25. Monitoring » Proactively monitor product › Resources › Bottle necks › Synthetic transactions » Find problems earlier › Autoscaling › Blue-Green deployments » Learn › Analytics › User feedback 23 23

  26. What This Looks Like In Practice 24 24

  27. Questions 26 26

  28. 7.277.1044 / mage m // // 27 877.277.1044 genic.c .com 27 THANK YOU

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend