Hey there AWS Newbies, I get asked alot about what CICD is and how it is used in the dev process, so here goes:
Continuous integration and continuous deployment (CI/CD) is a software development practice that involves automatically building, testing, and deploying code changes.
Imagine that you are building a house. In a traditional process, you might build the entire house from start to finish, and then test everything at the end to make sure it's working correctly. This is like building and testing code all at once, rather than doing it continuously throughout the development process.
Now imagine that you are building the house, but every time you finish a section, you test it to make sure it's working correctly before moving on to the next section. This is like continuously integrating and testing code changes as they are made, rather than waiting until the end of the development process.
Finally, imagine that every time you finish a section and test it, you immediately put it into use in the house. This is like continuously deploying code changes as they are made and tested, rather than waiting until the end of the development process.
Overall, CI/CD is a practice that involves continuously integrating and testing code changes, and then continuously deploying those changes as they are ready. This helps to ensure that code is of high quality and that it can be quickly and easily deployed to production environments.
Github actions typically forms a signifigant part of a CICD pipeline, here is an article that explains Github Actions an how it helps.