This is an automated email from the ASF dual-hosted git repository.

jbonofre pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/polaris.git


The following commit(s) were added to refs/heads/main by this push:
     new d11a8055b Update the Release Guide about the Helm Chart package (#2179)
d11a8055b is described below

commit d11a8055bd578b6e30f80a7d1e3c15d7340822c4
Author: JB Onofré <jbono...@apache.org>
AuthorDate: Thu Sep 4 12:01:54 2025 +0200

    Update the Release Guide about the Helm Chart package (#2179)
    
    * Update the Release Guide about the Helm Chart package
    
    * Update release-guide.md
    
    Co-authored-by: Pierre Laporte <pie...@pingtimeout.fr>
    
    * Add missing commit message
    
    * Whitespace
    
    * Use Helm GPG plugin to sign the Helm chart
    
    * Fix directories during Helm chart copy to SVN
    
    * Add Helm index to SVN
    
    * Use long name for svn checkout
    
    * Ensure the Helm index is updated after the chart is moved to SVN dist 
release
    
    * Do not publish any Docker image before the vote succeeds
    
    * Typos
    
    * Revert "Do not publish any Docker image before the vote succeeds"
    
    This reverts commit 5617e653201adb43d268c223c84bfbd3ba2afb22.
    
    * Don't mention Helm values.yaml in the release guide as it doesn't contain 
version details
    
    ---------
    
    Co-authored-by: Pierre Laporte <pie...@pingtimeout.fr>
---
 site/content/release-guide.md | 85 +++++++++++++++++++++++++++++++++++--------
 1 file changed, 70 insertions(+), 15 deletions(-)

diff --git a/site/content/release-guide.md b/site/content/release-guide.md
index a0055b2c7..1b3dff734 100644
--- a/site/content/release-guide.md
+++ b/site/content/release-guide.md
@@ -28,10 +28,12 @@ To create a release candidate, you will need:
 * your Apache credentials (for repository.apache.org and dist.apache.org 
repositories)
 * a [GPG key](https://www.apache.org/dev/release-signing#generate) for signing 
artifacts, published in 
[KEYS](https://downloads.apache.org/incubator/polaris/KEYS) file
 
+### Publish your GPG key
+
 If you haven't published your GPG key yet, you must publish it before starting 
the release process:
 
 ```
-svn co https://dist.apache.org/repos/dist/release/incubator/polaris 
polaris-dist-release
+svn checkout https://dist.apache.org/repos/dist/release/incubator/polaris 
polaris-dist-release
 cd polaris-dist-release
 echo "" >> KEYS # append a new line
 gpg --list-sigs <YOUR KEY ID HERE> >> KEYS # append signatures
@@ -42,7 +44,6 @@ svn commit -m "add key for <YOUR NAME HERE>"
 To send the key to the Ubuntu key-server, Apache Nexus needs it to validate 
published artifacts:
 ```
 gpg --keyserver hkps://keyserver.ubuntu.com --send-keys <YOUR KEY ID HERE>
-
 ```
 
 ### Dist repository
@@ -74,7 +75,7 @@ export ORG_GRADLE_PROJECT_apachePassword=bar
 
 ### PGP signing
 
-During release process, the artifacts will be signed with your key, eventually 
using `gpg-agent`.
+During release process, the artifacts will be signed with your key, using 
`gpg-agent`.
 
 To configure gradle to sign the artifacts, you can add the following settings 
in your `~/.gradle/gradle.properties` file:
 
@@ -86,6 +87,10 @@ To use `gpg` instead of `gpg2`, also set 
`signing.gnupg.executable=gpg`.
 
 For more information, see the Gradle [signing 
documentation](https://docs.gradle.org/current/userguide/signing_plugin.html#sec:signatory_credentials).
 
+### Helm chart signing
+
+Helm chart artifacts are signed with your key, using the [helm gpg 
plugin](https://github.com/technosophos/helm-gpg).  Ensure the plugin is 
installed locally.
+
 ### GitHub Repository
 
 The release should be executed against https://github.com/apache/polaris.git 
repository (not a fork).
@@ -113,16 +118,25 @@ git push apache release/x.y.z
 Go in the branch, and set the target release version:
 
 ```
-git checkoout release/x.y.z
+git checkout release/x.y.z
 echo "x.y.z" > version.txt
-git commit -a
-git push
+```
+
+and update the version in the Helm Chart in:
+
+* `helm/polaris/Chart.yaml`
+* `helm/polaris/README.md`
+
+and commit/push the version bump:
+
+```
+git commit -m "Bump version to x.y.z" version.txt helm/polaris/Chart.yaml 
helm/polaris/README.md helm/polaris/values.yaml
 ```
 
 Update `CHANGELOG.md`:
 ```
 ./gradlew patchChangelog
-git commit -a
+git commit CHANGELOG.md -m "Update CHANGELOG for x.y.z release"
 git push
 ```
 
@@ -183,15 +197,54 @@ The binary distributions (for convenience) are available 
in:
 Now, we can stage the artifacts to dist dev repository:
 
 ```
-svn co https://dist.apache.org/repos/dist/dev/incubator/polaris 
polaris-dist-dev
+svn checkout https://dist.apache.org/repos/dist/dev/incubator/polaris 
polaris-dist-dev
 cd polaris-dist-dev
 mkdir x.y.z
 cp /path/to/polaris/github/clone/repo/build/distribution/* x.y.z
 cp 
/path/to/polaris/github/clone/repo/runtime/distribution/build/distributions/* 
x.y.z
-cp -r /path/to/polaris/github/clone/repo/helm/polaris helm-chart/x.y.z 
 svn add x.y.z
+```
+
+### Stage Helm Chart package
+
+You can now create a Helm package with the following command in the Polaris 
source folder:
+
+```
+cd helm
+helm package polaris
+helm gpg sign polaris-x.y.z.tgz
+```
+
+Create the signature and checksum for the Helm package tgz and prov files:
+
+```
+shasum -a 512 polaris-x.y.z.tgz > polaris-x.y.z.tgz.sha512
+gpg --armor --output polaris-x.y.z.tgz.asc --detach-sig polaris-x.y.z.tgz
+shasum -a 512 polaris-x.y.z.tgz.prov > polaris-x.y.z.tgz.prov.sha512
+gpg --armor --output polaris-x.y.z.tgz.prov.asc --detach-sig 
polaris-x.y.z.tgz.prov
+```
+
+Copy and Add the Helm package files to dist folder:
+
+```
+cd ../polaris-dist-dev
+mkdir helm-chart/x.y.z
+cp ../helm/*.tgz*  helm-chart/x.y.z
 svn add helm-chart/x.y.z
-svn commit -m"Stage Apache Polaris x.y.z RCx"
+```
+
+You can now update the Helm index:
+
+```
+cd helm-chart
+helm repo index .
+svn add index.yaml
+```
+
+Dist repository is now "complete" and we can push/commit:
+
+```
+svn commit -m "Stage Apache Polaris x.y.z RCx"
 ```
 
 ### Build and stage Maven artifacts
@@ -199,7 +252,7 @@ svn commit -m"Stage Apache Polaris x.y.z RCx"
 You can now build and publish the Maven artifacts on a Nexus staging 
repository:
 
 ```
-./gradlew publishToApache -Prelease -PuseGpgAgent
+./gradlew publishToApache -Prelease -PuseGpgAgent -Dorg.gradle.parallel=false
 ```
 
 Next, you have to close the staging repository:
@@ -365,12 +418,14 @@ svn mv 
https://dist.apache.org/repos/dist/dev/incubator/polaris/x.y.z https://di
 svn mv 
https://dist.apache.org/repos/dist/dev/incubator/polaris/helm-chart/x.y.z 
https://dist.apache.org/repos/dist/release/incubator/polaris/helm-chart
 ```
 
-NB: you have to update the Helm chart repository index on 
https://dist.apache.org/repos/dist/release/incubator/polaris/helm-chart/index.yaml
+Then, update the Helm Chart repository index on 
https://dist.apache.org/repos/dist/release/incubator/polaris/helm-chart/index.yaml:
+
 ```
-svn co https://dist.apache.org/repos/dist/release/incubator/polaris/helm-chart 
polaris-helm-chart
-cd polaris-helm-chart
+svn checkout 
https://dist.apache.org/repos/dist/release/incubator/polaris/helm-chart 
polaris-dist-release-helm-chart
+cd polaris-dist-release-helm-chart
 helm repo index .
-svn commit
+svn add index.yaml
+svn commit -m "Update Helm index for x.y.z release"
 ```
 
 Next, add a release tag to the git repository based on the candidate tag:

Reply via email to