Build. Deploy. Pray. Test.
CI+CD workshop
Agenda
-
Key concepts
-
High-level CI+CD flow
-
CI hands-on
-
CD hands-on
Continuous integration Integration
-
Software systems
-
Systems tend to be complex
-
Bringing all components together
-
It's hard, takes time
Continuous integration
-
Integrate work frequently
-
Advocated by Extreme programming
-
Set of software development practices
-
Martin Fowler's article on CI
CI: Single source repo
-
Keeping track of files is a pain
-
Everything needed should be in there.
-
Everything you need to get started
-
The TRUTH
CI: Automated build
-
Keep manual steps to a minimumĀ
-
Build tools galore
CI: Self-testing
-
Check all the things
-
Testing tools galore
-
Can include integration testing
CI: Integration machine
-
Your relentless colleague
-
Gathers all of the above
-
Picks up each change and runs the checks
CI: The softer things
-
Fix broken builds immediately
-
Keep the process fast
CI: Transparency
-
Easily see what's going on
-
Easily get the artifacts
CI: Concepts wrap-up
-
Single code repo
-
Automated build
-
Self-testing
-
Integration machine
-
Transparency
High-level flow

Postman
-
Manual API testing
-
Variables and parameterised requests
-
Test cases
-
Test collections
Newman
-
Command line executor for Postman collections
-
Built on node.js and available on NPM
-
Maintains feature parity with Postman
Daman
-
Check all the things
-
Testing tools galore
-
Can include integration testing
References
-
https://ronjeffries.com/xprog/what-is-extreme-programming/#continuous
-
https://martinfowler.com/articles/continuousIntegration.html
Build.Deploy.~Pray~.Test.
By andreimoustache
Build.Deploy.~Pray~.Test.
- 35