Releasing Mozmill has a lot of moving parts. Here's how it's done.
(See https://bugzilla.mozilla.org/show_bug.cgi?id=691368 for the bad page title)
Bump the Version Numbers in the Source
Versions are recorded in the python package setup.py files, and the extension install.rdf files (for jsbridge and mozmill). In addition, the python package dependencies should be appropriately bumped as well.
In order to bump the versions, it is recommended that you use the version bumping script: https://github.com/mozautomation/mozmill/blob/master/versionbump.py
Using --help to see the options for this script.
Make a bug and attach the patch for review.
Tag the Version
Once the versions are bumped and committed to https://github.com/mozautomation/mozmill , the branch should be tagged with the appropriate version. As an example, for the hotfix-1.5 branch ( https://github.com/mozautomation/mozmill/tree/hotfix-1.5 ), the process looks like this:
git pull --tags mozauto hotfix-1.5 git tag git tag 1.5.5 git push --tags mozauto hotfix-1.5
Release to PyPi
Go into each directory (mozrunner/mozmill/jsbridge) and upload the package to pypi:
for i in mozrunner mozmill jsbridge; do cd $i; python setup.py sdist upload; cd ..; done
Note: To upload to PyPI, you'll have to have a key registered with pypi and be listed as a maintainer of the pypi packages in order for the upload step to work. If you need that access for some reason, let jhammel or ctalbert know.
Release to AMO
https://addons.mozilla.org/en-US/firefox/addon/mozmill/ should be updated for the latest mozmill version.
- Once you have a final version, cd into mozmill/mozmill/mozmill/extension
- Run: ant -f build.xml (this builds the extension)
- Log into your AMO account (assuming you are an owner of mozmill on AMO), upload the new extension and fill out the required forms on AMO for it.