You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by pa...@apache.org on 2022/04/14 12:24:07 UTC

[shardingsphere] branch master updated: Update documents about releasing ShardingSphere (#16835)

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

panjuan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new b73894741b3 Update documents about releasing ShardingSphere (#16835)
b73894741b3 is described below

commit b73894741b3cb9bc3e7506173c792dab53f353b1
Author: 吴伟杰 <wu...@apache.org>
AuthorDate: Thu Apr 14 20:23:58 2022 +0800

    Update documents about releasing ShardingSphere (#16835)
---
 docs/community/content/contribute/release.cn.md | 54 ++++++++++++++++------
 docs/community/content/contribute/release.en.md | 60 +++++++++++++++++++------
 2 files changed, 87 insertions(+), 27 deletions(-)

diff --git a/docs/community/content/contribute/release.cn.md b/docs/community/content/contribute/release.cn.md
index e0044cf057e..8b96bf77255 100644
--- a/docs/community/content/contribute/release.cn.md
+++ b/docs/community/content/contribute/release.cn.md
@@ -41,7 +41,7 @@ Release Note 需提供中文/英文两种版本,确认中文描述是否明确
 
 **5. 发送讨论邮件**
 
-1. 发送邮件至 `dev@shardingsphere.apache.org`,在邮件正文中描述或链接 Release Note;
+1. 发送邮件至 [dev@shardingsphere.apache.org](mailto:dev@shardingsphere.apache.org),在邮件正文中描述或链接 Release Note;
 2. 关注邮件列表,确认社区开发者对 Release Note 没有任何疑问。
 
 ## GPG 设置
@@ -187,7 +187,23 @@ https://github.com/apache/shardingsphere/blob/${RELEASE.VERSION}-release/RELEASE
 
 更新 `examples` 模块的 pom,将版本由 `${CURRENT.VERSION}` 替换为 `${RELEASE.VERSION}`,并提交 PR 到发布分支。
 
-**4. 发布预校验**
+**4. 更新 ShardingSphere-JDBC Spring 文档中 xsd 文件链接**
+
+更新目录 `docs/document/content/user-manual/shardingsphere-jdbc/spring-namespace` 下文档内的所有 xsd 链接。
+
+将:
+```
+http://shardingsphere.apache.org/schema/shardingsphere/sharding/sharding-${PREVIOUS.RELEASE.VERSION}.xsd
+```
+
+更新为:
+```
+http://shardingsphere.apache.org/schema/shardingsphere/sharding/sharding-${RELEASE.VERSION}.xsd
+```
+
+在文档中指定 xsd 版本,而不是直接使用 `sharding.xsd`,是为了让历史版本的文档能够对应到正确版本的 xsd 文件。
+
+**5. 发布预校验**
 
 ```shell
 mvn release:prepare -Prelease -Darguments="-DskipTests" -DautoVersionSubmodules=true -DdryRun=true -Dusername=${Github用户名}
@@ -199,7 +215,7 @@ mvn release:prepare -Prelease -Darguments="-DskipTests" -DautoVersionSubmodules=
 
 -DdryRun=true:演练,即不产生版本号提交,不生成新的 tag。
 
-**5. 准备发布**
+**6. 准备发布**
 
 首先清理发布预校验本地信息。
 
@@ -222,7 +238,7 @@ git push origin ${RELEASE.VERSION}-release
 git push origin --tags
 ```
 
-**6. 部署发布**
+**7. 部署发布**
 
 ```shell
 mvn release:perform -Prelease -Darguments="-DskipTests" -DautoVersionSubmodules=true -Dusername=${Github 用户名}
@@ -356,9 +372,10 @@ diff -r apache-shardingsphere-${RELEASE.VERSION}-src-release shardingsphere-${RE
 **检查二进制包的文件内容**
 
 解压缩
-`apache-shardingsphere-${RELEASE.VERSION}-shardingsphere-jdbc-bin.tar.gz`,
-`apache-shardingsphere-${RELEASE.VERSION}-shardingsphere-proxy-bin.tar.gz`,
-`apache-shardingsphere-${RELEASE.VERSION}-shardingsphere-agent-bin.tar.gz`
+- `apache-shardingsphere-${RELEASE.VERSION}-shardingsphere-jdbc-bin.tar.gz`
+- `apache-shardingsphere-${RELEASE.VERSION}-shardingsphere-proxy-bin.tar.gz`
+- `apache-shardingsphere-${RELEASE.VERSION}-shardingsphere-agent-bin.tar.gz`
+
 进行如下检查:
 
 - 存在 `LICENSE` 和 `NOTICE` 文件;
@@ -375,9 +392,9 @@ diff -r apache-shardingsphere-${RELEASE.VERSION}-src-release shardingsphere-${RE
 **投票阶段**
 
 1. ShardingSphere 社区投票,发起投票邮件到 `dev@shardingsphere.apache.org`。PMC 需要先按照文档检查版本的正确性,然后再进行投票。
-经过至少 72 小时并统计到 3 个 `+1 PMC member` 票后,即可进入下一阶段的投票。
+经过至少 **72 小时** 并统计到 **3 个 `+1 PMC member`** 票后,即可进入下一阶段的投票。
 
-2. 宣布投票结果,发起投票结果邮件到 `dev@shardingsphere.apache.org`。
+2. 宣布投票结果,发起投票结果邮件到 [dev@shardingsphere.apache.org](mailto:dev@shardingsphere.apache.org)。
 
 **投票模板**
 
@@ -482,7 +499,7 @@ svn cp https://dist.apache.org/repos/dist/dev/shardingsphere/KEYS https://dist.a
 
 **2. 在 Apache Staging 仓库找到 ShardingSphere 并点击 `Release`**
 
-**3. 合并 Github 的 release 分支到 `master`,合并完成后删除 release 分支**
+**3. (可选)合并 Github 的 release 分支到 `master`,合并完成后删除 release 分支**
 
 ```shell
 git checkout master
@@ -525,7 +542,7 @@ docker tag e9ea51023687 apache/shardingsphere-proxy:${RELEASE.VERSION}
 ```shell
 docker login
 docker push apache/shardingsphere-proxy:latest
-docker push apache/shardingsphere-proxy:${RELEASE_VERSION}
+docker push apache/shardingsphere-proxy:${RELEASE.VERSION}
 ```
 
 5.5 确认发布成功
@@ -534,7 +551,7 @@ docker push apache/shardingsphere-proxy:${RELEASE_VERSION}
 
 **6. GitHub版本发布**
 
-在 [GitHub Releases](https://github.com/apache/shardingsphere/releases) 页面的 `${RELEASE_VERSION}` 版本上点击 `Edit`。
+在 [GitHub Releases](https://github.com/apache/shardingsphere/releases) 页面的 `${RELEASE.VERSION}` 版本上点击 `Edit`。
 
 编辑版本号及版本说明,并点击 `Publish release`。
 
@@ -548,7 +565,18 @@ https://shardingsphere.apache.org/document/current/cn/downloads/
 
 GPG 签名文件和哈希校验文件的下载连接应该使用这个前缀:`https://downloads.apache.org/shardingsphere/`。
 
-`最新版本` 中保留一个最新的版本。Incubator 阶段历史版本会自动归档到 [Archive repository](https://archive.apache.org/dist/incubator/shardingsphere/)。
+[**发布区**](https://dist.apache.org/repos/dist/release/shardingsphere/) 中仅保留一个最新的版本。
+确认 [Archive repository](https://archive.apache.org/dist/shardingsphere/) 中存在上一版本后,从 [**发布区**](https://dist.apache.org/repos/dist/release/shardingsphere/) 删除上一版本:
+
+```shell
+svn del -m "Archiving release ${PREVIOUS.RELEASE.VERSION}" https://dist.apache.org/repos/dist/release/shardingsphere/${PREVIOUS.RELEASE.VERSION}
+```
+
+历史版本会自动归档到 [Archive repository](https://archive.apache.org/dist/shardingsphere/)。
+
+孵化阶段历史版本会自动归档到 [Incubator Archive repository](https://archive.apache.org/dist/incubator/shardingsphere/)。
+
+参考:[Release Download Pages for Projects](https://infra.apache.org/release-download-pages.html)。
 
 **8. 上传 Spring namespace xsd 文件至官方网站**
 
diff --git a/docs/community/content/contribute/release.en.md b/docs/community/content/contribute/release.en.md
index ee5c6286aa7..aa180ff602d 100644
--- a/docs/community/content/contribute/release.en.md
+++ b/docs/community/content/contribute/release.en.md
@@ -42,7 +42,7 @@ Open [GitHub milestone](https://github.com/apache/shardingsphere/milestones)
 
 **5. Call for a discussion**
 
-1. Send email to` dev@shardingsphere.apache.org `, describe or link the release note in the message body
+1. Send email to [dev@shardingsphere.apache.org](mailto:dev@shardingsphere.apache.org), describe or link the release note in the message body
 2. Follow the mailing list and confirm that the community developers have no questions about the release note
 
 ## GPG Settings
@@ -189,7 +189,23 @@ https://github.com/apache/shardingsphere/blob/${RELEASE.VERSION}-release/RELEASE
 
 Update the POM of the module `examples`, changing the version from ${CURRENT.VERSION} to ${RELEASE.VERSION}, and submit a PR to release branch.
 
-**4. Pre-Release Check**
+**4. Update links of Spring xsd in documents of ShardingSphere-JDBC**
+
+Update all links of xsd in documents under `docs/document/content/user-manual/shardingsphere-jdbc/spring-namespace`.
+
+Update from:
+```
+http://shardingsphere.apache.org/schema/shardingsphere/sharding/sharding-${PREVIOUS.RELEASE.VERSION}.xsd
+```
+
+to:
+```
+http://shardingsphere.apache.org/schema/shardingsphere/sharding/sharding-${RELEASE.VERSION}.xsd
+```
+
+Specifying version of xsd instead of using `sharding.xsd`, is to make legacy documents can be mapped to corresponding version of xsd.
+
+**5. Pre-Release Check**
 
 ```shell
 mvn release:prepare -Prelease -Darguments="-DskipTests" -DautoVersionSubmodules=true -DdryRun=true -Dusername=${Github username}
@@ -201,7 +217,7 @@ mvn release:prepare -Prelease -Darguments="-DskipTests" -DautoVersionSubmodules=
 
 -DdryRun=true: rehearsal, which means not to generate or submit new version number and new tag.
 
-**5. Prepare for the Release**
+**6. Prepare for the Release**
 
 First, clean local pre-release check information.
 
@@ -225,7 +241,7 @@ After making sure there is no mistake in local files, submit them to GitHub.
 git push origin ${RELEASE.VERSION}-release
 git push origin --tags
 ```
-**6. Deploy the Release**
+**7. Deploy the Release**
 
 ```shell
 mvn release:perform -Prelease -Darguments="-DskipTests" -DautoVersionSubmodules=true -Dusername=${Github username}
@@ -360,10 +376,11 @@ diff -r apache-shardingsphere-${RELEASE.VERSION}-src-release shardingsphere-${RE
 **Check binary packages**
 
 Decompress 
-`apache-shardingsphere-${RELEASE.VERSION}-shardingsphere-jdbc-bin.tar.gz`, 
-`apache-shardingsphere-${RELEASE.VERSION}-shardingsphere-proxy-bin.tar.gz`,
-`apache-shardingsphere-${RELEASE.VERSION}-shardingsphere-agent-bin.tar.gz`
-to check the following items:
+- `apache-shardingsphere-${RELEASE.VERSION}-shardingsphere-jdbc-bin.tar.gz`
+- `apache-shardingsphere-${RELEASE.VERSION}-shardingsphere-proxy-bin.tar.gz`
+- `apache-shardingsphere-${RELEASE.VERSION}-shardingsphere-agent-bin.tar.gz`
+
+And check the following items:
 
 *   `LICENSE` and `NOTICE` files exist
 *   Correct year in `NOTICE` file
@@ -380,9 +397,9 @@ to check the following items:
 
 1. ShardingSphere community vote: send the vote e-mail to `dev@shardingsphere.apache.org`. 
 PMC needs to check the rightness of the version according to the document before they vote. 
-After at least 72 hours and with at least 3 `+1 PMC member` votes, it can come to the next stage of the vote.
+After at least **72 hours** and with at least **3 `+1 PMC member`** votes, it can come to the next stage of the vote.
 
-2. Announce the vote result: send the result vote e-mail to `dev@shardingsphere.apache.org`.
+2. Announce the vote result: send the result vote e-mail to [dev@shardingsphere.apache.org](mailto:dev@shardingsphere.apache.org).
 
 **Vote Templates**
 
@@ -489,7 +506,7 @@ svn cp https://dist.apache.org/repos/dist/dev/shardingsphere/KEYS https://dist.a
 
 **2. Find ShardingSphere in staging repository and click `Release`**
 
-**3. Merge release branch to `master` and delete release branch on Github**
+**3. (Optional) Merge release branch to `master` and delete release branch on Github**
 
 ```shell
 git checkout master
@@ -532,7 +549,7 @@ docker tag e9ea51023687 apache/shardingsphere-proxy:${RELEASE.VERSION}
 ```shell
 docker login
 docker push apache/shardingsphere-proxy:latest
-docker push apache/shardingsphere-proxy:${RELEASE_VERSION}
+docker push apache/shardingsphere-proxy:${RELEASE.VERSION}
 ```
 
 5.5 Confirm the successful release
@@ -541,7 +558,7 @@ Login [Docker Hub](https://hub.docker.com/r/apache/sharding-proxy/) to check whe
 
 **6. Publish release in GitHub**
 
-Click `Edit` in [GitHub Releases](https://github.com/apache/shardingsphere/releases)'s `${RELEASE_VERSION}` version
+Click `Edit` in [GitHub Releases](https://github.com/apache/shardingsphere/releases)'s `${RELEASE.VERSION}` version
 
 Edit version number and release notes, click `Publish release`
 
@@ -553,7 +570,22 @@ https://shardingsphere.apache.org/document/current/cn/downloads/
 
 GPG signatures and hashes (SHA* etc) should use URL start with `https://downloads.apache.org/shardingsphere/`
 
-Keep one latest versions in `Latest releases`. Incubating stage versions will be archived automatically in [Archive repository](https://archive.apache.org/dist/incubator/shardingsphere/)
+Keep the latest version in [**Release Area**](https://dist.apache.org/repos/dist/release/shardingsphere/) only.
+
+
+Incubating stage versions will be archived automatically in [Archive repository](https://archive.apache.org/dist/incubator/shardingsphere/)
+
+Remove the previous release from the [**Release Area**](https://dist.apache.org/repos/dist/release/shardingsphere/) after confirming the previous release exists in [Archive repository](https://archive.apache.org/dist/shardingsphere/), 
+
+```shell
+svn del -m "Archiving release ${PREVIOUS.RELEASE.VERSION}" https://dist.apache.org/repos/dist/release/shardingsphere/${PREVIOUS.RELEASE.VERSION}
+```
+
+Previous releases will be archived automatically in [Archive repository](https://archive.apache.org/dist/shardingsphere/)。
+
+Incubating stage versions will be archived automatically in [Incubator Archive repository](https://archive.apache.org/dist/incubator/shardingsphere/)
+
+Refer to [Release Download Pages for Projects](https://infra.apache.org/release-download-pages.html).
 
 **8. Upload xsd files of Spring namespace to official website**