Deployment

This document set the rules for a common and standardized deployment procedure to ensure smooth deployment after the project is set live.

Jenkins

Deployments are normally done with Jenkins (https://jenkins.io/), there is different jobs for test, stage and production environments. The Jenkins job will run composer, npm, gulp and any other project dependencies, it will also upload static resources to an S3 bucket.

Jenkins is an automation server which is used to build, test and deploy your code in a controlled and predictable way.

When the static upload is finished the code will be zipped in to a file that will be deployed to the Elastic Beanstalk environment.

Changelog

Don't forget to add your changes to your CHANGELOG.md. That makes it easy for other developers to see what has been done.

Git tags

To build to production you must add a git version tag on master.

Jenkins use tags for production deploys. It allows you to identify specific release versions of your code and will make a roll back prod environment quick and easy.

For stage deploys we will build from a branch rather than tags.

More on working with git

Last updated