These notes describe how to build and publish a release of IAB, and how to upload the content to readIAB.org.
-
Ensure that the Travis build is passing on the master branch.
-
Update version strings. As of this writing, these need to be updated in
setup.py
,iab/__init__.py
,book/getting-started/reading-iab.md
, andconda-recipe/meta.yaml
, but it's a good idea to do a global find on the code base for the last release version number to ensure that you're not missing anything. (In the future, the version number will only be specified in one place to simplify this process.) -
Update
CHANGELOG.md
to include descriptions of the changes since the last release. -
Submit a pull request with these changes and let Travis run.
-
Install build-iab if you don't already have it installed.
-
From the top-level
An-Introduction-to-Applied-Bioinformatics
directory, build the html and IPython Notebooks with the following commands. Poke through these files to ensure that they look right, and that the Edit links work correctly.biab html -i book -o html biab notebook -i book -o ipynb
From the An Introduction to Applied Bioinformatics GitHub page, click on the release
link and draft a new release. Use the version number for the tag name and create the tag against master. Fill in a release title that is consistent with previous release titles and add a summary of the release (linking to CHANGELOG.md
is a good idea). This release summary will be the primary information that we point users to when we announce the release.
These notes are in draft stage right now as they were developed between releases. Will test and finalize during the next release.
-
Configure your conda build environment by installing
Miniconda
and then runningconda install conda-build
. -
Download the release that was just created on GitHub, and unzip that. Change into the resulting directory.
-
Build the conda package for your OS and upload it (since I'm running OS X, this will build the OS X package).
conda build conda-recipe --python 3.4 binstar upload $HOME/.miniconda/conda-bld/osx-64/iab-0.1.1-np19_0.tar.bz2
-
Build conda packages for other OSes and upload them (since I'm running OS X, I'll build the Linix packages).
conda convert --platform linux-32 $HOME/.miniconda/conda-bld/osx-64/iab-0.1.1-np19_0.tar.bz2 binstar upload linux-32/iab-0.1.1-np19_0.tar.bz2 conda convert --platform linux-64 $HOME/.miniconda/conda-bld/osx-64/iab-0.1.1-np19_0.tar.bz2 binstar upload linux-64/iab-0.1.1-np19_0.tar.bz2
-
Download the release that was just created on GitHub, and unzip that. Change into the resulting directory.
-
Perform the s3 build and upload, which will required that you have the
AWS_ACCESS_KEY_ID
andAWS_SECRET_ACCESS_KEY
environment variables set.biab s3build -i book -o s3built biab s3upload -i s3built -v latest biab s3upload -i s3built -v <version>
Note that
<version>
should be replaced with the current release version. -
Optional: If there are changes to the README.md (which is the content that lives at readIAB.org/index.html), convert that to html:
ipython -c "import biab.util; biab.util.md_to_html('README.md', 'index.html')"
Upload the resulting HTML file to the readiab.org S3 bucket.
These steps are pretty clunky now, but will be updated in the near future to be a single step.
-
Update the version strings to indicate the development release number. This should be
<version>-dev
, where<version>
is the release that you just published. -
Update CHANGELOG.md to create a section for changes since the last release.
-
Submit a pull request with these changes. Let the Travis build run, and if the tests pass merge the pull request.
-
Tweet about the release pointing to the release notes on GitHub.
-
🍻
These notes were developed based on scikit-bio's RELEASE.md.