You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by GitBox <gi...@apache.org> on 2018/06/13 08:36:30 UTC

[GitHub] zhengyangyong closed pull request #99: add release validation guide

zhengyangyong closed pull request #99: add release validation guide
URL: https://github.com/apache/incubator-servicecomb-website/pull/99
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):

diff --git a/_data/navigation.yml b/_data/navigation.yml
index 8dcf819..3051764 100755
--- a/_data/navigation.yml
+++ b/_data/navigation.yml
@@ -131,12 +131,14 @@ t:
         url: /developers/setup-develop-environment/
       - title: "Code Submit Guide"
         url: /developers/submit-codes/
-      - title: "Howto Use JIRA"
+      - title: "How to Use JIRA"
         url: /developers/use-jira/
       - title: "Set Up Write Access for Committer"
         url: /developers/setup-committer-rights/
       - title: "How to Release in Apache"
         url: /developers/release-guide/
+      - title: "How to verify Apache Release"
+        url: /developers/release-guide/
 
     faqs:
       - title: "FAQ"
@@ -312,6 +314,8 @@ t:
         url: /cn/developers/setup-committer-rights/
       - title: "Servicecomb发版指南"
         url: /cn/developers/release-guide/
+      - title: "ServiceComb发版验证指南"
+        url: /cn/developers/release-validation-guide/
 
     faqs:
       - title: "常见问题"
