Learn

The application is finally ready for production, but who is going to approve it and move it onto the production server? Traditionally, an approval process is controlled by the deployment team. The team would ensure that the production server is ready, all tests from continuous delivery have passed, and the feature meets the business requirements. Afterwards, the application would be manually deployed onto the production environment.

This process typically requires entire features to be completed before deploying to production, resulting in slower release cycles. For many businesses, this is desirable. For others businesses, releasing new updates on a faster and more regular schedule may be preferred. To achieve, this, Continuous Deployment is the solution.

Continuous deployment is the automatic process of deploying a project to the production server after it has been tested in testing and staging environments.

Automated deployments might look like this:

  • If previous stages were successful, then the deployment is approved automatically.
  • An automated system deploys the application onto the production environment.
  • Final tests, feedback from users, and monitoring tools identify any bugs in production.
  • Developers can quickly react and push bug fixes.
  • The automated pipeline is triggered. This results in another deployment which updates the live application.

Once automated deployment is in place, users are always able to access the most up-to-date version of the application. Keep in mind that this may or may not be the desired effect depending on the business. Some businesses may automate continuous testing, integration, and delivery while choosing to maintain manual deployments.

Instructions

Rapid merges take priority over releasing completed features when using continuous integration, delivery, and deployment. How might teams deal with releasing potentially incomplete features?

See the answer!

To prevent users from accessing potentially incomplete features, teams can hide them for all (or some) users and then make them available once the feature is complete. This is fairly easy to do using simple conditional statements!


With continuous deployment in place, we have fully automated the deployment process from merging code to testing to deploying to production. Before we wrap up, let’s take a look at the full CI/CD pipeline and how it relates to a DevOps culture.

Take this course for free

Mini Info Outline Icon
By signing up for Codecademy, you agree to Codecademy's Terms of Service & Privacy Policy.

Or sign up using:

Already have an account?