Release Process =============== This document describes the process of creating and publishing an Ansible Tower release. Time for a release ------------------ When the time comes for a release, the following steps will ensure a smooth and successful release. 1. Verify that the `__version__` variable has been updated in `awx/__init__.py`. ``` __version__ = 'X.Y.Z' ``` 2. Update the "Release History" in the file `README.md`. 3. Update the rpm package changelog by adding a new entry to the file `packaging/rpm/ansible-tower.spec`. 4. Update the debian package changelog by adding a new entry to the file `packaging/debian/changelog`. 5. Tag and push the release to git. ``` git tag git push --tags ``` 6. Create and push a release branch to git. ``` git branch release_ git checkout release_ git push origin release_ ``` Monitor Jenkins --------------- Once tagged, one must launch the [Release_Tower](http://jenkins.testing.ansible.com/view/Tower/job/Release_Tower/) with the following parameters: * `GIT_BRANCH=origin/tags/` * `OFFICIAL=yes` The following jobs will be triggered: * [Build_Tower_TAR](http://jenkins.testing.ansible.com/view/Tower/) * [Build_Tower_DEB](http://jenkins.testing.ansible.com/view/Tower/) * [Build_Tower_AMI](http://jenkins.testing.ansible.com/view/Tower/) * [Build_Tower_RPM](http://jenkins.testing.ansible.com/view/Tower/) * [Build_Tower_Docs](http://jenkins.testing.ansible.com/view/Tower/) Should any build step fail, Jenkins will emit a message in IRC and set the build status to failed. Publishing Builds ----------------- Upon successful completion, jenkins will publish build artifacts to the following locations: * http://releases.ansible.com/ansible-tower/rpm * http://releases.ansible.com/ansible-tower/deb * http://releases.ansible.com/ansible-tower/setup * http://releases.ansible.com/ansible-tower/docs Publishing AMI's ---------------------- While OFFICIAL Tower AMI's are created by jenkins, the process for blessing AMI's is manual. Please contact to initiate the process. Publishing Documentation ------------------------ Tower documentation is available in the [product-docs](https://github.com/ansible/product-docs) repository. The [Build_Tower_Docs](http://jenkins.testing.ansible.com/view/Tower/) job builds and publishes PDF, and HTML, documentation.