Great, we now have some infrastructure code, lets build it. In DevOps we automate this process using something called Continuous Integration. Take a moment to review the article below to gain a better understanding of what CI is.
The Four Pillars of Continuous Integration:
- A Version Control System manages changes to your source code over time.
- A Package Management System is used to install, update and manage software packages and theirs dependencies between them.
- A Continuous Integration pipeline compiles and/or validates the code commited to the principal branch (e.g: main) everytime a change is merged to it.
- An Automated Build Process creates a software build including compiling, packaging, and running automated tests.
Benefits of Continuous Integration:
- Improving code quality based on rapid feedback
- Triggering automated testing for every code change
- Reducing build times for rapid feedback and early detection of problems (risk reduction)
- Better management of technical debt and code analysis
- Reducing long, difficult, and bug-inducing merges
- Increasing confidence in codebase health long before production deployment
- Rapid feedback to the developer
-
How to use GitHub Actions:
Have you tried to implement continuous integration in your organization?
If you where successful, what lessons did you learn?
If you were not successful, what were the challenges?
In GitHub we use Actions to automate our build process.
- Go to Actions, then click on "New Workflow", look for Terraform template and click 'Configure button'.
- Look for the green button named "Start Commit" and click it
- Type a name for the commit
- Finally, click the green button named "Commit new file" and you are done.
- Your builds should complete without any errors.
- You should have a build for the infrastructure.