2014-02-26 19:48:34 +04:00
Release Process
===============
2014-11-25 19:53:41 +03:00
This document describes the process of creating and publishing an Ansible Tower release.
2014-02-26 19:48:34 +04:00
Time for a release
------------------
2014-11-25 19:53:41 +03:00
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` .
2014-12-04 20:47:14 +03:00
```
2014-11-25 19:53:41 +03:00
__version__ = 'X.Y.Z'
2014-12-04 20:47:14 +03:00
```
2014-11-25 19:53:41 +03:00
2015-06-12 16:00:53 +03:00
2. Update the "Release History" in the file `README.md` .
2014-11-25 19:53:41 +03:00
2015-06-12 16:00:53 +03:00
3. Update the rpm package changelog by adding a new entry to the file `packaging/rpm/ansible-tower.spec` .
2014-11-25 19:53:41 +03:00
2015-06-12 16:00:53 +03:00
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.
2014-02-26 19:51:13 +04:00
2014-12-04 20:47:14 +03:00
```
2014-12-04 20:44:25 +03:00
git tag < X.Y.Z >
git push --tags
2014-12-04 20:47:14 +03:00
```
2014-11-25 19:53:41 +03:00
2015-06-12 16:00:53 +03:00
6. Create and push a release branch to git.
2014-11-25 19:53:41 +03:00
2014-12-04 20:47:14 +03:00
```
2014-12-04 20:44:25 +03:00
git branch release_< X.Y.Z >
git checkout release_< X.Y.Z >
git push origin release_< X.Y.Z >
2014-12-04 20:47:14 +03:00
```
2014-02-26 19:48:34 +04:00
Monitor Jenkins
---------------
2015-11-13 19:47:28 +03:00
Once tagged, one must launch the [Release_Tower ](http://jenkins.testing.ansible.com/view/Tower/job/Release_Tower/ ) with the following parameters:
2014-11-25 19:53:41 +03:00
* `GIT_BRANCH=origin/tags/<X.Y.Z>`
* `OFFICIAL=yes`
2014-02-26 19:48:34 +04:00
The following jobs will be triggered:
2015-11-13 19:47:28 +03:00
* [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/ )
2014-02-26 19:48:34 +04:00
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
2014-04-08 21:14:59 +04:00
* 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 < dave @ ansible . com > to initiate the process.
Publishing Documentation
------------------------
2015-11-13 19:47:28 +03:00
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.