AW: ant-ivy git commit: initial WIP version of release instructions to follow for releasing Ivy

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

AW: ant-ivy git commit: initial WIP version of release instructions to follow for releasing Ivy

Jan Matèrne (jhm)
Have you seen doc/dev/makerelease.html ?
But updating (and maybe automating) is a good idea. ;)

Jan

> -----Ursprüngliche Nachricht-----
> Von: [hidden email] [mailto:[hidden email]]
> Gesendet: Dienstag, 27. Februar 2018 13:59
> An: [hidden email]
> Betreff: ant-ivy git commit: initial WIP version of release
> instructions to follow for releasing Ivy
>
> Repository: ant-ivy
> Updated Branches:
>   refs/heads/master 86eacb6b5 -> 1a19f2f83
>
>
> initial WIP version of release instructions to follow for releasing Ivy
>
>
> Project: http://git-wip-us.apache.org/repos/asf/ant-ivy/repo
> Commit: http://git-wip-us.apache.org/repos/asf/ant-ivy/commit/1a19f2f8
> Tree: http://git-wip-us.apache.org/repos/asf/ant-ivy/tree/1a19f2f8
> Diff: http://git-wip-us.apache.org/repos/asf/ant-ivy/diff/1a19f2f8
>
> Branch: refs/heads/master
> Commit: 1a19f2f836cd33a25d458ed8ba9bbb3c7ce4ff96
> Parents: 86eacb6
> Author: Jaikiran Pai <[hidden email]>
> Authored: Tue Feb 27 18:28:16 2018 +0530
> Committer: Jaikiran Pai <[hidden email]>
> Committed: Tue Feb 27 18:28:16 2018 +0530
>
> ----------------------------------------------------------------------
>  release-instructions.adoc | 186
> +++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 186 insertions(+)
> ----------------------------------------------------------------------
>
>
> http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/1a19f2f8/release-
> instructions.adoc
> ----------------------------------------------------------------------
> diff --git a/release-instructions.adoc b/release-instructions.adoc new
> file mode 100644 index 0000000..ba8bd5d
> --- /dev/null
> +++ b/release-instructions.adoc
> @@ -0,0 +1,186 @@
> += Instructions for releasing Apache Ivy
> +
> +
> +NOTE: This document is adapted from the Ant release process.
> +
> +== Propose a release plan
> +
> +This should set out the timetable for the release under ideal
> circumstances. In reality, you send a note to the list that you intend
> to cut the release and wait for a few days whether anybody objects.
> +
> +We don't create extra branches for release and the release will be
> done from the `master` branch.
> +
> +This document assumes you are familiar with `git` http://git-
> scm.com/book/en/v2/ may be a good guide if you are not.
> +
> +== Checkout the repo
> +
> +We don't want tags for failed votes to end up on out branches so the
> release is first created from a detached head.
> +
> +Checkout the `HEAD` of the `master` branch as a detached head:
> +
> +[source]
> +----
> +    git checkout master^0
> +
> +----
> +
> +Make sure that your directory tree is clean by running `git status`.
> +
> +== Update the version number
> +
> +The `version.properties` contains the version number of the Ivy
> project being released. Update the following properties to the right
> values (which is decided based on what version number and qualifier you
> want to associate with the release):
> +
> +[source]
> +----
> +target.ivy.version=2.5.0
> +# Following OSGi spec: have to be 3 numbers separated by dots
> +target.ivy.bundle.version=2.5.0 # in case we want to add a qualifier
> +such as alpha, beta, etc...
> +# if non empty, add a '_' at the end of the qualifier, so the version
> +would look like 1.2.3.alpha_200901011200
> +target.ivy.bundle.version.qualifier=alpha_
> +----
> +
> +== Trigger the release build
> +
> +Trigger the release by running the `build-release.xml`'s `release`
> target. This compiles the project, runs the tests, generates the
> documentation and tutorials and finally creates the distribution
> artifacts.
> +
> +[source]
> +----
> +    ant -f build-release.xml release
> +
> +----
> +
> +Upon successful completion, the distribution artifacts will be
> generated in the `build/distrib` directory of the checked out project,
> locally.
> +
> +== Sign the distribution artifacts
> +
> +TODO: This section needs more details about setting up KEYS and making
> +them available to the public (similar to the Ant project's KEYS file
> in
> +the repo)
> +
> +The `build-release.xml` has a `sign` target which can be used to sign
> the generated distribution artifacts. Run the following command to sign
> these artifacts:
> +
> +[source]
> +----
> +    ant -f build-release.xml sign
> +----
> +
> +== Commit the changes and create a RC tag for the release
> +
> +At this point the distribution artifacts have been generated and have
> been successfully signed too. We can now commit the changes (which most
> likely will just be the version file changes) and create a RC tag for
> the release.
> +
> +If we are releasing `2.5.0` and if this is the first RC for it, then
> we create a `2.5.0-RC1` tag for it.
> +
> +Be sure to replace the version number appropriately in the following
> command:
> +
> +[source]
> +----
> +    git tag -m "Release <version>" <version>
> +----
> +
> +The commit and the tag can now be pushed to the asf hosted repo:
> +
> +[source]
> +----
> +    git push --tags <remote-repo> master
> +----
> +
> +== Upload the distribution artifacts
> +
> +TODO: This needs more details and some verification that it's a
> similar process as that we do in Ant release. The process might involve
> the following:
> +
> +=== Upload to https://dist.apache.org/repos/dist/dev/ant/ivy/
> +
> +- Create a SVN sandbox on your computer with
> https://dist.apache.org/repos/dist/dev/ant/ivy/ in it.
> +
> +- Copy the distribution folder to the location of the sandbox.
> +
> +- `svn add` the files and `commit` into
> +https://dist.apache.org/repos/dist/dev/ant/ivy/
> +
> +=== Upload the Maven artifacts
> +TODO: This section needs work
> +
> +== Initiate a vote
> +
> +Once the above steps are done, initiate a vote by sending a email on
> dev@ant.
> +
> +The email will typically mention :
> +
> +- the git tag for the release including commit hash,
> +
> +- the location of the tarballs, including revision number in
> +dist.apache.org repository
> +
> +- the URL for the maven artifacts
> +
> +- TODO: link to documentation? (where do we upload it?)
> +
> +The vote will only pass if at least three PMC members have voted +1
> and more +1s than -1s have been cast.  The vote will run for 3 days.
> +
> +If the vote fails, address the problems and recreate the next RC build
> +(by redoing the release process)
> +
> +== Promote the RC to Final
> +
> +=== Create the tag in the repo
> +Once the vote has passed, tag the last RC created with the final tag
> +
> +[source]
> +----
> +    git checkout <the-rc-tag-that-passed-the-vote>
> +    git tag -m "Tagging release <verion> of Ivy" <version>
> +    git push --tags <remote-repo> master
> +----
> +
> +=== Promote the distribution artifacts to
> +https://dist.apache.org/repos/dist/release/ant/ivy/
> +
> +The distrib artifacts should be published the apache dist. It is
> managed via `svnpubsub` so the release should be committed to the
> subversion repository at
> https://dist.apache.org/repos/dist/release/ant/ivy/.
> +
> +TODO: This needs more details on what needs to be done
> +
> +== Release the project in the Ivy's JIRA
> +
> +Mark the newly released version as "released" in the JIRA and create a
> newer version for tracking upcoming tasks.
> +
> +== Update the version in the repo to next release
> +
> +Checkout the master branch and update the `version.properties` to use
> newer version number for a subsequent release. Commit the changes and
> push to master branch.
> +
> +[source]
> +----
> +    git checkout master
> +    ... edit the version.properties to use newer version
> +    git commit -m "next dev version" ./version.properties
> +    git push <remote-repo> master
> +----
> +
> +== Wait for mirrors to catch up
> +
> +Now that distribution artifacts have been uploaded, wait a few hours
> for the mirrors to catch up.
> +
> +== Update the Ivy site https://ant.apache.org/ivy/
> +
> +The website is managed here:
> +https://svn.apache.org/repos/asf/ant/site/ivy/
> +
> +TODO: This needs more details/verification
> +
> +Copy the manual of the release into the production folder - since the
> site still uses svn and Ivy proper uses git there currently is no way
> to use the scm for this.
> +
> +Regenerate the site
> +
> +== Announce the release
> +
> +At this point in time, the release is done and announcements are made.
> PGP-sign your announcement posts.
> +
> +Apache mailing lists that should get the announcements:
> +
> +    [hidden email], [hidden email] and ivy-
> [hidden email].
> +
> +== Get some fresh air!
> +
> +You can now reacquaint yourself with your family and friends ;)
> +
> +== Remove the older releases
> +
> +TODO: This needs details
> +
> +
> +
> +
> +
> +



