Skip to content

Commit

Permalink
Improve release instructions
Browse files Browse the repository at this point in the history
  • Loading branch information
bchapuis committed Sep 9, 2024
1 parent a0c6085 commit 932bc70
Showing 1 changed file with 22 additions and 11 deletions.
33 changes: 22 additions & 11 deletions RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,14 +36,14 @@ In order to release a new version of Apache Baremaps, follow these steps:
```bash
cd baremaps
git checkout -b release-$RELEASE_VERSION
git push --set-upstream origin release-$RELEASE_VERSION
```

- [ ] Set the release version and commit the changes:

```bash
./mvnw versions:set -DnewVersion=$RELEASE_VERSION
git commit -a -m "Release Baremaps $RELEASE_VERSION"
git push --set-upstream origin release-$RELEASE_VERSION
```

- [ ] Tag the last commit with the release candidate version:
Expand All @@ -52,10 +52,6 @@ git commit -a -m "Release Baremaps $RELEASE_VERSION"
git tag v$RELEASE_VERSION-rc$CANDIDATE_NUMBER
```

> TODO: The following step is not yet fully automated. We need to add secrets and steps to publish the artifacts to the [dev directory](https://dist.apache.org/repos/dist/dev/incubator/baremaps/) (APACHE_USERNAME, APACHE_PASSWORD) and to the maven repository (NEXUS_USERNAME, NEXUS_PASSWORD).
```bash

- [ ] Push the tag to the remote repository (this will trigger GitHub Action to build the release candidate, publish the artifacts to the [dev directory](https://dist.apache.org/repos/dist/dev/incubator/baremaps/) of dist.apache.org repository, and draft a release on GitHub):

```bash
Expand All @@ -64,19 +60,33 @@ git push origin v$RELEASE_VERSION-rc$CANDIDATE_NUMBER

- [ ] Edit the release notes for this tag on GitHub.
- [ ] Ask the community to vote for the release candidate.
- [ ] If the release candidate is not approved by the community, commit the necessary changes, clean the git history,
and go back to step 5.
- [ ] If the release candidate is not approved by the community, commit the necessary changes, clean the git history, create a new release candidate, and repeat the process.

> TODO: The following step is not yet fully automated. We need to add secrets and steps to publish the artifacts to the [dev directory](https://dist.apache.org/repos/dist/dev/incubator/baremaps/) (APACHE_USERNAME, APACHE_PASSWORD) and to the maven repository (NEXUS_USERNAME, NEXUS_PASSWORD).
- [ ] If the release candidate is approved by the community, tag the release commit with the release version (this will trigger GitHub Action to build the release candidate, publish the artifacts to the [release directory](https://dist.apache.org/repos/dist/release/incubator/baremaps/) of dist.apache.org repository, and draft a release on GitHub):
- [ ] If the release candidate is approved by the community, tag the release commit with the release version (this will trigger the same GitHub Action as before):

```bash
git tag -a v$RELEASE_VERSION
git push origin v$RELEASE_VERSION
```

- [ ] Register the release on [reporter.apache.org](https://reporter.apache.org/addrelease.html?incubator-baremaps).
- [ ] Rebase the release branch into the main branch.
- [ ] Clean up all the release candidate branches and tags.
- [ ] Publish the release on GitHub.
- [ ] Copy the release artifacts from the [dev directory](https://dist.apache.org/repos/dist/dev/incubator/baremaps/) to the [release directory](https://dist.apache.org/repos/dist/release/incubator/baremaps/).

```bash
svn cp https://dist.apache.org/repos/dist/dev/incubator/baremaps/$RELEASE_VERSION-rc$CANDIDATE_NUMBER https://dist.apache.org/repos/dist/release/incubator/baremaps/$RELEASE_VERSION -m "Release Apache Baremaps (incubating) $RELEASE_VERSION"
```

- [ ] Publish the release artifacts to the maven repository.

```bash
./mvnw clean deploy -Papache-release
```

- [ ] Set the version of the next iteration and commit the changes:

```bash
Expand All @@ -85,10 +95,11 @@ git commit -a -m "Prepare for next development iteration"
git push origin
```

- [ ] Rebase the release branch into the main branch.
- [ ] Publish the release on GitHub and update the website.
```bash
./mvnw clean deploy
```

- [ ] Notify the community of the release by sending a message to the mailing list.
- [ ] Clean up all the release candidate branches and tags.

## Reproducing the build

Expand Down

0 comments on commit 932bc70

Please sign in to comment.