Skip to content

Releasing Sirius

Tommy Barker edited this page Mar 3, 2014 · 12 revisions

####1. Make a Release Branch

Create a separate branch for the release, sirius uses semantic versioning:

git branch release-x.x.x
git checkout release-x.x.x

Only two files should change in a release commit, pom.xml and build.sbt. Also only the version number of the project should change in these files.

The first line of the commit message should be Release x.x.x. The next paragraph should contain the most important changes since the last release. The last section contains every commit since the last release, which should be the output from

git log --pretty --oneline

The list of commits should be organized into logical sections, for example

  • New Features
  • Bugfixes
  • Documentation/Project Maintenance

See 1bda7c9c for an example.

Once everything has been committed to your fork, send in a pull request for review.

####2. Tag and Release Tagging should be done directly in the GitHub interface. Once the pull request has been accepted, go to the sirius page and click Draft a new release. In the tag version text box, type the release number using the github versioning standard with a v prepending the semantic version (vx.x.x). For the release title, use Release x.x.x. For the description, just copy the commit message for the release discussed above. When you are done, click Publish Release and github will tag and release master at its current state.

####3. Build and Deploy Scala Docs Our scaladocs live in S3 at https://console.aws.amazon.com/s3/home?region=us-west-2 in the siriusapi bucket. Once a release has been performed, build the scaladoc by issuing the following command:

sbt doc

This command will generate all scaladocs under target/api. To upload, first navigate to the siriusapi bucket and create a release folder with the name release-x.x.x. Next do Action -> Upload and drag and drop all local files in target/api to the web interface inside the release folder you created.

####4. Deploy Scala Artifacts Just a placeholder until Sirius is open source

####5. Increment Version to Next Snapshot Update files pom.xml and build.sbt with the next version appended with -SNAPSHOT. Commit and send the pull request for review. Only pom.xml and build.sbt should change in this commit.