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

xuanwo pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-opendal.git


The following commit(s) were added to refs/heads/main by this push:
     new 29db37227 docs: auto relaese maven artifacts (#2729)
29db37227 is described below

commit 29db37227fbea017ebc571c25027fd08a3bddeaa
Author: tison <[email protected]>
AuthorDate: Wed Aug 23 23:24:47 2023 +0800

    docs: auto relaese maven artifacts (#2729)
    
    * ci: enable auto release maven artifacts
    
    Signed-off-by: tison <[email protected]>
    
    * docs: tell how we do auto relase
    
    Signed-off-by: tison <[email protected]>
    
    * keep disable workflow until we are granted with the secret
    
    Signed-off-by: tison <[email protected]>
    
    * tag with rc suffix and then later promote
    
    Signed-off-by: tison <[email protected]>
    
    * fix typo
    
    Signed-off-by: tison <[email protected]>
    
    * add verify sentences
    
    Signed-off-by: tison <[email protected]>
    
    ---------
    
    Signed-off-by: tison <[email protected]>
---
 website/docs/contributing/release.md | 61 ++++++++++++++++++++++++++++++------
 website/docs/contributing/verify.md  | 12 +++++++
 2 files changed, 63 insertions(+), 10 deletions(-)

diff --git a/website/docs/contributing/release.md 
b/website/docs/contributing/release.md
index 6ca704be8..c13901423 100644
--- a/website/docs/contributing/release.md
+++ b/website/docs/contributing/release.md
@@ -8,7 +8,7 @@ how the release manager releases a new version in accordance 
with the Apache req
 
 ## Introduction
 
-`Source Release` is the key point which Apache values, also, is necessary for 
a release. And OpenDAL will only have source release.
+`Source Release` is the key point which Apache values, and is also necessary 
for an ASF release.
 
 Please remember that publishing software has legal consequences.
 
@@ -22,7 +22,7 @@ This guide complements the foundation-wide policies and 
guides:
 
 :::caution
 
-This section is the requirements for the release manager who is the first time 
to be a release manager
+This section is the requirements for the release manager who is the first time 
to be a release manager.
 
 :::
 
@@ -47,20 +47,26 @@ Take [Bump to version 
0.36.0](https://github.com/apache/incubator-opendal/pull/2
 
 After bump version PR gets merged, we can create a GitHub release:
 
-- Create a tag at `main` branch on the `Bump Version` / `Patch up version` 
commit: `git tag -s "v0.36.0"`, please correctly check out the corresponding 
commit instead of directly tagging on the main branch.
+- Create a tag at `main` branch on the `Bump Version` / `Patch up version` 
commit: `git tag -s "v0.36.0-rc1"`, please correctly check out the 
corresponding commit instead of directly tagging on the main branch.
 - Push tags to GitHub: `git push --tags`.
 - Create Release on the newly created tag
   - If there are breaking changes, please add the content from `upgrade.md` 
before.
 
+:::note
+
+Pushing a Git tag to GitHub repo will trigger a GitHub Actions workflow that 
creates a staging Maven release on https://repository.apache.org which can be 
verified on voting.
+
+:::
+
 ## ASF Release
 
 If any step in the ASF Release process fails and requires code changes,
 we will abandon that version and prepare for the next one.
 Our release page will only display ASF releases instead of GitHub Releases.
 
-> - `opendal_version`: the version for opendal, like `0.36.0`.
-> - `release_version`: the version for voting, like `0.36.0-rc1`.
-> - `rc_version`: the minor version for voting, like `rc1`.
+- `opendal_version`: the version for opendal, like `0.36.0`.
+- `release_version`: the version for voting, like `0.36.0-rc1`.
+- `rc_version`: the minor version for voting, like `rc1`.
 
 ### Create an ASF Release
 
@@ -130,8 +136,11 @@ please cancel the release for the current 
`release_version`, _increase th RC cou
 
 As an incubating project, OpenDAL requires votes from both the OpenDAL 
Community and Incubator Community.
 
-> - `opendal_version`: the version for opendal, like `0.36.0`.
-> - `release_version`: the version for voting, like `0.36.0-rc1`.
+- `opendal_version`: the version for opendal, like `0.36.0`.
+- `release_version`: the version for voting, like `0.36.0-rc1`.
+- `maven_artifact_number`: the number for Maven staging artifacts, like `1010`.
+
+Specifically, the `maven_artifact_number` can be found by searching "opendal" 
on https://repository.apache.org/#stagingRepositories.
 
 ### OpenDAL Community Vote
 
@@ -164,6 +173,9 @@ Git branch for the release:
 
 https://github.com/apache/incubator-opendal/tree/release-${release_version}
 
+Maven staging repo:
+https://repository.apache.org/content/repositories/orgapacheopendal-${maven_artifact_number}/
+
 Please download, verify, and test.
 
 The VOTE will pass after got 3 binding approve.
@@ -270,6 +282,9 @@ Git branch for the release:
 
 https://github.com/apache/incubator-opendal/tree/release-${release_version}
 
+Maven staging repo:
+https://repository.apache.org/content/repositories/orgapacheopendal-${maven_artifact_number}/
+
 Please download, verify, and test.
 
 The VOTE will pass after got 3 binding approve.
@@ -341,8 +356,8 @@ Example: 
<https://lists.apache.org/thread/h3x9pq1djpg76q3ojpqmdr3d0o03fld1>
 
 ### Publish artifacts to SVN RELEASE branch
 
-> - `opendal_version`: the version for opendal, like `0.36.0`.
-> - `release_version`: the version for voting, like `0.36.0-rc1`.
+- `opendal_version`: the version for opendal, like `0.36.0`.
+- `release_version`: the version for voting, like `0.36.0-rc1`.
 
 ```shell
 svn mv 
https://dist.apache.org/repos/dist/dev/incubator/opendal/${release_version} 
https://dist.apache.org/repos/dist/release/incubator/opendal/${opendal_version} 
-m "Release ${opendal_version}"
@@ -353,6 +368,32 @@ Change the 
[download](https://github.com/apache/incubator-opendal/blob/main/webs
 Take [Add 0.39.0 release link to 
download.md](https://github.com/apache/incubator-opendal/pull/2882) as an 
example.
 
 
+### Push the release Git tag
+
+- `opendal_version`: the version for opendal, like `0.36.0`.
+- `release_version`: the version for the passed candidate, like `0.36.0-rc1`.
+
+Check out the passed release candidate, tag an alias and push.
+
+```shell
+git checkout ${release_version}
+git tag -s ${opendal_version}
+git push origin ${opendal_version}
+```
+
+### Release Maven artifacts
+
+- `maven_artifact_number`: the number for Maven staging artifacts, like `1010`.
+
+1. Open https://repository.apache.org/#stagingRepositories.
+2. Find the artifact `orgapacheopendal-${maven_artifact_number}`, click 
"Close" and then "Release".
+
+:::caution
+
+If the vote failed, click "Drop" to drop the staging Maven artifacts.
+
+:::
+
 ### Send the announcement
 
 Send the release announcement to `[email protected]` and CC 
`[email protected]`.
diff --git a/website/docs/contributing/verify.md 
b/website/docs/contributing/verify.md
index 6955e2452..611666f77 100644
--- a/website/docs/contributing/verify.md
+++ b/website/docs/contributing/verify.md
@@ -127,3 +127,15 @@ Unzip 
`apache-opendal-${release_version}-${rc_version}-src.tar.gz` and check the
 - LICENSE and NOTICE files are correct for the repository.
 - All files have ASF license headers if necessary.
 - Building is OK.
+
+## Check the Maven artifacts of opendal-java
+
+Download the artifacts from 
`https://repository.apache.org/content/repositories/orgapacheopendal-${maven_artifact_number}/`.
+
+You can check the follows:
+
+- Checksum of JARs match the bundled checksum file.
+- Signature of JARs match the bundled signature file.
+- JARs is reproducible locally. This means you can build the JARs on your 
machine and verify the checksum is the same with the bundled one.
+
+The reproduciblility requires the same JDK distribution and the same Maven 
distribution. You should use [Eclipse Temurin JDK 
8](https://adoptium.net/temurin/releases/?version=8) and the bundled Maven 
Wrapper to make the same artifacts.

Reply via email to