You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@slider.apache.org by st...@apache.org on 2015/01/27 20:01:27 UTC

svn commit: r1655105 - in /incubator/slider/site/trunk/content/developing: index.md releasing.md releasing_process_v1.md

Author: stevel
Date: Tue Jan 27 19:01:27 2015
New Revision: 1655105

URL: http://svn.apache.org/r1655105
Log:
SLIDER-744 releasing via mvn

Added:
    incubator/slider/site/trunk/content/developing/releasing_process_v1.md
      - copied, changed from r1652190, incubator/slider/site/trunk/content/developing/releasing.md
Modified:
    incubator/slider/site/trunk/content/developing/index.md
    incubator/slider/site/trunk/content/developing/releasing.md

Modified: incubator/slider/site/trunk/content/developing/index.md
URL: http://svn.apache.org/viewvc/incubator/slider/site/trunk/content/developing/index.md?rev=1655105&r1=1655104&r2=1655105&view=diff
==============================================================================
--- incubator/slider/site/trunk/content/developing/index.md (original)
+++ incubator/slider/site/trunk/content/developing/index.md Tue Jan 27 19:01:27 2015
@@ -34,5 +34,10 @@ Slider
 * [Windows Development and Testing](windows.html)
 * [Demo Script](demo.html)
 
+## Historical Documents
+
+These documents are obsolete; they are retained for reference.
+
+* [Releasing Process v1](releasing_process_v1.html)
 
  

Modified: incubator/slider/site/trunk/content/developing/releasing.md
URL: http://svn.apache.org/viewvc/incubator/slider/site/trunk/content/developing/releasing.md?rev=1655105&r1=1655104&r2=1655105&view=diff
==============================================================================
--- incubator/slider/site/trunk/content/developing/releasing.md (original)
+++ incubator/slider/site/trunk/content/developing/releasing.md Tue Jan 27 19:01:27 2015
@@ -21,18 +21,12 @@
 Here is our release process.
 
 
