Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • If a release candidate does not pass, it is necessary to roll back the commits which advanced Spark's versioning.

    Code Block
    languagebash
    # Checkout the release branch from Apache repo
     
    # Delete earlier tag. If you are using RC-based tags (v0.9.1-rc1) then skip this.
    $ git tag -d v0.9.1
    $ git push origin :v0.9.1
    
    # Revert changes made by the Maven release plugin 
    $ git revert HEAD --no-edit    # revert dev version commit
    $ git revert HEAD~2 --no-edit  # revert release commit
    $ git push apache HEAD:branch-0.9

...

Packaging and Wrap-Up for the Release

  • Update the Spark Apache repository

    • Checkout the tagged commit for the release candidate and apply the correct version tag

      Code Block
      languagebash
      $ git checkout v0.9.1-rc3
      $ git push apache HEAD:branch-0.9
    • Update remaining version numbers in the release branch (see this example commit)
  • Update the spark-ec2 scripts
    • Upload the binary packages to the S3 bucket s3n://spark-related-packages (ask pwendell to do this)
    • Alter the init scripts in mesos/spark-ec2 repository to pull new binaries (see this example commit and remember to update v2 branch for branch-0.9 releases)
    • You can audit the ec2 set-up by launching a cluster and running this audit script 
      • Make sure you create cluster with default instance type (m1.xlarge)
  • Update the Spark website
    • The website repo is at: https://svn.apache.org/repos/asf/spark

      Code Block
      languagebash
      $ svn co https://svn.apache.org/repos/asf/spark


    • Copy new documentation to spark/site/docs and update the "latest" link. Make sure that the docs were generated with PRODUCTION=1 tag, if it wasnt already generated with it.

      Code Block
      languagebash
      $ PRODUCTION=1 jekyll build


    • Update the rest of the Spark website. See how previous release are documented on the site.
      • Take a look at the changes to *.md files in this commit (all the html file changes are generated by jekyll).
      • Create release notes 
      • Update documentation page
      • Update downloads page
      • Update the main page with a news item
  • Once everything is working (ec2, website docs, website changes) create an announcement on the website and then send an e-mail to the mailing list
  • Enjoy an adult beverage of your choice, congrats on making a Spark release

...