---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: ant-ivy git commit: initial WIP version of release instructions to follow for releasing Ivy

Jaikiran Pai
No I hadn’t :) Will check it out tonight.

-Jaikiran

On Tuesday, February 27, 2018, Jan Matèrne (jhm) <[hidden email]> wrote:

> Have you seen doc/dev/makerelease.html ?
> But updating (and maybe automating) is a good idea. ;)
>
> Jan
>
> > -----Ursprüngliche Nachricht-----
> > Von: [hidden email] [mailto:[hidden email]]
> > Gesendet: Dienstag, 27. Februar 2018 13:59
> > An: [hidden email]
> > Betreff: ant-ivy git commit: initial WIP version of release
> > instructions to follow for releasing Ivy
> >
> > Repository: ant-ivy
> > Updated Branches:
> >   refs/heads/master 86eacb6b5 -> 1a19f2f83
> >
> >
> > initial WIP version of release instructions to follow for releasing Ivy
> >
> >
> > Project: http://git-wip-us.apache.org/repos/asf/ant-ivy/repo
> > Commit: http://git-wip-us.apache.org/repos/asf/ant-ivy/commit/1a19f2f8
> > Tree: http://git-wip-us.apache.org/repos/asf/ant-ivy/tree/1a19f2f8
> > Diff: http://git-wip-us.apache.org/repos/asf/ant-ivy/diff/1a19f2f8
> >
> > Branch: refs/heads/master
> > Commit: 1a19f2f836cd33a25d458ed8ba9bbb3c7ce4ff96
> > Parents: 86eacb6
> > Author: Jaikiran Pai <[hidden email]>
> > Authored: Tue Feb 27 18:28:16 2018 +0530
> > Committer: Jaikiran Pai <[hidden email]>
> > Committed: Tue Feb 27 18:28:16 2018 +0530
> >
> > ----------------------------------------------------------------------
> >  release-instructions.adoc | 186
> > +++++++++++++++++++++++++++++++++++++++++
> >  1 file changed, 186 insertions(+)
> > ----------------------------------------------------------------------
> >
> >
> > http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/1a19f2f8/release-
> > instructions.adoc
> > ----------------------------------------------------------------------
> > diff --git a/release-instructions.adoc b/release-instructions.adoc new
> > file mode 100644 index 0000000..ba8bd5d
> > --- /dev/null
> > +++ b/release-instructions.adoc
> > @@ -0,0 +1,186 @@
> > += Instructions for releasing Apache Ivy
> > +
> > +
> > +NOTE: This document is adapted from the Ant release process.
> > +
> > +== Propose a release plan
> > +
> > +This should set out the timetable for the release under ideal
> > circumstances. In reality, you send a note to the list that you intend
> > to cut the release and wait for a few days whether anybody objects.
> > +
> > +We don't create extra branches for release and the release will be
> > done from the `master` branch.
> > +
> > +This document assumes you are familiar with `git` http://git-
> > scm.com/book/en/v2/ may be a good guide if you are not.
> > +
> > +== Checkout the repo
> > +
> > +We don't want tags for failed votes to end up on out branches so the
> > release is first created from a detached head.
> > +
> > +Checkout the `HEAD` of the `master` branch as a detached head:
> > +
> > +[source]
> > +----
> > +    git checkout master^0
> > +
> > +----
> > +
> > +Make sure that your directory tree is clean by running `git status`.
> > +
> > +== Update the version number
> > +
> > +The `version.properties` contains the version number of the Ivy
> > project being released. Update the following properties to the right
> > values (which is decided based on what version number and qualifier you
> > want to associate with the release):
> > +
> > +[source]
> > +----
> > +target.ivy.version=2.5.0
> > +# Following OSGi spec: have to be 3 numbers separated by dots
> > +target.ivy.bundle.version=2.5.0 # in case we want to add a qualifier
> > +such as alpha, beta, etc...
> > +# if non empty, add a '_' at the end of the qualifier, so the version
> > +would look like 1.2.3.alpha_200901011200
> > +target.ivy.bundle.version.qualifier=alpha_
> > +----
> > +
> > +== Trigger the release build
> > +
> > +Trigger the release by running the `build-release.xml`'s `release`
> > target. This compiles the project, runs the tests, generates the
> > documentation and tutorials and finally creates the distribution
> > artifacts.
> > +
> > +[source]
> > +----
> > +    ant -f build-release.xml release
> > +
> > +----
> > +
> > +Upon successful completion, the distribution artifacts will be
> > generated in the `build/distrib` directory of the checked out project,
> > locally.
> > +
> > +== Sign the distribution artifacts
> > +
> > +TODO: This section needs more details about setting up KEYS and making
> > +them available to the public (similar to the Ant project's KEYS file
> > in
> > +the repo)
> > +
> > +The `build-release.xml` has a `sign` target which can be used to sign
> > the generated distribution artifacts. Run the following command to sign
> > these artifacts:
> > +
> > +[source]
> > +----
> > +    ant -f build-release.xml sign
> > +----
> > +
> > +== Commit the changes and create a RC tag for the release
> > +
> > +At this point the distribution artifacts have been generated and have
> > been successfully signed too. We can now commit the changes (which most
> > likely will just be the version file changes) and create a RC tag for
> > the release.
> > +
> > +If we are releasing `2.5.0` and if this is the first RC for it, then
> > we create a `2.5.0-RC1` tag for it.
> > +
> > +Be sure to replace the version number appropriately in the following
> > command:
> > +
> > +[source]
> > +----
> > +    git tag -m "Release <version>" <version>
> > +----
> > +
> > +The commit and the tag can now be pushed to the asf hosted repo:
> > +
> > +[source]
> > +----
> > +    git push --tags <remote-repo> master
> > +----
> > +
> > +== Upload the distribution artifacts
> > +
> > +TODO: This needs more details and some verification that it's a
> > similar process as that we do in Ant release. The process might involve
> > the following:
> > +
> > +=== Upload to https://dist.apache.org/repos/dist/dev/ant/ivy/
> > +
> > +- Create a SVN sandbox on your computer with
> > https://dist.apache.org/repos/dist/dev/ant/ivy/ in it.
> > +
> > +- Copy the distribution folder to the location of the sandbox.
> > +
> > +- `svn add` the files and `commit` into
> > +https://dist.apache.org/repos/dist/dev/ant/ivy/
> > +
> > +=== Upload the Maven artifacts
> > +TODO: This section needs work
> > +
> > +== Initiate a vote
> > +
> > +Once the above steps are done, initiate a vote by sending a email on
> > dev@ant.
> > +
> > +The email will typically mention :
> > +
> > +- the git tag for the release including commit hash,
> > +
> > +- the location of the tarballs, including revision number in
> > +dist.apache.org repository
> > +
> > +- the URL for the maven artifacts
> > +
> > +- TODO: link to documentation? (where do we upload it?)
> > +
> > +The vote will only pass if at least three PMC members have voted +1
> > and more +1s than -1s have been cast.  The vote will run for 3 days.
> > +
> > +If the vote fails, address the problems and recreate the next RC build
> > +(by redoing the release process)
> > +
> > +== Promote the RC to Final
> > +
> > +=== Create the tag in the repo
> > +Once the vote has passed, tag the last RC created with the final tag
> > +
> > +[source]
> > +----
> > +    git checkout <the-rc-tag-that-passed-the-vote>
> > +    git tag -m "Tagging release <verion> of Ivy" <version>
> > +    git push --tags <remote-repo> master
> > +----
> > +
> > +=== Promote the distribution artifacts to
> > +https://dist.apache.org/repos/dist/release/ant/ivy/
> > +
> > +The distrib artifacts should be published the apache dist. It is
> > managed via `svnpubsub` so the release should be committed to the
> > subversion repository at
> > https://dist.apache.org/repos/dist/release/ant/ivy/.
> > +
> > +TODO: This needs more details on what needs to be done
> > +
> > +== Release the project in the Ivy's JIRA
> > +
> > +Mark the newly released version as "released" in the JIRA and create a
> > newer version for tracking upcoming tasks.
> > +
> > +== Update the version in the repo to next release
> > +
> > +Checkout the master branch and update the `version.properties` to use
> > newer version number for a subsequent release. Commit the changes and
> > push to master branch.
> > +
> > +[source]
> > +----
> > +    git checkout master
> > +    ... edit the version.properties to use newer version
> > +    git commit -m "next dev version" ./version.properties
> > +    git push <remote-repo> master
> > +----
> > +
> > +== Wait for mirrors to catch up
> > +
> > +Now that distribution artifacts have been uploaded, wait a few hours
> > for the mirrors to catch up.
> > +
> > +== Update the Ivy site https://ant.apache.org/ivy/
> > +
> > +The website is managed here:
> > +https://svn.apache.org/repos/asf/ant/site/ivy/
> > +
> > +TODO: This needs more details/verification
> > +
> > +Copy the manual of the release into the production folder - since the
> > site still uses svn and Ivy proper uses git there currently is no way
> > to use the scm for this.
> > +
> > +Regenerate the site
> > +
> > +== Announce the release
> > +
> > +At this point in time, the release is done and announcements are made.
> > PGP-sign your announcement posts.
> > +
> > +Apache mailing lists that should get the announcements:
> > +
> > +    [hidden email], [hidden email] and ivy-
> > [hidden email].
> > +
> > +== Get some fresh air!
> > +
> > +You can now reacquaint yourself with your family and friends ;)
> > +
> > +== Remove the older releases
> > +
> > +TODO: This needs details
> > +
> > +
> > +
> > +
> > +
> > +
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email]
> For additional commands, e-mail: [hidden email]
>
>
Reply | Threaded
Open this post in threaded view
|

