DevOps Domain Flashcards
I: CI/CD PROCESS
its a series of orchestrated steps with the ability to take source code all the way into production. The steps include building, packaging, testing, validating, verifying infrastructure, and deploying into all necessary environments.
I: CONTINUOUS INTEGRATION
is where developers regularly merge their code changes into a central repository, after which automated builds and tests are run.
I: CONTINUOUS DELIVERY
is a software development practice where code changes are automatically prepared for a release to production.
I: CONTINUOUS DEPLOYMENT
is a process that uses automated testing to validate if changes to a codebase are correct and stable for immediate autonomous deployment to a production environment.
I: CI/CD VALUE & BENEFITS
Faster software bundles time-to-market improved code quality smaller teams constant changes fast and real-time feedback fast app deployment
I: CI/CD TOOLS
CI Tools:
GitHub GitLab BitBucket Jenkins Bamboo CI CircleCI Travis CI Azure DevOps CodeDeploy CodeCommit CodeBuild Selenium
CD Tools:
CodePipeline
Spinnaker
Argo CD
Tekton CD
I: BLUE/GREEN DEPLOYMENTS
A blue/green deployment is a deployment strategy in which you create two separate, but identical environments. One environment (blue) is running the current application version and one environment (green) is running the new application version. Using a blue/green deployment strategy increases application availability and reduces deployment risk by simplifying the rollback process if a deployment fails. Once testing has been completed on the green environment, live application traffic is directed to the green environment and the blue environment is deprecated.
I: CANARY DEPLOYMENTS
is a deployment strategy that releases an application or service incrementally to a subset of users. All infrastructure in a target environment is updated in small phases (e.g: 2%, 25%, 75%, 100%). A canary release is the lowest risk-prone, compared to all other deployment strategies, because of this control.