> For the complete documentation index, see [llms.txt](https://docs.navigaglobal.com/everyware/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.navigaglobal.com/everyware/developer-documentation/getting-started/deployment.md).

# Deployment

## 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.&#x20;

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

## 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](/everyware/developer-documentation/getting-started/git.md)
