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) <apa...@materne.de <mailto:apa...@materne.de>> wrote:

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

    Jan

    > -----Ursprüngliche Nachricht-----
    > Von: jaiki...@apache.org <mailto:jaiki...@apache.org>
    [mailto:jaiki...@apache.org <mailto:jaiki...@apache.org>]
    > Gesendet: Dienstag, 27. Februar 2018 13:59
    > An: notificati...@ant.apache.org
    <mailto:notificati...@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 <jaiki...@apache.org
    <mailto:jaiki...@apache.org>>
    > Authored: Tue Feb 27 18:28:16 2018 +0530
    > Committer: Jaikiran Pai <jaiki...@apache.org
    <mailto:jaiki...@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:
    > +
    > + annou...@apache.org <mailto:annou...@apache.org>,
    dev@ant.apache.org <mailto:dev@ant.apache.org> and ivy-
    > u...@ant.apache.org <mailto:u...@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-unsubscr...@ant.apache.org
    <mailto:dev-unsubscr...@ant.apache.org>
    For additional commands, e-mail: dev-h...@ant.apache.org
    <mailto:dev-h...@ant.apache.org>


Reply via email to