diff --git a/_developers/cn/release_validation_guide.md b/_developers/cn/release_validation_guide.md
new file mode 100644
index 0000000..9f4d80d
--- /dev/null
+++ b/_developers/cn/release_validation_guide.md
@@ -0,0 +1,183 @@
+---
+title: "ServiceComb发版验证指南"
+lang: cn
+ref: release_validation_guide
+permalink: /cn/developers/release-validation-guide/
+excerpt: "ServiceComb发版验证指南"
+last_modified_at:  2018-06-12T00:00:00+08:00
+author: Yangyong Zheng
+tags: [发版,验证]
+redirect_from:
+  - /theme-setup/
+---
+
+{% include toc %}
+
+ServiceComb项目发新版本时,会发起投票邀请大家验证新版本的代码和Repo是否正确,本文向大家介绍如何进行验证工作。
+
+## 验证Java Chassis
+### 环境准备
+1. 请确保网络通畅;
+2. 请检查依赖软件已经正确安装:
+* [JDK1.8](http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html)
+* [Maven 3.x](https://maven.apache.org/download.cgi)
+* [Docker](https://www.docker.com/get-docker)
+
+>提示:如果验证环境操作系统是Windows,需要安装[Docker Machine](https://docs.docker.com/machine/install-machine/)
+
+### 验证源代码包Hash和签名正确
+请在Vote邮件中找到**Release Candidate**的URL,例如:
+
+```text
+Release Candidate : https://dist.apache.org/repos/dist/dev/incubator/servicecomb/incubator-servicecomb-java-chassis/1.0.0-m2/rc-01/
+```
+
+在浏览器中打开,下载`src.zip`结尾的源代码压缩包,以及同名的`src.zip.asc`签名文件和`src.zip.sha512`哈希文件,保持三个文件在同一目录下。
+
+请在Vote邮件中找到**Key**的URL:
+
+```text
+Keys to verify the Release Candidate : https://dist.apache.org/repos/dist/dev/incubator/servicecomb/KEYS
+```
+
+在浏览器中打开,保存内容为KEYS文件并导入:
+
+```bash
+gpg --import KEYS
+```
+
+提示`Mohammad Asif Siddiqui (ServiceComb Code Signing Key) <as...@apache.org>`成功导入或未变化(已导入过)
+
+验证签名:
+
+```bash
+gpg --verify xxx-src.zip.asc xxx-src.zip
+```
+
+提示`Good signature from "Mohammad Asif Siddiqui (ServiceComb Code Signing Key) <as...@apache.org>"`代表签名正确。
+
+验证Hash:
+
+```bash
+sha512sum -c xxx-src.zip.sha512
+```
+
+提示`OK`代表Hash正确。
+
+### 验证源代码功能正确
+解压源代码:
+
+```bash
+unzip xxx-src.zip
+```
+
+使用`cd`命令切换到解压出来的源代码根目录下,执行:
+
+```bash
+mvn clean install -Pdocker -Pit
+```
+
+>提示:如果如果验证环境操作系统是Windows:
+>```bash
+>mvn clean install -Pdocker -Pit -Pdocker-machine
+>```
+
+等待所有的测试通过,依据配置环境不同,约耗时10~30分钟。
+
+### 验证Staging Repository内的库正确
+首先删除本地Repo中ServiceComb的全部缓存:
+
+```bash
+rm -rf /root/.m2/repository/org/apache/servicecomb/
+```
+
+>提示:如果不是root用户,请修改对应的路径
+
+请在Vote邮件中找到**Staging Repository**的URL:
+
+```text
+Staging Repository : https://repository.apache.org/content/repositories/orgapacheservicecomb-xxxx/
+```
+
+之后在maven的`settings.xml`中添加Staging Repository地址配置:
+
+```xml
+<settings>
+	<profiles>
+	   <profile>
+		  <repositories>
+			<repository>
+			  <releases />
+			  <snapshots>
+				<enabled>false</enabled>
+			  </snapshots>
+			  <id>repo.apache.staging</id>
+			  <url>{Vote邮件中的Staging Repository URL}</url>
+			</repository>
+		  </repositories>
+		  <pluginRepositories>
+			<pluginRepository>
+			  <releases />
+			  <snapshots>
+				<enabled>false</enabled>
+			  </snapshots>
+			  <id>repo.apache.staging</id>
+			  <url>{Vote邮件中的Staging Repository URL}</url>
+			</pluginRepository>
+		  </pluginRepositories>
+		  <id>staging</id>
+		</profile>
+	</profiles>
+</settings>
+```
+
+一切就绪后,使用`cd`命令切换到**源代码demo目录(注意不是根目录)下**,执行:
+
+```bash
+mvn clean install -Pdocker -Pstaging
+```
+
+>提示:如果如果验证环境操作系统是Windows:
+>```bash
+>mvn clean install -Pdocker -Pstaging -Pdocker-machine
+>```
+
+**测试过程中可以观察到Java Chassis的依赖将从我们之前指定的Apache Staging Repository下载:**
+
+```text
+Downloading: https://repository.apache.org/content/repositories/orgapacheservicecomb-xxxx/xxxx.pom
+```
+
+等待所有的测试通过,依据配置环境不同,约耗时5~15分钟。
+
+### 验证Spring Cloud集成功能正确
+从https://github.com/ServiceComb/ServiceComb-Company-WorkShop Clone最新Company示例项目代码,切换到`1.x`分支:
+
+```bash
+git clone https://github.com/ServiceComb/ServiceComb-Company-WorkShop.git
+git checkout 1.x
+```
+
+修改项目根目录中的`pom.xml`,更改其中的`<java-chassis.version>`配置为当前发版版本,例如1.0.0-m2:
+
+```xml
+<properties>
+  <java-chassis.version>1.0.0-m2</java-chassis.version>
+</properties>
+```
+
+在项目根目录下执行:
+
+```bash
+mvn clean verify -Pdocker -Pstaging
+```
+
+>提示:如果如果验证环境操作系统是Windows:
+>```bash
+>mvn clean verify -Pdocker -Pstaging -Pdocker-machine
+>```
+
+等待所有的测试通过,依据配置环境不同,约耗时5~10分钟。
+
+### 验证Samples是否正确(可选)
+在源代码的sample下有很多例子,可以任选几个测试,例如使用BMI做验证;sample验证的方法请参见对应目录下README.md中的说明即可。
\ No newline at end of file
diff --git a/_developers/release_validation_guide.md b/_developers/release_validation_guide.md
new file mode 100644
index 0000000..0116e23
--- /dev/null
+++ b/_developers/release_validation_guide.md
@@ -0,0 +1,183 @@
+---
+title: "Release verification guide for ServiceComb"
+lang: en
+ref: release_validation_guide
+permalink: developers/release-validation-guide/
+excerpt: "How to verify Apache Release"
+last_modified_at:  2018-06-12T00:00:00+08:00
+author: Yangyong Zheng
+tags: [release,verification]
+redirect_from:
+  - /theme-setup/
+---
+
+{% include toc %}
+
+As apache project, when ServiceComb release new version, need make a vote and invite users and developers to verify its availability, this guide will introduce how to do this work.
+
+## Verify Java Chassis
+### Prerequisite
+1. Make sure your network is available;
+2. Please check these components had installed:
+* [JDK1.8](http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html)
+* [Maven 3.x](https://maven.apache.org/download.cgi)
+* [Docker](https://www.docker.com/get-docker)
+
+>Hint: If the OS of environment is Windows, need install [Docker Machine](https://docs.docker.com/machine/install-machine/)
+
+### Verify the Hash and the Signature
+Please find the URL of **Release Candidate** in Vote mail, for example:
+
+```text
+Release Candidate : https://dist.apache.org/repos/dist/dev/incubator/servicecomb/incubator-servicecomb-java-chassis/1.0.0-m2/rc-01/
+```
+
+Open this URL in browser, download the source code end with `src.zip`, signature file end with `src.zip.asc` and hash file end with `src.zip.sha512`, please keep these three files in same folder.
+
+Please find URL of **Key** in Vote mail, for example:
+
+```text
+Keys to verify the Release Candidate : https://dist.apache.org/repos/dist/dev/incubator/servicecomb/KEYS
+```
+
+Open this URL in browser, copy contents into KEYS file, then import:
+
+```bash
+gpg --import KEYS
+```
+
+Then `Mohammad Asif Siddiqui (ServiceComb Code Signing Key) <as...@apache.org>` will output if imported successfully.
+
+Verify the Signature:
+
+```bash
+gpg --verify xxx-src.zip.asc xxx-src.zip
+```
+
+Then `Good signature from "Mohammad Asif Siddiqui (ServiceComb Code Signing Key) <as...@apache.org>"` will output if verified successfully.
+
+Verify the Hash:
+
+```bash
+sha512sum -c xxx-src.zip.sha512
+```
+
+Then `OK` will output if verified successfully.
+
+### Verify the source code
+Unzip the source code:
+
+```bash
+unzip xxx-src.zip
+```
+
+Run test case under source code root:
+
+```bash
+mvn clean install -Pdocker -Pit
+```
+
+>Hint: If the OS of environment is Windows:
+>```bash
+>mvn clean install -Pdocker -Pit -Pdocker-machine
+>```
+
+Wait all test case check passed, may use 10~30 minutes.
+
+### Verify the Staging Repository
+First need delete all ServiceComb cache in local maven repo:
+
+```bash
+rm -rf /root/.m2/repository/org/apache/servicecomb/
+```
+
+>Hint: If not the root, please change the path of .m2
+
+Please find URL of **Staging Repository** in Vote mail, for example:
+
+```text
+Staging Repository : https://repository.apache.org/content/repositories/orgapacheservicecomb-xxxx/
+```
+
+Then add this Staging Repository address into `settings.xml` of maven: 
+
+```xml
+<settings>
+	<profiles>
+	   <profile>
+		  <repositories>
+			<repository>
+			  <releases />
+			  <snapshots>
+				<enabled>false</enabled>
+			  </snapshots>
+			  <id>repo.apache.staging</id>
+			  <url>{Staging Repository URL in Vote mail}</url>
+			</repository>
+		  </repositories>
+		  <pluginRepositories>
+			<pluginRepository>
+			  <releases />
+			  <snapshots>
+				<enabled>false</enabled>
+			  </snapshots>
+			  <id>repo.apache.staging</id>
+			  <url>{Staging Repository URL in Vote mail}</url>
+			</pluginRepository>
+		  </pluginRepositories>
+		  <id>staging</id>
+		</profile>
+	</profiles>
+</settings>
+```
+
+After that, enter **demo folder under the source code(not root folder of source code)** and run:
+
+```bash
+mvn clean install -Pdocker -Pstaging
+```
+
+>Hint: If the OS of environment is Windows:
+>```bash
+>mvn clean install -Pdocker -Pstaging -Pdocker-machine
+>```
+
+**When test cases are running, we can see the Java Chassis dependencies will download from Apache Staging Repository that had configured:**
+
+```text
+Downloading: https://repository.apache.org/content/repositories/orgapacheservicecomb-xxxx/xxxx.pom
+```
+
+Wait all test case check passed, may use 5~15 minutes.
+
+### Verify integration with Spring Cloud
+Please clone the latest source code of Company demo project from https://github.com/ServiceComb/ServiceComb-Company-WorkShop , then checkout branch of 1.x :
+
+```bash
+git clone https://github.com/ServiceComb/ServiceComb-Company-WorkShop.git
+git checkout 1.x
+```
+
+Modify the configuration of `<java-chassis.version>` in `pom.xml` under  source code root folder to current releasing version, such as 1.0.0-m2 :
+
+```xml
+<properties>
+  <java-chassis.version>1.0.0-m2</java-chassis.version>
+</properties>
+```
+
+Run test case under source code root:
+
+```bash
+mvn clean verify -Pdocker -Pstaging
+```
+
+>Hint: If the OS of environment is Windows:
+>```bash
+>mvn clean verify -Pdocker -Pstaging -Pdocker-machine
+>```
+
+Wait all test case check passed, may use 5~10 minutes.
+
+### Verify Samples(Optional)
+In samples folder of source code, there are many java chassis sample, we can choose some of them do verification such as BMI; you can read README.md in each sample in order to known how to run.
\ No newline at end of file
diff --git a/_developers/use-jira.md b/_developers/use-jira.md
index 1e2394f..9e34a6f 100644
--- a/_developers/use-jira.md
+++ b/_developers/use-jira.md
@@ -3,7 +3,7 @@ title: "Howto Use JIRA"
 lang: en
 ref: use-jira
 permalink: /developers/use-jira/
-excerpt: "Howto use JIRA"
+excerpt: "How to use JIRA"
 last_modified_at: 2018-02-28T11:26:43-20:46
 ---
 


 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services