You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@brooklyn.apache.org by rdowner <gi...@git.apache.org> on 2015/07/28 12:56:39 UTC

[GitHub] incubator-brooklyn pull request: Release process documentation and...

GitHub user rdowner opened a pull request:

    https://github.com/apache/incubator-brooklyn/pull/775

    Release process documentation and tools

    Adds documentation for the Apache release process for incubating projects, as applied to Brooklyn, the necessary release scripts, and some optional supporting materials.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/rdowner/incubator-brooklyn release-helpers

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/incubator-brooklyn/pull/775.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #775
    
----
commit 1aa1ba18156b3e592952eced98299d6b79e2ffc0
Author: Richard Downer <ri...@apache.org>
Date:   2015-06-23T12:10:21Z

    Add various release helpers

commit 26bb45c1d9986c2d6cfc0cff75c88456298b1bb1
Author: Richard Downer <ri...@apache.org>
Date:   2015-01-13T16:12:39Z

    Document the release process

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-brooklyn pull request: Release process documentation and...

Posted by asfgit <gi...@git.apache.org>.
Github user asfgit closed the pull request at:

    https://github.com/apache/incubator-brooklyn/pull/775


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-brooklyn pull request: Release process documentation and...

Posted by aledsage <gi...@git.apache.org>.
Github user aledsage commented on the pull request:

    https://github.com/apache/incubator-brooklyn/pull/775#issuecomment-125640889
  
    Wow, great docs! Thanks @rdowner 
    
    Does every Apache project go through writing this?! Or taking the generic instructions and tweaking them every time they run it?!
    
    Merging.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-brooklyn pull request: Release process documentation and...

Posted by aledsage <gi...@git.apache.org>.
Github user aledsage commented on a diff in the pull request:

    https://github.com/apache/incubator-brooklyn/pull/775#discussion_r35656973
  
    --- Diff: docs/website/developers/committers/release-process/publish.md ---
    @@ -0,0 +1,129 @@
    +---
    +layout: website-normal
    +title: Publish to the public
    +navgroup: developers
    +---
    +
    +Publish the source and binary distributions to the pre-release area
    +-------------------------------------------------------------------
    +
    +You will need to have checked out the Apache distribution Subversion repository located at
    +https://dist.apache.org/repos/dist/release/incubator/brooklyn. Please refer to [Prerequisites](prerequisites.html) for
    +information.
    +
    +In your workspace for the `dist.apache.org` repo, create a directory with the artifact name and version:
    +
    +{% highlight bash %}
    +mkdir apache-brooklyn-${VERSION_NAME}
    +{% endhighlight %}
    +
    +Refer back to the pre-release area Subversion (see [Publish to the staging area](publish-temp.html)), and copy all of
    +the release candidate artifacts - `-src` and `-bin`, `.tar.gz` and `.zip`, and all associated `.md5`, `.sha1`, `.sha256`
    +and `.asc` signatures - into this new folder.
    +
    +Rename all of the files to remove the `-rcN` designation. If you have the `mmv` tool installed, this can be done with
    +this command:
    +
    +{% highlight bash %}
    +mmv -v '*-rc'$RC_NUMBER'-*' '#1-#2'
    +{% endhighlight %}
    +
    +The hash files will need patching to refer to the filenames without the `-rcN` designation:
    +
    +{% highlight bash %}
    +sed -i.bak 's/-rc'$RC_NUMBER'-/-/' *.md5 *.sha1 *.sha256
    +rm -f *.bak
    +{% endhighlight %}
    +
    +Note that the PGP signatures do not embed the filename so they do not need to be modified
    +
    +As a final check, re-test the hashes and signatures:
    +
    +{% highlight bash %}
    +for ext in -src.tar.gz -src.zip -bin.tar.gz -bin.zip; do
    +    artifact=apache-brooklyn-${VERSION_NAME}${ext}
    +    md5sum -c ${artifact}.md5
    +    shasum -a1 -c ${artifact}.sha1
    +    shasum -a256 -c ${artifact}.sha256
    +    gpg2 --verify ${artifact}.asc ${artifact}
    +done
    +{% endhighlight %}
    +
    +Then, add them to Subversion and commit.
    +
    +{% highlight bash %}
    +svn add apache-brooklyn-${VERSION_NAME}
    +svn commit --message "Add apache-brooklyn-${VERSION_NAME} to dist/release/incubator/brooklyn"
    +{% endhighlight %}
    +
    +
    +Publish the staging repository on Apache's Nexus server
    +-------------------------------------------------------
    +
    +*Releasing* the staging repository causes its contents to be copied to the main Apache Nexus repository. This in turn
    +is propagated to Maven Central, meaning all of our users can access the artifacts using a default Maven configuration
    +(there's no need to add a `<repository>` to their `pom.xml` or `~/.m2/settings.xml`).
    +
    +Go to the Apache Nexus server at [https://repository.apache.org/](https://repository.apache.org/) and log in using the
    +link in the top right (the credentials are the same as your Git and Jenkins credentials). Go to the "Staging
    +Repositories" page, and tick the repository with the name starting `orgapachebrooklyn`. Click the **Release** button.
    +Provide a description which includes the version, e.g. `Apache Brooklyn 0.7.0-incubating`.
    +
    +
    +Update the website
    +------------------
    +
    +*Instructions on uploading to the website are beyond the scope of these instructions. Refer to the appropriate
    --- End diff --
    
    Can we have a pointer to the docs for uploading to the website?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---