continuous - australia and new zealand testing board€¦ · continuous integration integrate...
TRANSCRIPT
![Page 1: CONTINUOUS - Australia and New Zealand Testing Board€¦ · CONTINUOUS INTEGRATION Integrate changes from each developer into the main branch, on checkin / pull request. CONTINUOUS](https://reader036.vdocument.in/reader036/viewer/2022071009/5fc7777d14ff077c5b415e03/html5/thumbnails/1.jpg)
CONTINUOUS
ALL THE THINGS 11.08.2016 Willie Goosen
![Page 2: CONTINUOUS - Australia and New Zealand Testing Board€¦ · CONTINUOUS INTEGRATION Integrate changes from each developer into the main branch, on checkin / pull request. CONTINUOUS](https://reader036.vdocument.in/reader036/viewer/2022071009/5fc7777d14ff077c5b415e03/html5/thumbnails/2.jpg)
CONTINUOUS CHALLENGES
Environment inconsistency: development and test
environments that are different to production.
![Page 3: CONTINUOUS - Australia and New Zealand Testing Board€¦ · CONTINUOUS INTEGRATION Integrate changes from each developer into the main branch, on checkin / pull request. CONTINUOUS](https://reader036.vdocument.in/reader036/viewer/2022071009/5fc7777d14ff077c5b415e03/html5/thumbnails/3.jpg)
CONTINUOUS CHALLENGES
Lack of Ownership: development and test environments that
are different to production or teams not working close enough.
“It works on my
machine…”- every developer ever -
“The servers are fine…
Must be the code.”- every sysadmin ever -
![Page 4: CONTINUOUS - Australia and New Zealand Testing Board€¦ · CONTINUOUS INTEGRATION Integrate changes from each developer into the main branch, on checkin / pull request. CONTINUOUS](https://reader036.vdocument.in/reader036/viewer/2022071009/5fc7777d14ff077c5b415e03/html5/thumbnails/4.jpg)
CONTINUOUS CHALLENGES
Pets VS Cattle : Treating your servers / services like pets,
rather than Cattle, if it gets sick get rid of it.
Name, Love, Nurse VS Numbers, Identical, Disposable
![Page 5: CONTINUOUS - Australia and New Zealand Testing Board€¦ · CONTINUOUS INTEGRATION Integrate changes from each developer into the main branch, on checkin / pull request. CONTINUOUS](https://reader036.vdocument.in/reader036/viewer/2022071009/5fc7777d14ff077c5b415e03/html5/thumbnails/5.jpg)
CONTINUOUS CHALLENGES
Different Goals : When you have silos of teams with different
goal and drivers
DEV
• Innovate Through Change
• Quick turnaround on features
• Not concerned of code impact
on infrastructure
OPS
• Generate stability
• Rewarded for uptime
• Hawk eye on resource
consumption of servers
VS
PROBLEM!!
![Page 6: CONTINUOUS - Australia and New Zealand Testing Board€¦ · CONTINUOUS INTEGRATION Integrate changes from each developer into the main branch, on checkin / pull request. CONTINUOUS](https://reader036.vdocument.in/reader036/viewer/2022071009/5fc7777d14ff077c5b415e03/html5/thumbnails/6.jpg)
CONTINUOUS INTEGRATION
Integrate changes from each developer into the main branch, on
checkin / pull request.
![Page 7: CONTINUOUS - Australia and New Zealand Testing Board€¦ · CONTINUOUS INTEGRATION Integrate changes from each developer into the main branch, on checkin / pull request. CONTINUOUS](https://reader036.vdocument.in/reader036/viewer/2022071009/5fc7777d14ff077c5b415e03/html5/thumbnails/7.jpg)
CONTINUOUS INTEGRATION
Static Analysis and Unit testing for code quality is performed
before any code review happens.
Commit
Dev
Build
Unit
Test
Analyse
![Page 8: CONTINUOUS - Australia and New Zealand Testing Board€¦ · CONTINUOUS INTEGRATION Integrate changes from each developer into the main branch, on checkin / pull request. CONTINUOUS](https://reader036.vdocument.in/reader036/viewer/2022071009/5fc7777d14ff077c5b415e03/html5/thumbnails/8.jpg)
CONTINUOUS DELIVERY
Deploying the resulting artefact from each Integrated build into
various environments
Continuous Testing
Commit
Dev
Build
Continuo
us
Monitorin
g
Continuous Delivery
![Page 9: CONTINUOUS - Australia and New Zealand Testing Board€¦ · CONTINUOUS INTEGRATION Integrate changes from each developer into the main branch, on checkin / pull request. CONTINUOUS](https://reader036.vdocument.in/reader036/viewer/2022071009/5fc7777d14ff077c5b415e03/html5/thumbnails/9.jpg)
BUZZWORDS• Immutable Infrastructure - Your
infrastructure is treated just like code and
checked into source control and build from
created from there
• Rolling Deployments - Each server is taken
out of the pool and upgraded, then placed back
in to service
• Blue Green Deployments - Whole new stack
is built, once ready it completely replaces the
previous
![Page 10: CONTINUOUS - Australia and New Zealand Testing Board€¦ · CONTINUOUS INTEGRATION Integrate changes from each developer into the main branch, on checkin / pull request. CONTINUOUS](https://reader036.vdocument.in/reader036/viewer/2022071009/5fc7777d14ff077c5b415e03/html5/thumbnails/10.jpg)
CONTINUOUS TESTING
Depending on the level of test automation, integrated builds can
move across environments with or without interaction
Continuous Testing
Commit
Dev
Build
Continuo
us
Monitorin
g
Continuous Delivery
![Page 11: CONTINUOUS - Australia and New Zealand Testing Board€¦ · CONTINUOUS INTEGRATION Integrate changes from each developer into the main branch, on checkin / pull request. CONTINUOUS](https://reader036.vdocument.in/reader036/viewer/2022071009/5fc7777d14ff077c5b415e03/html5/thumbnails/11.jpg)
CONTINUOUS MONITORING
Ensuring all aspects of each environment is monitored and
possibly self-healing
Continuous Testing
Commit
Dev
Build
Continuo
us
Monitorin
g
Continuous Delivery
![Page 12: CONTINUOUS - Australia and New Zealand Testing Board€¦ · CONTINUOUS INTEGRATION Integrate changes from each developer into the main branch, on checkin / pull request. CONTINUOUS](https://reader036.vdocument.in/reader036/viewer/2022071009/5fc7777d14ff077c5b415e03/html5/thumbnails/12.jpg)
BUZZWORDS
• Application Performance Management -
These are specialised tools that inspect the
code and interactions with users, web services
databases and infrastructure to pinpoint issues.
• Log Aggregation - Central place where
aaaaaaallll the logs of a system is stored,
usually with a google-for-logs interface to
search and find events.
![Page 13: CONTINUOUS - Australia and New Zealand Testing Board€¦ · CONTINUOUS INTEGRATION Integrate changes from each developer into the main branch, on checkin / pull request. CONTINUOUS](https://reader036.vdocument.in/reader036/viewer/2022071009/5fc7777d14ff077c5b415e03/html5/thumbnails/13.jpg)
TYING IT TOGETHER
• Build Tool
• Deployment Tool
• Containers
• Ticket Tracking
• Wiki
• Source Code
![Page 14: CONTINUOUS - Australia and New Zealand Testing Board€¦ · CONTINUOUS INTEGRATION Integrate changes from each developer into the main branch, on checkin / pull request. CONTINUOUS](https://reader036.vdocument.in/reader036/viewer/2022071009/5fc7777d14ff077c5b415e03/html5/thumbnails/14.jpg)
PARTING THOUGHTS
• Culture - Tighten the interactions between Dev,
Test and Ops
• Automation - Establish a practice of automation
• Measure - You can only tune, if you know what
the system currently does
• Share - Share the same tools, metrics and data
across Dev, Test, and Ops
![Page 15: CONTINUOUS - Australia and New Zealand Testing Board€¦ · CONTINUOUS INTEGRATION Integrate changes from each developer into the main branch, on checkin / pull request. CONTINUOUS](https://reader036.vdocument.in/reader036/viewer/2022071009/5fc7777d14ff077c5b415e03/html5/thumbnails/15.jpg)
ASK?!?
ALL THE THINGS