You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by ja...@apache.org on 2018/02/27 12:58:33 UTC

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 <ja...@apache.org>
Authored: Tue Feb 27 18:28:16 2018 +0530
Committer: Jaikiran Pai <ja...@apache.org>
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:
+
+    announce@apache.org, dev@ant.apache.org and ivy-user@ant.apache.org.
+
+== Get some fresh air!
+
+You can now reacquaint yourself with your family and friends ;)
+
+== Remove the older releases
+
+TODO: This needs details
+
+
+
+
+
+


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

Posted by Jaikiran Pai <ja...@gmail.com>.
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) <apache@materne.de 
> <ma...@materne.de>> wrote:
>
>     Have you seen doc/dev/makerelease.html ?
>     But updating (and maybe automating) is a good idea. ;)
>
>     Jan
>
>     > -----Ursprüngliche Nachricht-----
>     > Von: jaikiran@apache.org <ma...@apache.org>
>     [mailto:jaikiran@apache.org <ma...@apache.org>]
>     > Gesendet: Dienstag, 27. Februar 2018 13:59
>     > An: notifications@ant.apache.org
>     <ma...@ant.apache.org>
>     > 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 <jaikiran@apache.org
>     <ma...@apache.org>>
>     > Authored: Tue Feb 27 18:28:16 2018 +0530
>     > Committer: Jaikiran Pai <jaikiran@apache.org
>     <ma...@apache.org>>
>     > 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:
>     > +
>     > + announce@apache.org <ma...@apache.org>,
>     dev@ant.apache.org <ma...@ant.apache.org> and ivy-
>     > user@ant.apache.org <ma...@ant.apache.org>.
>     > +
>     > +== 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: dev-unsubscribe@ant.apache.org
>     <ma...@ant.apache.org>
>     For additional commands, e-mail: dev-help@ant.apache.org
>     <ma...@ant.apache.org>
>


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

Posted by Jaikiran Pai <ja...@gmail.com>.
No I hadn’t :) Will check it out tonight.

-Jaikiran

On Tuesday, February 27, 2018, Jan Matèrne (jhm) <ap...@materne.de> wrote:

> Have you seen doc/dev/makerelease.html ?
> But updating (and maybe automating) is a good idea. ;)
>
> Jan
>
> > -----Ursprüngliche Nachricht-----
> > Von: jaikiran@apache.org [mailto:jaikiran@apache.org]
> > Gesendet: Dienstag, 27. Februar 2018 13:59
> > An: notifications@ant.apache.org
> > 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 <ja...@apache.org>
> > Authored: Tue Feb 27 18:28:16 2018 +0530
> > Committer: Jaikiran Pai <ja...@apache.org>
> > 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:
> > +
> > +    announce@apache.org, dev@ant.apache.org and ivy-
> > user@ant.apache.org.
> > +
> > +== 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: dev-unsubscribe@ant.apache.org
> For additional commands, e-mail: dev-help@ant.apache.org
>
>

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

Posted by "Jan Matèrne (jhm)" <ap...@materne.de>.
Have you seen doc/dev/makerelease.html ?
But updating (and maybe automating) is a good idea. ;)

Jan

> -----Ursprüngliche Nachricht-----
> Von: jaikiran@apache.org [mailto:jaikiran@apache.org]
> Gesendet: Dienstag, 27. Februar 2018 13:59
> An: notifications@ant.apache.org
> 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 <ja...@apache.org>
> Authored: Tue Feb 27 18:28:16 2018 +0530
> Committer: Jaikiran Pai <ja...@apache.org>
> 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:
> +
> +    announce@apache.org, dev@ant.apache.org and ivy-
> user@ant.apache.org.
> +
> +== 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: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org