THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
- Make a code signing key if you don't have one yet
- Publish your key if you haven't done so yet
- If you haven't done so yet, add yourself to the Apache Web-of-Trust by meeting face-to-face with a person so they can sign your key
- Publich your new signed key
- If you haven't done so before, add your key to the KEYS file in the release staging area and the release distribution area
- The staging area is https://dist.apache.org/repos/dist/dev/incubator/impala/. Once graduated, it will presumably be https://dist.apache.org/repos/dist/dev/impala/
- The release area is https://dist.apache.org/repos/dist/release/incubator/impala/, and will presumably be https://dist.apache.org/repos/dist/release/impala/ after graduation.
- Pick a commit you want to release from and test it.
- Propose a release on the dev@ list. It should start with the string "\[DISCUSS]". Propose a
- Make a new branch off of your commit called "branch-x.y.z", where x.y.z is the version you want to release
- In this branch (but not in master) update the version number to x.y.z
- Continue testing it. If you find bugs, file them. When they are fixed, cherry-pick the fixes from master to your branch that you want to include in the release:
Code Block language bash git fetch apache # to make sure you have the latest master git log apache/master # to find the commits you want to cherry-pick git checkout apache/branch-x.y.z git checkout -b x.y.z-patch-foo git cherry-pick b4d1a3... # or whatever git hashes # then resolve conflicts, if there are any # cherry-pick some more commits: git cherry-pick .... git cherry-pick ..... git push apache HEAD:branch-x.y.z
- At that time, tag the tree at the release candidate
- Make a tarball and add it to dev/ with SVN. Also add your signature, as well as md5 and sha1 checksums.
- Make the tarball using git archive. Name it apache-impala-incubating-x.y.z.tar.gz, or apache-impala-x.y.z.tar.gz if Impala has graduated from the incubator.
- The directory layout is x.y.z/RCw, where w is the release candidate number - RC1 is the first candidate, RC2 the second, and so on.
- While incubating, the location is https://dist.apache.org/repos/dist/dev/incubator/impala/. Once graduated, it will presumably be https://dist.apache.org/repos/dist/dev/impala/
- Get informal feedback on your release candidate from the dev@ list.
- If you need to make changes, you can cherry-pick commits from master.
- If you have made changes, upload new release candidates - don't overwrite old ones.
- Take a vote on dev@. Your vote email should:
- Have a subject that starts with "\[VOTE]"
- Explain what the vote is about
- Explain how to find the artifacts for testing, and what each type of vote means
- Explain the conditions for the vote passing, including how long the vote will remain open for.
- Include a link to this wiki page so voters can read the instructions in it on how to test, verify, and vote.
- Be consistent with the Impala bylaws. For instance, at the moment I am writing this wiki page, votes stay open for 72 hours.
- If the vote passes, and Impala has yet to graduate, take a vote in the incubator PMC, following current incubator policy.
- Publish the release.
- Send a patch review to the master branch to update its version number to "p.q.r-snapshot" (where p.q.r is greater than x.y.z)
...