Continuous delivery options
When deploying anything to production, we should think about making sure to remove uncertain factors. For example, if we are deploying from our own machine, how do we know that it's the latest version? How do we know that our teammates didn't recently solve a problem and we don't have the fix in our branch? To be honest, how do we even know that the version in source control is the same in production? Or if the version in production even exists in source control?
This is where Continuous Integration and Continuous Delivery/Deployment (CI/CD)come into the picture. We simply make sure that something else makes the deployment to production. Deployment is a book in itself so we won't go that deep into the subject.
GitHub Actions and Azure DevOps (or Azure Pipelines) are two ways from Microsoft to do CI/CD. There are many more, such as Jenkins, TeamCity, and GitLab – the list is long. If the CI/CD system we are currently using...