You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@unomi.apache.org by jk...@apache.org on 2022/09/22 18:01:37 UTC
[unomi-tracker] 01/01: UNOMI-671: improve release doc
This is an automated email from the ASF dual-hosted git repository.
jkevan pushed a commit to branch UNOMI-671-improve-release-doc
in repository https://gitbox.apache.org/repos/asf/unomi-tracker.git
commit 8eabee840e652c055a78ec39501f71453554f791
Author: Kevan <ke...@jahia.com>
AuthorDate: Thu Sep 22 20:01:16 2022 +0200
UNOMI-671: improve release doc
---
RELEASE.md | 48 ++++++++++++++++++++++++++++++++----------------
1 file changed, 32 insertions(+), 16 deletions(-)
diff --git a/RELEASE.md b/RELEASE.md
index 99b916b..8c57133 100644
--- a/RELEASE.md
+++ b/RELEASE.md
@@ -26,23 +26,39 @@ Current repository is using Trunk based development.
- `1_x`: Used for maintenance branches of previous versions
- `UNOMI-XXX`: feature or bug fix branches used to create pull request targeting the `main` branch
-Npm account
+Release example for 1.1.0
-------
-- Create an account on NpmJS registry: https://www.npmjs.com/
-- Ask on Apache Unomi dev mailing list (dev@unomi.apache.org) to be added as a maintainer for the package to be able to push versions
-- Login locally: `npm login` and your credentials
-
-Push a new version
--------
-- Bump version in the `main` branch: `1.0.0` -> `1.1.0` or for beta version `1.0.0-beta.0` -> `1.0.0-beta.1`, run:
- - `npm version 3.1.0-beta.1`: to update `package.json` and create a git tag in one go (see https://docs.npmjs.com/cli/version).
- - `git push origin main`: push the version update
- - `git push origin 3.1.0-beta.1`: push the git tag
-- Run checks:
+Checks before starting the release process:
+- Check headers and licenses
+- Check your GPG configuration is correct ! it will be required for signing the package.
+ - Follow: https://infra.apache.org/release-signing.html
+ - And: https://unomi.apache.org/contribute/release-guide.html
+- Check that you are logged into npm and you have permission to publish the package:
+ - Create an account on NpmJS registry: https://www.npmjs.com/
+ - Ask on Apache Unomi dev mailing list (dev@unomi.apache.org) to be added as a maintainer for the package to be able to push versions
+ - Login locally: `npm login` and your credentials
+- Do a final local check:
- `yarn lint`: ensure linter checks are passing
- `yarn test`: ensure tests are passing
- `yarn build`: ensure build is passing
-- Publish on npm the package, run:
- - in case of normal version: `npm publish`
- - in case of beta version: `npm publish --tag beta`
-- Create the release on GitHub for this tag (in case version is not beta).
\ No newline at end of file
+
+Start the release process:
+- Check version and create Git tag:
+ - Check `package.json` is using correct version: `1.1.0`
+ - Create Git tag: `git tag -s v1.1.0 -m 'create v1.1.0 tag'` (`-s` is used for signing using your local git GPG config)
+ - Push the tag: `git push origin v1.1.0`: push the git tag
+- Sign the package and upload the package to Apache SVN.
+ - Download the `.tar.gz` tag from git
+ - Sign the package: `gpg -ab unomi-tracker-1.1.0.tar.gz`
+ - Verify the signature: `gpg --verify unomi-tracker-1.1.0.tar.gz.asc unomi-tracker-1.1.0.tar.gz` (Check that the signature is correctly using your Apache signature)
+ - SHA the package: `shasum -a 512 unomi-tracker-1.1.0.tar.gz > unomi-tracker-1.1.0.tar.gz.sha512`
+ - Upload the 3 files (`.tar.gz`, `.tar.gz.asc`, `.tar.gz.sha512`) to Apache SVN: `https://dist.apache.org/repos/dist/dev/unomi/unomi-tracker/1.1.0`
+ (Create the folder if it doesn't exist)
+- Start voting process, follow Unomi documentation it's the same: https://unomi.apache.org/contribute/release-guide.html
+- Wait for the vote to finnish then finalize the release on Apache side:
+ - move `https://dist.apache.org/repos/dist/dev/unomi/unomi-tracker/1.1.0` to `https://dist.apache.org/repos/dist/release/unomi/unomi-tracker/1.1.0`
+ - in JIRA mark the version `unomi-tracker-1.1.0` as released and add a release date
+- Publish the release package to NPM:
+ - Download the Apache released package: `https://dist.apache.org/repos/dist/release/unomi/unomi-tracker/1.1.0/unomi-tracker-1.1.0.tar.gz`
+ - Untar the package and publish the package by running: `npm publish`
+- You can set the next version into `package.json` like `1.2.0` for example.
\ No newline at end of file