-The process has two phases.
-
-* [Phase I](#phase1): Merge `develop` branch with `master` so that you can release from `master`
-* [Phase II](#phase2): Perform Apache release from `master`
-
-
 ### Tooling
 
 As well as everything needed to build slider, there are some extra requirements
 for releasing:
 
-1. Shell: (Currently: Bash)
+1. Shell: (Currently: Bash; some `fish` examples too)
 1. [git flow](http://danielkummer.github.io/git-flow-cheatsheet/)
 1. OS/X and windows: [Atlassian SourceTree](http://www.sourcetreeapp.com/).
 This can perform the git flow operations, as well as show the state of your
@@ -42,7 +36,7 @@ git graph.
 ### Before you begin
 
 
-*1.* Check out the latest version of the develop branch,
+Check out the latest version of the branch to be released,
 run the tests. This should be done on a checked out
 version of the code that is not the one you are developing on
 (ideally, a clean VM), to ensure that you aren't releasing a slightly
@@ -59,47 +53,90 @@ create HBase and Accumulo clusters in th
 *Make sure that the integration tests are passing (and not being skipped) before
 starting to make a release*
 
-*2.* Check out the latest version of `origin/master`.
-
 *3.* Make sure there are no uncommitted files in your local repo. 
 
 *4.* If you are not building against a stable Hadoop release
 
-  1. Check out the hadoop branch you intend to build and test against —and include in
+  1. Check out the Hadoop branch you intend to build and test against —and include in
      the redistributable artifacts.
   1. Build it via `mvn clean install -DskipTests`
-  1. Note the git revision number of this build -for documentation.
+  1. Note the git revision number of this build —for documentation.
   1. Maybe: tag that revision so you can easily revert to it
 
-##### Profiles
+Unstable Hadoop versions MUST NOT be used for anything declared as a stable
+Slider release.
+
+
+*5.* Check ASF headers dependencies
+
+Ensure the rat check is clean. This rejects files which lack ASF headers
+
+    mvn clean apache-rat:check -Prat
+
+
+### Checking licenses
+
+Maven can check that all dependent artifacts have valid licenses
+
+For pom-only projects (including the root slider project)
+
+    mvn license:aggregate-add-third-party  -Dlicense.useMissingFile
+
+for projects which publish JARs
+
+
+     mvn license:add-third-party -Dlicense.useMissingFile
+
+This generates the metadata for licenses. Dependencies without a license are warned about.
+To fix this, make sure that the (generated or updated) file `src/license/THIRD-PARTY.properties`
+has an entry for every dependency without a license, declaring what their license is.
 
-The slider POMs offer different profiles of hadoop versions to build against. The instructions 
+
+### Signing keys
+
+Verify your PGP key is provided to Apache. 
+
+Apache verifies that distributions are correctly signed.
+Login to [https://id.apache.org](https://id.apache.org) and verify the 
+fingerprint of PGP key used to sign above is provided. (`gpg --fingerprint`)
+Upload your PGP public key only to `/home/$ASF_USER/.pgpkey`
+
+    scp public-key.asc people.apache.org:.pgpkey
+
+##### Note: Profiles
+
+The slider POMs offer different profiles of Hadoop versions to build against. The instructions 
 below do not choose one. If a profile is needed, append it to all the maven commands.
 
-e.g. `mvn clean install -DskipTests -Prelease-2.6`
+e.g. `mvn clean install -Prelease-2.6`
+
+
+##  Prepare
+
+Verify that there's nothing not yet checked in
 
+    git status
 
-## <a name="phase1"></a>Phase - I
+Everything must be checked in at this point.
 
-**Step #0:** Sync up with the ASF repo. You do not want to release the wrong
-code.
+Sync up with the ASF repo. You do not want to release the wrong code.
 
     git checkout develop
     git pull origin
     git push origin
 
+
 **Step #1:** Create a JIRA for the release, estimate 3h
 (so you don't try to skip the tests)
 
     export SLIDER_RELEASE_JIRA=SLIDER-544
 
-**Step #2:** Check everything in. Git flow won't let you progress without this.
 
-**Step #4:** Increment those version numbers using [the maven
+**Step #4:** If they are not what you want, set the version numbers using [the maven
 versions plugin](http://mojo.codehaus.org/versions-maven-plugin/)
 
 
-    export SLIDER_RELEASE=0.60.0-incubating
+    export SLIDER_RELEASE=0.60.0-incubating-SNAPSHOT
 
     mvn versions:set -DnewVersion=$SLIDER_RELEASE
 
@@ -107,15 +144,15 @@ versions plugin](http://mojo.codehaus.or
 **Step #5:** Commit the changed POM files
   
     git status
-    
     git add --all
-    
     git commit -m "$SLIDER_RELEASE_JIRA updating release POMs for $SLIDER_RELEASE"
 
   
-**Step #3:** Create and check out a release branch
+**Step #3:** Create or check out a release branch
 
-    git checkout -b releases/slider-0.60
+    git checkout -b branches/branch-0.6
+    git push origin branches/branch-0.6
+    
 
 
 **Step #6:** Do a final test run to make sure nothing is broken
@@ -126,6 +163,7 @@ In the `slider` directory, run:
 
 (Make sure the build isn't trying to pull down its JARs from the Apache Staging
 repo)
+
 Once everything is built- including `.tar` files, run the tests
 
     mvn test
@@ -140,37 +178,12 @@ It is wise to reset any VMs here, and on
 This stops functional tests failing because the job doesn't get started before
 the tests time out.
 
-As the test run takes 30-60+ minutes, now is a good time to consider
+As the test run takes 60+ minutes, now is a good time to consider
 finalizing the release notes.
 
 
-**Step #7:** Build the release package
-
-Run a clean install, followed by a site build and package goal:
-
-    mvn clean install -DskipTests
-    mvn site:site site:stage package -DskipTests
-
-
-**Step #8:** Validate the tarball
-
-Look in `slider-assembly/target` to find the `.tar.gz` file, and the
-expanded version of it. Inspect that expanded version to make sure that
-everything looks good -and that the versions of all the dependent artifacts
-look good too: there must be no `-SNAPSHOT` dependencies. [Exception, when the release
-is deliberately made against an unreleased version of Hadoop or other dependencies.
-in that situation the unreleased dependency is expected to consist of `-SNAPSHOT`
-artifacts]
-
-tip: the lib dir can be viewed with
 
-    ls -l slider-assembly/target/slider-$SLIDER_RELEASE-all/slider-$SLIDER_RELEASE/lib
-
-**Important** Verify that there is a `slider-agent` `.tar.gz` file. The two-phase
-install/site build gets it in there, but doing a single build doesn't always seem 
-to.
-
-**Step #9:** Build the release notes
+## Build the release notes
 
 Create a a one-line plain text release note for commits and tags
 and a multi-line markdown release note which will be used for artifacts.
@@ -212,21 +225,6 @@ the release number
  you can check this with `git remote -v`
 
 
-**Step #13:** Finish the JIRA
-
-Log the time, close the issue. This should normally be the end of a 
-sprint -so wrap that up too.
-
-**Step #14:** Get back to developing!
-
-Check out the develop branch and purge all release artifacts
-
-    git checkout develop
-    git pull origin
-    mvn clean
-
-*At this point you are ready for Apache release from master.*
-
 
 ## <a name="phase2"></a>Phase - II: publish to the ASF
 
@@ -254,100 +252,255 @@ Ensure you are in the *master* branch an
     git pull origin
     git clean -fxd
 
-**Step 3**
 
-Ensure the rat check is clean.
 
-    mvn clean apache-rat:check -Prat
+## Publish via SVN (?)
 
-**Step 4**
+Publish the release as below:
 
-Tag for the release. Start with RC0 and move to RC1, RC2 if you need to restart the release process for this version.
+    svn co https://dist.apache.org/repos/dist/release/incubator/slider slider
+ 
+    cd slider
+    
+Make sure your PGP keys is in the KEYS file. The instructions to add a key 
+are at the top of the file
+    
+Then...
 
-    git tag -a release-$SLIDER_RELEASE-$RELEASE_RC -m 'Slider $SLIDER_RELEASE-$RELEASE_RC'
-    git push --tags origin
-   
-**Step 5**
+    mkdir $SLIDER_RELEASE $SLIDER_RELEASE/src
+    cd $SLIDER_RELEASE/src
+    scp ~/public_html/$SLIDER_RELEASE-$RELEASE_RC/* .
+    cd ..
+    svn add $SLIDER_RELEASE
+    svn commit -m "SLIDER_RELEASE_JIRA Committing Release $SLIDER_RELEASE"
 
-Create the release source tarball.
+**Step 14**
 
-    mvn clean install -DskipTests -Papache-release -Prat
+Create the release tag:
 
-You should find a `*.tar.gz` at target folder (e.g. `./target/apache-slider-$SLIDER_RELEASE-source-release.tar.gz` and `.zip`)
-Rename it with *incubator* in the name.
+    On branch master
+    git tag -a $SLIDER_RELEASE -m 'Slider $SLIDER_RELEASE'
+    git push --tags origin
 
-    cd target
-    
-    rm rat.txt
-    rm .plxarc
-    rm -rf archive-tmp
-    rm -rf maven-shared-archive-resources
-    
+**Step 15**
 
+Update the Slider website as needed. Most of the documents would have been updated by now to reflect the released version. *The remaining changes should really be modifying the references to the latest release to the new version.*
 
-**Step 6**
-<!-- this is now automated
+The download details for the latest release needs to be updated after mirrors are updated in **Step 12**. 
 
-Sign the tarball
+Verify the download links at [Slider Page](http://slider.incubator.apache.org).
 
-    export ASF_USER=stevel
-    
-    gpg2  --armor  --default-key $ASF_USER@apache.org -v --output apache-slider-$SLIDER_RELEASE-source-release.tar.gz.asc --detach-sig apache-slider-$SLIDER_RELEASE-source-release.tar.gz
-    gpg2  --armor  --default-key $ASF_USER@apache.org -v  --output apache-slider-$SLIDER_RELEASE-source-release.zip.asc --detach-sig apache-slider-$SLIDER_RELEASE-source-release.zip
--->
 
-**Step 7**
 
-Generate MD5 checksums. *md5sum* and *sha1sum* or *gpg* are all capable of creating checksum files.
+# Automated releases via maven
+ 
+The Slider project uses Maven to automatically publish all the slider artifacts —source and binary— to the ASF repositories
+
+Core sequence
+1. Dry Run
+1. Deploy to staging
 
-Either
 
-    openssl md5 apache-slider-$SLIDER_RELEASE-source-release.tar.gz > apache-slider-$SLIDER_RELEASE-source-release.tar.gz.md5
-    openssl sha1 apache-slider-$SLIDER_RELEASE-source-release.tar.gz > apache-slider-$SLIDER_RELEASE-source-release.tar.gz.sha
-    openssl md5 apache-slider-$SLIDER_RELEASE-source-release.zip > apache-slider-$SLIDER_RELEASE-source-release.zip.md5
-    openssl sha1 apache-slider-$SLIDER_RELEASE-source-release.zip > apache-slider-$SLIDER_RELEASE-source-release.zip.sha
  
-or
+* [ASF release guidelines](http://www.apache.org/dev/release.html)
+* [Maven release plugin](http://maven.apache.org/maven-release/maven-release-plugin/index.html)
+* [ASF guide to publishing maven artifacts](http://www.apache.org/dev/publishing-maven-artifacts.html)
+* [Publishing Maven Artifacts](http://www.apache.org/dev/publishing-maven-artifacts.html)
+* [https://wiki.apache.org/commons/UsingNexus](https://wiki.apache.org/commons/UsingNexus)
+* [Apache Parent Pom](http://repo.maven.apache.org/maven2/org/apache/apache/10/apache-10.pom) for a template POM containing the release plugins. This is not used in the slider release —it was used as a source of some of the actions; the remainder being from the hadoop project.
+
+
+## Preparation
+
+### Maven Publishing settings
  
-     md5sum apache-slider-$SLIDER_RELEASE-source-release.tar.gz > apache-slider-$SLIDER_RELEASE-source-release.tar.gz.md5
-     sha1sum apache-slider-$SLIDER_RELEASE-source-release.tar.gz > apache-slider-$SLIDER_RELEASE-source-release.tar.gz.sha
-     sha1sum apache-slider-$SLIDER_RELEASE-source-release.zip > apache-slider-$SLIDER_RELEASE-source-release.zip.sha
-     md5sum apache-slider-$SLIDER_RELEASE-source-release.zip > apache-slider-$SLIDER_RELEASE-source-release.zip.md5
+
+
+You need to provide credentials to the ASF maven repos for publishing/releasing
+artifacts, using your ASF username and password.
+
+The ASF docs say use the maven encryption feature. 
+Our policy is: encrypt your HDD in its entirety —you should be doing that
+anyway.
+
+In `~/.m2/settings.xml`:
+
+    <servers>
+      <!-- To publish a snapshot-->
+      <server>
+        <id>apache.snapshots.https</id>
+        <username></username>
+        <password></password>
+      </server>
+      <!-- To stage a release -->
+      <server>
+        <id>apache.staging.https</id>
+        <username></username>
+        <password></password>
+      </server>
+      <!-- To finalise the release-->
+      <server>
+        <id>apache.releases.https</id>
+        <username></username>
+        <password></password>
+      </server>
+    </servers>
+
+
+
+
+### Environment variable setup
+
+It's handy to set up an environment with the arguments needed for releases.
+
+    export RELARGS="-DskipTests -DskipITs -Papache-release"
+    echo $RELARGS
+
+
   
- 
-**Step 8**
+### Choose your versions
+
+Choose the version numbers for the release and for afterwards.
+
+    0.61.0-incubating
+    0.62.0-incubating-SNAPSHOT
+
+
+## Git preparation
 
-Upload the artifacts to your apache home:
+The maven automated release adds its own git tags and pushes things up to a branch. All work must be done on a branch created for the release process, so as to not interfere with the rest of the development. You are likely to end up rolling back the branch, force-pushing changes &c, so cannot actively share the branch with anyone.
 
-The artifacts then need to be copied over to `~/public_html/slider-release-$SLIDER_RELEASE-rcX`
+### Clone the repo.
+
+Don't release from your development dir; do it somewhere clean. Why so? Easier to clean up and guaranteed isolation.
+
+In a directory of your choice
+
+    git clone https://git-wip-us.apache.org/repos/asf/incubator-slider.git slider-$SLIDER_RELEASE
+    cd slider-$SLIDER_RELEASE
   
-    cd ..
+### Check out the branch you plan to release on; tag it
+
+    cd incubator-slider
+    git checkout -t origin/branches/branch-0.6
 
-    mv target slider-release-$SLIDER_RELEASE-$RELEASE_RC
+In the new clone, tag the head of the branch you plan to to work from. You don't need to push the tag to the repo.
+
+    git tag -a tag_2015-01-27-prerelease-0.61.0 -m "prior to maven release process"
     
-    scp -r slider-release-$SLIDER_RELEASE-$RELEASE_RC $ASF_USER@people.apache.org:public_html/slider/
+  
 
-(if you don't get the authentication for the copy, go to https://id.apache.org/ and add your ssh keys to your profile)
+## Test Deploy a snapshot
 
-The entire directory should now be uploaded, check it:
+This pushes up a `-SNAPSHOT` version to the ASF snapshot repo. It doesn't change the POMs; it does verify that you have the basic upload settings, signing keys etc.
 
-    echo http://people.apache.org/~$ASF_USER/slider/slider-release-$SLIDER_RELEASE-$RELEASE_RC
+    mvn clean deploy $RELARGS -Darguments="$RELARGS"
     
- on OS/X, you can have it opened in your chosen browser
+Assuming that all the test and integration tests have already been successful on normal workspace, you can skip the tests
+  
+
+After the upload has completed, the complete archives will be in the version-specific subdirectory of
+
+https://repository.apache.org/content/repositories/snapshots/org/apache/slider/slider-assembly/
+
+
+download the uploaded `.tar.gz`, expand it and verify that it is complete. That includes
+
+1. Verify that the file `slider-agent.tar.gz` exists.
+1. Execute `bin/slider --version`
+1. Assuming you have an existing installation for testing, set `SLIDER_CONF_DIR` to the configuration directory, then
+`slider start <INSTANCE>` to start the relevant cluster instance. 
+  
     
-    open http://people.apache.org/~$ASF_USER/slider/slider-release-$SLIDER_RELEASE-$RELEASE_RC
+## Perform a dry run of the release
+
+Perform a dry run. This will commit changes to your local branch.
+
+    mvn release:prepare -DdryRun=true -DautoVersionSubmodules=true -Darguments="$RELARGS"
+
+
+1. This prompts for some version numbers: go with them unless you have specific choices of
+versions.
+1. Look at the output to verify the versions are what you want.
+1. Roll back to the commit tagged earlier
+
+
+## Perform the Maven release
+
+    mvn release:clean
+    mvn release:prepare -DautoVersionSubmodules=true -Darguments="$RELARGS" -Dresume=false 
+    mvn release:perform -Darguments="$RELARGS" 
+
+1. the `release:prepare` command will trigger the local commit of changes to POMs, tagging this and pushing up the branch.
+2. only skip those test runs if you have been running the tests in advance.
+3. the funtests work by explicitly invoking `bin\slider` in the expanded tar directory under
+`../slider-assembly/target` —that is, it doesn't download and test any `.tar.gz` artifacts uploaded during
+the staging process.
+
+
+You may be asked for your ASF git password repeatedly.
+Consult [StackOverflow](http://stackoverflow.com/questions/5343068/is-there-a-way-to-skip-password-typing-when-using-https-github)
+
+*rolling back*
+After this phase (or when you cancel it), you'll need to roll back git, force push the change to origin, and delete any newly created `slider-XY` tag locally *and* remotely.
+
+    mvn release:rollback
+    mvn clean
+
+If you are in a specific release-only directory (as per the instructions):
+
+    git clean -d -f -x
+  
+
+### Tip: branching instead of preparing
+
+The `mvn release:branch` goal can be used instead of `mvn release:prepare`, which creates a branch explicitly for the release. We haven't used this yet.
+
+
+### Tip: reverting changes
 
-**Step 9**
+Try
+
+    mvn release:rollback
+
+It *may* work. Also
+
+1. roll back the git branch to where it was before the release actions started
+changing things.
+1. Force push the rolled back branch back to the git repo.
 
-(omitted)
 
-**Step 10**
+
+
+### Tip: Validating the artifacts
+
+There's a small projects [slider-dependency-check](https://github.com/steveloughran/slider-dependency-check) which verifies that slider artifacts can be downloaded from the public or staging repositories. Clone this project and read its instructions to verify that everything went up to the staging repo.
+
+
+
+## Close the release in Nexus
+
+1. log in to [https://repository.apache.org/index.html](https://repository.apache.org/index.html)
+with your ASF username & LDAP password
+1. go to [Staging Repositories](https://repository.apache.org/index.html#stagingRepositories)
+1. find the latest slider repository in the list
+1. select it; 
+1. Browse the content, verify the version number is what you want.
+1. hit the "close" button. This will fail if it doesn't meet the ASF criteria
+1. Wait for the close process to complete.
+1. Get the URL of the closed staging repository. This is needed for the next step —the votes.
+
+
+
+## Get the Votes In
+
+### Call for a slider vote
 
 Call for a release VOTE to the dev mailing list (`dev@slider.incubator.apache.org`).
 
 To build the URLs, echo them then verify in your browser that they are present
 
-    echo  [VOTE] Apache Slider Incubating Release $SLIDER_RELEASE $RELEASE_RC
+    echo  [VOTE] Apache Slider Incubating Release $SLIDER_RELEASE 
     
     echo "This is a call for a vote on Apache Slider $SLIDER_RELEASE release"
 
@@ -369,19 +522,26 @@ Hello folks,
 This is a call for a vote on Apache Slider $SLIDER_RELEASE release. 
 Thanks to everyone who have contributed to this release.
 
-Git source tag:
-https://git-wip-us.apache.org/repos/asf?p=incubator-slider.git;a=shortlog;h=refs/tags/release-$SLIDER_RELEASE-$RELEASE_RC
+Git source checksum d3fd75007a209cf6439dde99c35a46a2632ca79d
+
+tag:
+https://git-wip-us.apache.org/repos/asf?p=incubator-slider.git;a=tag;h=refs/tags/slider-0.61.0
 
 Staging site:
-http://people.apache.org/~$ASF_USER/slider-release-$SLIDER_RELEASE-$RELEASE_RC"
 
-PGP release keys (signed using $ASF_USER)
-http://pgp.mit.edu:11371/pks/lookup?op=vindex&search=$ASF_USER@apache.org
+https://repository.apache.org/content/repositories/orgapacheslider-1002/org/apache/slider/
+
+The single archive is in 
+
+https://repository.apache.org/content/repositories/orgapacheslider-1002/org/apache/slider/slider-assembly/0.61.0/
+
+PGP release keys (signed as stevel)
+http://pgp.mit.edu:11371/pks/lookup?op=vindex&search=$stevel@apache.org
 
 The issues fixed in this release are listed at at:
-https://issues.apache.org/jira/browse/SLIDER/fixforversion/<FIX VERSION OF THIS RELEASE>
+https://issues.apache.org/jira/browse/SLIDER/fixforversion/12329034
 
-Note that this is a source only release and we are voting on the source.
+This is a source+binary release.
 
 Build instructions at: http://slider.incubator.apache.org/developing/building.html 
 
@@ -395,7 +555,7 @@ Vote will be open for 72 hours
 
 * CHECK ALL THE URLS FIRST *
 
-**Step 11**
+### Call for an incubator vote
 
 If the VOTE passes, call for VOTE from IPMC. Include the VOTE and RESULT thread from the dev alias.
 If that VOTE passes with the IPMC send a RESULT mail.
@@ -415,53 +575,10 @@ Sample:
     List all non-IPMC votes.
 
 
-**Step 12**
-
-Verify your PGP key is provided to Apache. 
-
-Apache verifies that distributions are correctly signed.
-Login to [https://id.apache.org](https://id.apache.org) and verify the fingerprint of PGP key used to sign above is provided. (`gpg --fingerprint`)
-Upload your PGP public key only to `/home/$ASF_USER/.pgpkey`
-
-    scp public-key.asc people.apache.org:.pgpkey
-
-**Step 13**
-
-Publish the release as below:
-
-    svn co https://dist.apache.org/repos/dist/release/incubator/slider slider
- 
-    cd slider
-    
-Make sure your PGP keys is in the KEYS file. The instructions to add a key 
-are at the top of the file
-    
-Then...
-
-    mkdir $SLIDER_RELEASE $SLIDER_RELEASE/src
-    cd $SLIDER_RELEASE/src
-    scp ~/public_html/$SLIDER_RELEASE-$RELEASE_RC/* .
-    cd ..
-    svn add $SLIDER_RELEASE
-    svn commit -m "SLIDER_RELEASE_JIRA Committing Release $SLIDER_RELEASE"
-
-**Step 14**
-
-Create the release tag:
-
-    On branch master
-    git tag -a $SLIDER_RELEASE -m 'Slider $SLIDER_RELEASE'
-    git push --tags origin
-
-**Step 15**
-
-Update the Slider website as needed. Most of the documents would have been updated by now to reflect the released version. *The remaining changes should really be modifying the references to the latest release to the new version.*
+## Publishing the release
 
-The download details for the latest release needs to be updated after mirrors are updated in **Step 12**. 
-
-Verify the download links at [Slider Page](http://slider.incubator.apache.org).
 
-**Step 16**
+## Announcing
 
 Send an announcement:
 
@@ -488,7 +605,15 @@ Sample:
     Regards,
     The Slider Team
 
-**Step 17**
+
+## Finish the JIRA
+
+Log the time, close the issue. This should normally be the end of a 
+sprint —so wrap that up too.
+
+
+
+## Updating  JIRA Releases
    
 Tell JIRA there's a new release. You must be registered as an admin for the
 Slider project on JIRA.
@@ -498,140 +623,13 @@ Go to the [Slider Versions page](https:/
 Release the version you've done, carrying forward issues that haven't been done
 yet.
 
+## Get back to developing!
 
-## Hotfixing a release
-
-If you need to change a release —such as to issue a new RC, you must
-create a hotfix release which updates the `master/` and `develop/` branches.
-you can then create a new release off the last commit off the hotfix branch
-(the one which is then merged into both branches).
-
-1. Create a JIRA for the hotfix, estimate as much time as the main release
-and any time needed to actually fix the code.
-
-1. set the release env var to it.
-
-        export SLIDER_RELEASE_JIRA=SLIDER-349
-      
-1. Create the hotfix branch with the JIRA version
-1. Fix things.
-1. Rerun all the tests.
-1. Check in the fixes
-1. Note the commit number of the final commit
-1. With git flow, finish the hotfix
-1. start a git flow release using the specific commit of the hotfix branch,
-rather than `HEAD` of the `develop` branch.
-1. Note the current version of the develop artifacts; set `$SLIDER_DEV` to it.
-The POMs will be returned to this after the release process.
-1. Create a new release version (e.g. slider-0.50.2). This can before that
-of the current develop branch:
-
-        export SLIDER_RELEASE=0.50.2-incubating
-    
-1. Repeat the release process from step 4 to step 10.
-
-When you get to the end of release phase, the end of release process will fail
-due to conflict between POM versions. 
-
-1. Resolve the conflict by accepting the new updates: the maven version will
-be set to the `$SLIDER_RELEASE` value, even though it is now older than
-the actual development version.
-
-1. verify that `$SLIDER_DEV` is set to the version you want to return the
-`develop/` branch to:
-
-        echo $SLIDER_DEV
-
-1. reset the versions
-
-        mvn versions:set -DnewVersion=$SLIDER_DEV
-        git commit -a -m "$SLIDER_RELEASE_JIRA reverting development POMs to $SLIDER_DEV"
-
+Check out the develop branch and purge all release artifacts
 
- 1. Continue the release process from step 12.
- 
-## Publishing artifacts
- 
- Once the vote has (successfully) completed on both slider-dev and incubator-general, the artifacts may be published in two ways
- 
-1. tarballs for download via the apache distribution system
-1. JAR files for download via the maven repository
- 
-### Publishing files for apache release
- 
-See the [ASF release guidelines](http://www.apache.org/dev/release.html)
- 
-# Work-in-Progress Automated releases via maven
- 
-* See [ASF guide to publishing maven artifacts](http://www.apache.org/dev/publishing-maven-artifacts.html)
-* See [Apache Parent Pom](http://repo.maven.apache.org/maven2/org/apache/apache/10/apache-10.pom) for a template POM containing the release plugins. This is not used in the slider release
-—it was used as a source of some of the actions; the remainder being from the hadoop project.
+    git checkout develop
+    git pull origin
+    mvn clean
 
 
- Build the artifacts off the SVN commit used for the release.
  
-     mvn clean install -Papache-release
-     
-#### Important: App package versions
-
-The (slider 0.60) app package versions mean the artifacts are not suitable for uploading; they generate files such as `slider-storm-app-package-${pkg.version}.pom` which don't contain a valid version number.
-
-We have fixed this this from Slider 0.61/0.70 by moving the app packages out of the slider project itself, so drive them off other version information.
-
-
-## Dry run of release
-
-    mvn release:prepare -DdryRun=true -DautoVersionSubmodules=true -Darguments="-DskipTests -DskipITs"
-
-## Deploy
-
-    mvn deploy -DskipTests -Papache-release 
-
-## uploading for a vote
-
-    mvn release:clean
-    mvn release:prepare -DautoVersionSubmodules=true -Darguments="-DskipTests -DskipITs" -Dresume=false
-    mvn release:perform 
-
-You may be asked for your ASF git password repeatedly.
-Consult [StackOverflow](http://stackoverflow.com/questions/5343068/is-there-a-way-to-skip-password-typing-when-using-https-github).
-
-### Closing the release
-    
-log in to [https://repository.apache.org/index.html](https://repository.apache.org/index.html)
-with your ASF username & LDAP password
-
-### reverting
-
-Try
-    mvn release:rollback
-
-It *may* work. Also
-1. roll back the git branch to where it was before the release actions started
-changing things.
-1. Force push the rolled back branch back to the git repo.
-
-# Notes on a changed process
-
-This is some working notes on the 0.61 release
-
-* see: [Publishing Maven Artifacts](http://www.apache.org/dev/publishing-maven-artifacts.html)
-* see: [https://wiki.apache.org/commons/UsingNexus](https://wiki.apache.org/commons/UsingNexus)
-
-Key: the mvn release package is what should be doing the automation
-
-
-you can log in to nexus at 
-
-https://repository.apache.org/service/local/staging/deploy/maven2/org/apache/slider
-
-using your ASF username and LDAP passwd
-
-proposed
-
-1. mvn deploy of the snapshot
-1. publish the src
-1. vote on it
-1. if people are happy issue a release with the same files, rebadged
-
-    
\ No newline at end of file

Copied: incubator/slider/site/trunk/content/developing/releasing_process_v1.md (from r1652190, incubator/slider/site/trunk/content/developing/releasing.md)
URL: http://svn.apache.org/viewvc/incubator/slider/site/trunk/content/developing/releasing_process_v1.md?p2=incubator/slider/site/trunk/content/developing/releasing_process_v1.md&p1=incubator/slider/site/trunk/content/developing/releasing.md&r1=1652190&r2=1655105&rev=1655105&view=diff
==============================================================================
--- incubator/slider/site/trunk/content/developing/releasing.md (original)
+++ incubator/slider/site/trunk/content/developing/releasing_process_v1.md Tue Jan 27 19:01:27 2015
@@ -16,9 +16,15 @@
 -->
 
 
-# Apache Slider Release Process
+# Apache Slider Release Process v1
+
+This was release process for Slider versions up to and including Slider 0.60,
+which was released in November 2014.
+
+The process was superceded in January 2015 —later releases follow the process
+described in [Releasing](releasing.html).
+
 
-Here is our release process.
 
 
 The process has two phases.
@@ -166,7 +172,7 @@ tip: the lib dir can be viewed with
 
     ls -l slider-assembly/target/slider-$SLIDER_RELEASE-all/slider-$SLIDER_RELEASE/lib
 
-**Important** Verify that there is a `slider-agent` `.tar.gz` file. The two-phase
+**Important** Verify that there is a `slider-agent.tar.gz` file. The two-phase
 install/site build gets it in there, but doing a single build doesn't always seem 
 to.
 
@@ -286,7 +292,7 @@ Rename it with *incubator* in the name.
 
 
 **Step 6**
-<!-- this is now automated
+This is now automated: skip
 
 Sign the tarball
 
@@ -294,7 +300,7 @@ Sign the tarball
     
     gpg2  --armor  --default-key $ASF_USER@apache.org -v --output apache-slider-$SLIDER_RELEASE-source-release.tar.gz.asc --detach-sig apache-slider-$SLIDER_RELEASE-source-release.tar.gz
     gpg2  --armor  --default-key $ASF_USER@apache.org -v  --output apache-slider-$SLIDER_RELEASE-source-release.zip.asc --detach-sig apache-slider-$SLIDER_RELEASE-source-release.zip
--->
+
 
 **Step 7**
 
@@ -511,7 +517,7 @@ and any time needed to actually fix the
 
 1. set the release env var to it.
 
-        export SLIDER_RELEASE_JIRA=SLIDER-349
+      export SLIDER_RELEASE_JIRA=SLIDER-349
       
 1. Create the hotfix branch with the JIRA version
 1. Fix things.
@@ -527,7 +533,7 @@ The POMs will be returned to this after
 of the current develop branch:
 
         export SLIDER_RELEASE=0.50.2-incubating
-    
+
 1. Repeat the release process from step 4 to step 10.
 
 When you get to the end of release phase, the end of release process will fail
@@ -560,78 +566,3 @@ the actual development version.
 ### Publishing files for apache release
  
 See the [ASF release guidelines](http://www.apache.org/dev/release.html)
- 
-# Work-in-Progress Automated releases via maven
- 
-* See [ASF guide to publishing maven artifacts](http://www.apache.org/dev/publishing-maven-artifacts.html)
-* See [Apache Parent Pom](http://repo.maven.apache.org/maven2/org/apache/apache/10/apache-10.pom) for a template POM containing the release plugins. This is not used in the slider release
-—it was used as a source of some of the actions; the remainder being from the hadoop project.
-
-
- Build the artifacts off the SVN commit used for the release.
- 
-     mvn clean install -Papache-release
-     
-#### Important: App package versions
-
-The (slider 0.60) app package versions mean the artifacts are not suitable for uploading; they generate files such as `slider-storm-app-package-${pkg.version}.pom` which don't contain a valid version number.
-
-We have fixed this this from Slider 0.61/0.70 by moving the app packages out of the slider project itself, so drive them off other version information.
-
-
-## Dry run of release
-
-    mvn release:prepare -DdryRun=true -DautoVersionSubmodules=true -Darguments="-DskipTests -DskipITs"
-
-## Deploy
-
-    mvn deploy -DskipTests -Papache-release 
-
-## uploading for a vote
-
-    mvn release:clean
-    mvn release:prepare -DautoVersionSubmodules=true -Darguments="-DskipTests -DskipITs" -Dresume=false
-    mvn release:perform 
-
-You may be asked for your ASF git password repeatedly.
-Consult [StackOverflow](http://stackoverflow.com/questions/5343068/is-there-a-way-to-skip-password-typing-when-using-https-github).
-
-### Closing the release
-    
-log in to [https://repository.apache.org/index.html](https://repository.apache.org/index.html)
-with your ASF username & LDAP password
-
-### reverting
-
-Try
-    mvn release:rollback
-
-It *may* work. Also
-1. roll back the git branch to where it was before the release actions started
-changing things.
-1. Force push the rolled back branch back to the git repo.
-
-# Notes on a changed process
-
-This is some working notes on the 0.61 release
-
-* see: [Publishing Maven Artifacts](http://www.apache.org/dev/publishing-maven-artifacts.html)
-* see: [https://wiki.apache.org/commons/UsingNexus](https://wiki.apache.org/commons/UsingNexus)
-
-Key: the mvn release package is what should be doing the automation
-
-
-you can log in to nexus at 
-
-https://repository.apache.org/service/local/staging/deploy/maven2/org/apache/slider
-
-using your ASF username and LDAP passwd
-
-proposed
-
-1. mvn deploy of the snapshot
-1. publish the src
-1. vote on it
-1. if people are happy issue a release with the same files, rebadged
-
-    
\ No newline at end of file