On 20 June 2017 at 13:04, Daniel Gruno <[email protected]> wrote: > On 06/20/2017 01:56 PM, sebb wrote: >> On 20 June 2017 at 11:36, <[email protected]> wrote: >>> Repository: incubator-ponymail-site >>> Updated Branches: >>> refs/heads/asf-site f1cd2859f -> 3425b8f7e >>> >>> >>> Add notes on how to build a release. >>> >>> >>> Project: http://git-wip-us.apache.org/repos/asf/incubator-ponymail-site/repo >>> Commit: >>> http://git-wip-us.apache.org/repos/asf/incubator-ponymail-site/commit/3425b8f7 >>> Tree: >>> http://git-wip-us.apache.org/repos/asf/incubator-ponymail-site/tree/3425b8f7 >>> Diff: >>> http://git-wip-us.apache.org/repos/asf/incubator-ponymail-site/diff/3425b8f7 >>> >>> Branch: refs/heads/asf-site >>> Commit: 3425b8f7e3f411061aea1c5b955c95904670ac50 >>> Parents: f1cd285 >>> Author: Daniel Gruno <[email protected]> >>> Authored: Tue Jun 20 12:34:18 2017 +0200 >>> Committer: Daniel Gruno <[email protected]> >>> Committed: Tue Jun 20 12:34:18 2017 +0200 >>> >>> ---------------------------------------------------------------------- >>> source/markdown/building.md | 19 +++++++++++++++++++ >>> source/markdown/contribute.md | 4 ++++ >>> 2 files changed, 23 insertions(+) >>> ---------------------------------------------------------------------- >>> >>> >>> http://git-wip-us.apache.org/repos/asf/incubator-ponymail-site/blob/3425b8f7/source/markdown/building.md >>> ---------------------------------------------------------------------- >>> diff --git a/source/markdown/building.md b/source/markdown/building.md >>> new file mode 100644 >>> index 0000000..8bcb962 >>> --- /dev/null >>> +++ b/source/markdown/building.md >>> @@ -0,0 +1,19 @@ >>> +# Building (and releasing) Apache Pony Mail (Incubating) >>> + >>> +Release managers wanting to initiate a release of Pony Mail should follow >>> these steps: >>> + >>> +Assuming you wish to release version X.Y >>> + >>> +- Create a new branch off master called X.Y (ideally, master is always >>> releasable). >>> +- Tarball the branch, sans the .git directory: `git archive >>> --format=tar.gz -o ~/ponymail-X.Y.tar.gz HEAD` >>> +- Create checksums of the archive (make sure your PGP key is in our >>> [KEYS](https://dist.apache.org/repos/dist/dev/incubator/ponymail/KEYS) >>> file!): >>> + - Make a checksum for the archive itself: `sha256sum ponymail-X.Y.tar.gz >>> > ponymail-X.Y.tar.gz.sha256` >>> + - Sign the archive: `gpg --output ponymail-X.Y.tar.gz.asc --sign >>> ponymail-X.Y.tar.gz` OR >>> + - Sign the checksum: `gpg --output ponymail-X.Y.tar.gz.sha256.asc --sign >>> ponymail-X.Y.tar.gz.sha256` >>> +- Push the artefacts to >>> `https://dist.apache.org/repos/dist/dev/incubator/ponymail/` via subversion >>> +- Initate a vote on the release on [email protected]. To make things >>> easier, don't bother with RC1, RC2 etc. version numbers are cheap. >> >> I disagree that version numbers are cheap. >> >> They are often used as references in other places such as change >> lists, release notes, etc. >> Fixing such references involves work. >> For every version that is thrown away. >> >> It's also not cheap to have to field queries such as >> >> What happened to version 0.10? > > We differ in opinion then :) > Where I come from (httpd), we throw away release versions if the vote > doesn't pass and just mark it as 'not released'. Using RC1, RC2 etc > complicates the release process as you can't just mv the files then (the > checksums will have a mismatch).
In Commons we create the tag using the RC number and name the files with the final names but stored in a dist/dev/xxRNn folder. The votes contain the hashes and SVN URLs and versions. So when the files are renamed from dist/dev/ to dist/release it's possible to trace them back to the vote. If the vote succeeds the RC tag is copied to the GA tag. > I suppose we can have a vote on whether to go with 'cheap version > numbers' or use RC numbers. Or you can omit the file names from the hash file contents in which case a mv can fix the name without invalidating the hash. > With regards, > Daniel. > >> >>> +- Summarize the vote on the dev list after 72 hours. >>> +- When/If the vote passes, you can then move the artefacts to >>> `https://dist.apache.org/repos/dist/release/incubator/ponymail/` via `svn >>> mv` >>> +- Announce the new release :) >>> + >>> + >>> >>> http://git-wip-us.apache.org/repos/asf/incubator-ponymail-site/blob/3425b8f7/source/markdown/contribute.md >>> ---------------------------------------------------------------------- >>> diff --git a/source/markdown/contribute.md b/source/markdown/contribute.md >>> index b7a196f..4e1a079 100644 >>> --- a/source/markdown/contribute.md >>> +++ b/source/markdown/contribute.md >>> @@ -93,3 +93,7 @@ up to date with the latest master changes anyway, always >>> rebase it; >>> don't git pull or introduce merge commits, as it will complicate the >>> rebasing process and will make it difficult to merge the pull request in >>> a clean way >>> + >>> + >>> +### Building releases >>> +Please see [this document](building.html) for details on building a >>> release. >>> >