Re: ant-ivy git commit: initial WIP version of release instructions to follow for releasing Ivy

Jaikiran Pai
I read through it and (obviously) it covers the necessary details. So my
new doc that I committed isn't needed.

As for automating/changing things in that doc, I think it's something
one of us can do once we try out that doc for this release.

-Jaikiran


On 27/02/18 8:12 PM, Jaikiran Pai wrote:

> No I hadn’t :) Will check it out tonight.
>
> -Jaikiran
>
> On Tuesday, February 27, 2018, Jan Matèrne (jhm) <[hidden email]
> <mailto:[hidden email]>> wrote:
>
>     Have you seen doc/dev/makerelease.html ?
>     But updating (and maybe automating) is a good idea. ;)
>
>     Jan
>
>     > -----Ursprüngliche Nachricht-----
>     > Von: [hidden email] <mailto:[hidden email]>
>     [mailto:[hidden email] <mailto:[hidden email]>]
>     > Gesendet: Dienstag, 27. Februar 2018 13:59
>     > An: [hidden email]
>     <mailto:[hidden email]>
>     > Betreff: ant-ivy git commit: initial WIP version of release
>     > instructions to follow for releasing Ivy
>     >
>     > Repository: ant-ivy
>     > Updated Branches:
>     >   refs/heads/master 86eacb6b5 -> 1a19f2f83
>     >
>     >
>     > initial WIP version of release instructions to follow for
>     releasing Ivy
>     >
>     >
>     > Project: http://git-wip-us.apache.org/repos/asf/ant-ivy/repo
>     <http://git-wip-us.apache.org/repos/asf/ant-ivy/repo>
>     > Commit:
>     http://git-wip-us.apache.org/repos/asf/ant-ivy/commit/1a19f2f8
>     <http://git-wip-us.apache.org/repos/asf/ant-ivy/commit/1a19f2f8>
>     > Tree:
>     http://git-wip-us.apache.org/repos/asf/ant-ivy/tree/1a19f2f8
>     <http://git-wip-us.apache.org/repos/asf/ant-ivy/tree/1a19f2f8>
>     > Diff:
>     http://git-wip-us.apache.org/repos/asf/ant-ivy/diff/1a19f2f8
>     <http://git-wip-us.apache.org/repos/asf/ant-ivy/diff/1a19f2f8>
>     >
>     > Branch: refs/heads/master
>     > Commit: 1a19f2f836cd33a25d458ed8ba9bbb3c7ce4ff96
>     > Parents: 86eacb6
>     > Author: Jaikiran Pai <[hidden email]
>     <mailto:[hidden email]>>
>     > Authored: Tue Feb 27 18:28:16 2018 +0530
>     > Committer: Jaikiran Pai <[hidden email]
>     <mailto:[hidden email]>>
>     > Committed: Tue Feb 27 18:28:16 2018 +0530
>     >
>     >
>     ----------------------------------------------------------------------
>     >  release-instructions.adoc | 186
>     > +++++++++++++++++++++++++++++++++++++++++
>     >  1 file changed, 186 insertions(+)
>     >
>     ----------------------------------------------------------------------
>     >
>     >
>     >
>     http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/1a19f2f8/release-
>     <http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/1a19f2f8/release->
>     > instructions.adoc
>     >
>     ----------------------------------------------------------------------
>     > diff --git a/release-instructions.adoc
>     b/release-instructions.adoc new
>     > file mode 100644 index 0000000..ba8bd5d
>     > --- /dev/null
>     > +++ b/release-instructions.adoc
>     > @@ -0,0 +1,186 @@
>     > += Instructions for releasing Apache Ivy
>     > +
>     > +
>     > +NOTE: This document is adapted from the Ant release process.
>     > +
>     > +== Propose a release plan
>     > +
>     > +This should set out the timetable for the release under ideal
>     > circumstances. In reality, you send a note to the list that you
>     intend
>     > to cut the release and wait for a few days whether anybody objects.
>     > +
>     > +We don't create extra branches for release and the release will be
>     > done from the `master` branch.
>     > +
>     > +This document assumes you are familiar with `git` http://git-
>     > scm.com/book/en/v2/ <http://scm.com/book/en/v2/> may be a good
>     guide if you are not.
>     > +
>     > +== Checkout the repo
>     > +
>     > +We don't want tags for failed votes to end up on out branches
>     so the
>     > release is first created from a detached head.
>     > +
>     > +Checkout the `HEAD` of the `master` branch as a detached head:
>     > +
>     > +[source]
>     > +----
>     > +    git checkout master^0
>     > +
>     > +----
>     > +
>     > +Make sure that your directory tree is clean by running `git
>     status`.
>     > +
>     > +== Update the version number
>     > +
>     > +The `version.properties` contains the version number of the Ivy
>     > project being released. Update the following properties to the right
>     > values (which is decided based on what version number and
>     qualifier you
>     > want to associate with the release):
>     > +
>     > +[source]
>     > +----
>     > +target.ivy.version=2.5.0
>     > +# Following OSGi spec: have to be 3 numbers separated by dots
>     > +target.ivy.bundle.version=2.5.0 # in case we want to add a
>     qualifier
>     > +such as alpha, beta, etc...
>     > +# if non empty, add a '_' at the end of the qualifier, so the
>     version
>     > +would look like 1.2.3.alpha_200901011200
>     > +target.ivy.bundle.version.qualifier=alpha_
>     > +----
>     > +
>     > +== Trigger the release build
>     > +
>     > +Trigger the release by running the `build-release.xml`'s `release`
>     > target. This compiles the project, runs the tests, generates the
>     > documentation and tutorials and finally creates the distribution
>     > artifacts.
>     > +
>     > +[source]
>     > +----
>     > +    ant -f build-release.xml release
>     > +
>     > +----
>     > +
>     > +Upon successful completion, the distribution artifacts will be
>     > generated in the `build/distrib` directory of the checked out
>     project,
>     > locally.
>     > +
>     > +== Sign the distribution artifacts
>     > +
>     > +TODO: This section needs more details about setting up KEYS and
>     making
>     > +them available to the public (similar to the Ant project's KEYS
>     file
>     > in
>     > +the repo)
>     > +
>     > +The `build-release.xml` has a `sign` target which can be used
>     to sign
>     > the generated distribution artifacts. Run the following command
>     to sign
>     > these artifacts:
>     > +
>     > +[source]
>     > +----
>     > +    ant -f build-release.xml sign
>     > +----
>     > +
>     > +== Commit the changes and create a RC tag for the release
>     > +
>     > +At this point the distribution artifacts have been generated
>     and have
>     > been successfully signed too. We can now commit the changes
>     (which most
>     > likely will just be the version file changes) and create a RC
>     tag for
>     > the release.
>     > +
>     > +If we are releasing `2.5.0` and if this is the first RC for it,
>     then
>     > we create a `2.5.0-RC1` tag for it.
>     > +
>     > +Be sure to replace the version number appropriately in the
>     following
>     > command:
>     > +
>     > +[source]
>     > +----
>     > +    git tag -m "Release <version>" <version>
>     > +----
>     > +
>     > +The commit and the tag can now be pushed to the asf hosted repo:
>     > +
>     > +[source]
>     > +----
>     > +    git push --tags <remote-repo> master
>     > +----
>     > +
>     > +== Upload the distribution artifacts
>     > +
>     > +TODO: This needs more details and some verification that it's a
>     > similar process as that we do in Ant release. The process might
>     involve
>     > the following:
>     > +
>     > +=== Upload to https://dist.apache.org/repos/dist/dev/ant/ivy/
>     <https://dist.apache.org/repos/dist/dev/ant/ivy/>
>     > +
>     > +- Create a SVN sandbox on your computer with
>     > https://dist.apache.org/repos/dist/dev/ant/ivy/
>     <https://dist.apache.org/repos/dist/dev/ant/ivy/> in it.
>     > +
>     > +- Copy the distribution folder to the location of the sandbox.
>     > +
>     > +- `svn add` the files and `commit` into
>     > +https://dist.apache.org/repos/dist/dev/ant/ivy/
>     <https://dist.apache.org/repos/dist/dev/ant/ivy/>
>     > +
>     > +=== Upload the Maven artifacts
>     > +TODO: This section needs work
>     > +
>     > +== Initiate a vote
>     > +
>     > +Once the above steps are done, initiate a vote by sending a
>     email on
>     > dev@ant.
>     > +
>     > +The email will typically mention :
>     > +
>     > +- the git tag for the release including commit hash,
>     > +
>     > +- the location of the tarballs, including revision number in
>     > +dist.apache.org <http://dist.apache.org> repository
>     > +
>     > +- the URL for the maven artifacts
>     > +
>     > +- TODO: link to documentation? (where do we upload it?)
>     > +
>     > +The vote will only pass if at least three PMC members have voted +1
>     > and more +1s than -1s have been cast.  The vote will run for 3 days.
>     > +
>     > +If the vote fails, address the problems and recreate the next
>     RC build
>     > +(by redoing the release process)
>     > +
>     > +== Promote the RC to Final
>     > +
>     > +=== Create the tag in the repo
>     > +Once the vote has passed, tag the last RC created with the
>     final tag
>     > +
>     > +[source]
>     > +----
>     > +    git checkout <the-rc-tag-that-passed-the-vote>
>     > +    git tag -m "Tagging release <verion> of Ivy" <version>
>     > +    git push --tags <remote-repo> master
>     > +----
>     > +
>     > +=== Promote the distribution artifacts to
>     > +https://dist.apache.org/repos/dist/release/ant/ivy/
>     <https://dist.apache.org/repos/dist/release/ant/ivy/>
>     > +
>     > +The distrib artifacts should be published the apache dist. It is
>     > managed via `svnpubsub` so the release should be committed to the
>     > subversion repository at
>     > https://dist.apache.org/repos/dist/release/ant/ivy/
>     <https://dist.apache.org/repos/dist/release/ant/ivy/>.
>     > +
>     > +TODO: This needs more details on what needs to be done
>     > +
>     > +== Release the project in the Ivy's JIRA
>     > +
>     > +Mark the newly released version as "released" in the JIRA and
>     create a
>     > newer version for tracking upcoming tasks.
>     > +
>     > +== Update the version in the repo to next release
>     > +
>     > +Checkout the master branch and update the `version.properties`
>     to use
>     > newer version number for a subsequent release. Commit the
>     changes and
>     > push to master branch.
>     > +
>     > +[source]
>     > +----
>     > +    git checkout master
>     > +    ... edit the version.properties to use newer version
>     > +    git commit -m "next dev version" ./version.properties
>     > +    git push <remote-repo> master
>     > +----
>     > +
>     > +== Wait for mirrors to catch up
>     > +
>     > +Now that distribution artifacts have been uploaded, wait a few
>     hours
>     > for the mirrors to catch up.
>     > +
>     > +== Update the Ivy site https://ant.apache.org/ivy/
>     > +
>     > +The website is managed here:
>     > +https://svn.apache.org/repos/asf/ant/site/ivy/
>     <https://svn.apache.org/repos/asf/ant/site/ivy/>
>     > +
>     > +TODO: This needs more details/verification
>     > +
>     > +Copy the manual of the release into the production folder -
>     since the
>     > site still uses svn and Ivy proper uses git there currently is
>     no way
>     > to use the scm for this.
>     > +
>     > +Regenerate the site
>     > +
>     > +== Announce the release
>     > +
>     > +At this point in time, the release is done and announcements
>     are made.
>     > PGP-sign your announcement posts.
>     > +
>     > +Apache mailing lists that should get the announcements:
>     > +
>     > + [hidden email] <mailto:[hidden email]>,
>     [hidden email] <mailto:[hidden email]> and ivy-
>     > [hidden email] <mailto:[hidden email]>.
>     > +
>     > +== Get some fresh air!
>     > +
>     > +You can now reacquaint yourself with your family and friends ;)
>     > +
>     > +== Remove the older releases
>     > +
>     > +TODO: This needs details
>     > +
>     > +
>     > +
>     > +
>     > +
>     > +
>
>
>
>     ---------------------------------------------------------------------
>     To unsubscribe, e-mail: [hidden email]
>     <mailto:[hidden email]>
>     For additional commands, e-mail: [hidden email]
>     <mailto:[hidden email]>
>