Reviewing common CI/CD patterns
As with any engineering discipline, you can generally find patterns that help implement a specific strategy or outcome. This is also true when you are dealing with CI/CD pipelines. Branching strategies for your repository can be loosely or tightly coupled to the pattern you decide to go with but are not in themselves CI/CD patterns.
As we are using Git as our source control management system, the notion is that you will generally be developing in a branch, pushing those changes remotely, and ultimately, creating a pull request to merge your code into a branch suitable for building a deployable artifact.
However, there are some patterns that, when automated, will give you an advantage, especially if multiple environments or artifacts are used.
Environment-based
Using an environment-based approach to software deployment is typical of most development life cycles. Two patterns are commonly leveraged to facilitate multi-environment deployments...