Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update RELEASING.md #1413

Draft
wants to merge 3 commits into
base: main
Choose a base branch
from
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 19 additions & 6 deletions RELEASING.md
Original file line number Diff line number Diff line change
Expand Up @@ -85,11 +85,11 @@ export GPG_TTY=$(tty)
## Release Steps

- Checkout the Apache StormCrawler main branch: `git clone [email protected]:apache/incubator-stormcrawler.git`
- (Optional) Execute a complete test: `mvn test`
- Execute a complete test: `mvn test`
- Check the current results of the last GitHub action runs.
- Do a trial build: `mvn package -Papache-release,apache-gpg`
- Switch to a new branch with a format like **rel-stormcrawler-x.y.z-RC?**
- Prepare the release: `mvn release:prepare -Papache-release,apache-gpg` Answer the questions appropriately. The tag name format should be *stormcrawler-x.y.z*.
- Prepare the release: `mvn release:prepare -Papache-release,apache-gpg` Answer the questions appropriately. The tag name format should be *stormcrawler-x.y.z*. **DO NOT INCLUDE `-rcX` in the tag**
This command creates and pushes two new commits to the repository to reflect the version changes. It also tags the release and pushes the branch.
- Check the result of the GitHub action runs.

Expand All @@ -108,8 +108,10 @@ export GPG_TTY=$(tty)
- Next, checkout the svn dist dev space from https://dist.apache.org/repos/dist/dev/incubator/stormcrawler
- Create a new folder `stormcrawler-x.y.z-RC1`.
- Add the `apache-stormcrawler-VERSION-incubating-source-release*` files from `stormcrawler/target/` to this folder.
- `echo " apache-stormcrawler-3.2.0-incubating-source-release.tar.gz" >> apache-stormcrawler-3.2.0-incubating-source-release.tar.gz.sha512`
- `echo " apache-stormcrawler-3.2.0-incubating-source-release.zip" >> apache-stormcrawler-3.2.0-incubating-source-release.zip.sha512`
- Ensure to add the file name to the `sha512` signature of the `apache-stormcrawler-VERSION-incubating-source-release*.zip.sha512` file as this is not automatically done via Maven.
- Commit the change set to the dist area. Check that the files are present in https://dist.apache.org/repos/dist/dev/incubator/stormcrawler/stormcrawler-x.y.z-RC1
- Commit the change set to the dist area (commit message "adding X.Y.Z-RC1"). Check that the files are present in https://dist.apache.org/repos/dist/dev/incubator/stormcrawler/stormcrawler-x.y.z-RC1

#### Check the Release Artifacts

Expand Down Expand Up @@ -139,18 +141,25 @@ gpg --homedir . --import KEYS
echo "
verify signature
"
gpg --homedir . --output apache-stormcrawler-x.y.z-RC1-incubating-source-release.tar.gz --decrypt apache-stormcrawler-x.y.z-RC1-incubating-source-release.tar.gz.asc
gpg --homedir . --output apache-stormcrawler-x.y.z-incubating-source-release.tar.gz --decrypt apache-stormcrawler-x.y.z-incubating-source-release.tar.gz.asc
```

- Check presence and appropriateness of `LICENSE`, `NOTICE`, `DISCLAIMER` and `README` files.
- Check presence and appropriateness of `LICENSE`, `NOTICE`, `DISCLAIMER` and `README.md` files.

### Prepare the Website

- Create a separate branch for the release.
- Run a global replace of the old version with the new version.
- Prepare a preview via the staging environment of the website.
- Ensure the website is updated on https://stormcrawler.staged.apache.org
- Note: Instruction on how to do so can be found on https://github.com/apache/incubator-stormcrawler-site

### Create a draft release on Github
- Create a new Draft Release -- on https://github.com/apache/incubator-stormcrawler/releases, click `Draft a new release` and select the `stormcrawler-X.Y.Z` tag.
- Click the `Generate Release Notes` (**MAKE SURE TO SELECT THE CORRECT PREVIOUS RELEASE AS THE BASE**). Copy and paste the Disclaimer and Release Summary from the previous release and update the Release Summary as appropriate.
- Click the `Set as pre-release` button.
- Click `Publish release`. The release should not have `*-rc1` in its title, e.g.: `https://github.com/apache/incubator-stormcrawler/releases/tag/stormcrawler-3.2.0`

#### Create a VOTE Thread

The VOTE process is two-fold:
Expand Down Expand Up @@ -182,7 +191,7 @@ https://dist.apache.org/repos/dist/dev/incubator/stormcrawler/stormcrawler-x.y.z

Tag:

https://github.com/apache/stormcrawler/releases/tag/stormcrawler-x.y.z
https://github.com/apache/incubator-stormcrawler/releases/tag/stormcrawler-x.y.z

Commit Hash:

Expand Down Expand Up @@ -288,6 +297,10 @@ Remove the old releases from SVN under https://dist.apache.org/repos/dist/releas
- Check, that the website is deployed successfully.
- Instruction on how to do so can be found on https://github.com/apache/incubator-stormcrawler-site

### Make the release on Github

- Remove the `draft` status from the release and select this release as the latest.

### Post-Release Steps

- Close the present release ticket
Expand Down