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

github-bot pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/amoro-site.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 4bc9f98  deploy: 503930a6b4631b5b5e96fc2a38fb26f3dea90478
4bc9f98 is described below

commit 4bc9f98e3f3dd5ade8fc27aac7291c697ff29fdf
Author: zhoujinsong <[email protected]>
AuthorDate: Tue Jun 17 06:06:45 2025 +0000

    deploy: 503930a6b4631b5b5e96fc2a38fb26f3dea90478
---
 output/benchmark-guide/index.html                  |   8 +
 output/benchmark-report/index.html                 |   8 +
 output/community/index.xml                         |  14 +
 output/download/index.html                         |   8 +
 output/how-to-contribute/index.html                |   8 +
 output/index.html                                  |  10 +-
 output/index.xml                                   |  14 +
 output/join-community/index.html                   |   8 +
 output/landingpagesearch.json                      |   2 +-
 output/quick-start/index.html                      |   8 +
 output/release-guide/index.html                    | 643 +++++++++++++++++++++
 output/roadmap/index.html                          |   8 +
 output/sitemap.xml                                 |   4 +
 .../index.html                                     | 213 +++----
 14 files changed, 829 insertions(+), 127 deletions(-)

diff --git a/output/benchmark-guide/index.html 
b/output/benchmark-guide/index.html
index 3c3f2f5..4725737 100644
--- a/output/benchmark-guide/index.html
+++ b/output/benchmark-guide/index.html
@@ -221,6 +221,14 @@
                             <a   href="/how-to-contribute/">How to 
contribute</a>
                             </li class="topnav-page-selection">
                         
+                            <li class="topnav-page-selection">
+                            <a   href="/release-guide/">Release guide</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/validate-release/">Validate release</a>
+                            </li class="topnav-page-selection">
+                        
                         </ul>
                         </div>
                     </div>
diff --git a/output/benchmark-report/index.html 
b/output/benchmark-report/index.html
index 7b82820..e5cb145 100644
--- a/output/benchmark-report/index.html
+++ b/output/benchmark-report/index.html
@@ -221,6 +221,14 @@
                             <a   href="/how-to-contribute/">How to 
contribute</a>
                             </li class="topnav-page-selection">
                         
+                            <li class="topnav-page-selection">
+                            <a   href="/release-guide/">Release guide</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/validate-release/">Validate release</a>
+                            </li class="topnav-page-selection">
+                        
                         </ul>
                         </div>
                     </div>
diff --git a/output/community/index.xml b/output/community/index.xml
index e23da0b..efea1df 100644
--- a/output/community/index.xml
+++ b/output/community/index.xml
@@ -21,5 +21,19 @@
       <guid>https://amoro.apache.org/join-community/</guid>
       <description>&lt;h1 
id=&#34;welcome-to-apache-amoro-incubating&#34;&gt;Welcome to Apache Amoro 
(incubating)&lt;/h1&gt;&#xA;&lt;p&gt;Amoro community is a free, open-source 
community project.&#xA;Anyone interested in the Amoro project can join the 
community and contribute to its development by becoming a part of 
it.&lt;/p&gt;&#xA;&lt;p&gt;This document describes some guidelines for joining 
the Amoro community.&lt;/p&gt;&#xA;&lt;h2 id=&#34;mailing-lists&#34;&gt;Mailing 
Lists&lt;/h2&gt [...]
     </item>
+    <item>
+      <title>Release Guide</title>
+      <link>https://amoro.apache.org/release-guide/</link>
+      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+      <guid>https://amoro.apache.org/release-guide/</guid>
+      <description>&lt;h1 id=&#34;how-to-release-a-new-version&#34;&gt;How to 
release a new version&lt;/h1&gt;&#xA;&lt;h2 
id=&#34;preparation&#34;&gt;Preparation&lt;/h2&gt;&#xA;&lt;h3 
id=&#34;apache-release-documentation&#34;&gt;Apache release 
documentation&lt;/h3&gt;&#xA;&lt;p&gt;Please refer to the following link to 
understand the ASF release 
process:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a 
href=&#34;http://www.apache.org/dev/release-publishing&#34;&gt;Apache Release 
Guide&lt;/a&g [...]
+    </item>
+    <item>
+      <title>Release Guide</title>
+      <link>https://amoro.apache.org/validate-release/</link>
+      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+      <guid>https://amoro.apache.org/validate-release/</guid>
+      <description>&lt;h1 id=&#34;how-to-validate-a-new-release&#34;&gt;How to 
validate a new release&lt;/h1&gt;&#xA;&lt;h2 
id=&#34;download-candidate&#34;&gt;Download candidate&lt;/h2&gt;&#xA;&lt;div 
class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; 
style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code
 class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span 
style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span s [...]
+    </item>
   </channel>
 </rss>
diff --git a/output/download/index.html b/output/download/index.html
index 6d4730d..0de73ea 100644
--- a/output/download/index.html
+++ b/output/download/index.html
@@ -221,6 +221,14 @@
                             <a   href="/how-to-contribute/">How to 
contribute</a>
                             </li class="topnav-page-selection">
                         
+                            <li class="topnav-page-selection">
+                            <a   href="/release-guide/">Release guide</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/validate-release/">Validate release</a>
+                            </li class="topnav-page-selection">
+                        
                         </ul>
                         </div>
                     </div>
diff --git a/output/how-to-contribute/index.html 
b/output/how-to-contribute/index.html
index 6bf9b65..ccdebeb 100644
--- a/output/how-to-contribute/index.html
+++ b/output/how-to-contribute/index.html
@@ -221,6 +221,14 @@
                             <a   href="/how-to-contribute/">How to 
contribute</a>
                             </li class="topnav-page-selection">
                         
+                            <li class="topnav-page-selection">
+                            <a   href="/release-guide/">Release guide</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/validate-release/">Validate release</a>
+                            </li class="topnav-page-selection">
+                        
                         </ul>
                         </div>
                     </div>
diff --git a/output/index.html b/output/index.html
index eaeb26a..853d468 100644
--- a/output/index.html
+++ b/output/index.html
@@ -30,7 +30,7 @@
 <!DOCTYPE html>
 <html>
 <head>
-       <meta name="generator" content="Hugo 0.147.2">
+       <meta name="generator" content="Hugo 0.147.8">
 
     <meta charset="utf-8">
     <meta http-equiv="X-UA-Compatible" content="IE=edge">
@@ -208,6 +208,14 @@
                             <a   href="/how-to-contribute/">How to 
contribute</a>
                             </li class="topnav-page-selection">
                         
+                            <li class="topnav-page-selection">
+                            <a   href="/release-guide/">Release guide</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/validate-release/">Validate release</a>
+                            </li class="topnav-page-selection">
+                        
                         </ul>
                         </div>
                     </div>
diff --git a/output/index.xml b/output/index.xml
index 7615ac1..7ad0d15 100644
--- a/output/index.xml
+++ b/output/index.xml
@@ -49,6 +49,20 @@
       <guid>https://amoro.apache.org/quick-start/</guid>
       <description>&lt;h1 
id=&#34;quickstart&#34;&gt;Quickstart&lt;/h1&gt;&#xA;&lt;p&gt;This guide 
outlines the basic process of using Amoro, allowing you to quickly experience 
its core features. You can choose to use either the &lt;code&gt;Iceberg 
Format&lt;/code&gt; or the &lt;code&gt;Mixed-Iceberg Format&lt;/code&gt; to 
complete the entire process.&lt;/p&gt;&#xA;&lt;p&gt;If you are more interested 
in the &lt;code&gt;Mixed-Hive Format&lt;/code&gt; or the &lt;code&gt;Paimon 
Format&lt;/c [...]
     </item>
+    <item>
+      <title>Release Guide</title>
+      <link>https://amoro.apache.org/release-guide/</link>
+      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+      <guid>https://amoro.apache.org/release-guide/</guid>
+      <description>&lt;h1 id=&#34;how-to-release-a-new-version&#34;&gt;How to 
release a new version&lt;/h1&gt;&#xA;&lt;h2 
id=&#34;preparation&#34;&gt;Preparation&lt;/h2&gt;&#xA;&lt;h3 
id=&#34;apache-release-documentation&#34;&gt;Apache release 
documentation&lt;/h3&gt;&#xA;&lt;p&gt;Please refer to the following link to 
understand the ASF release 
process:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a 
href=&#34;http://www.apache.org/dev/release-publishing&#34;&gt;Apache Release 
Guide&lt;/a&g [...]
+    </item>
+    <item>
+      <title>Release Guide</title>
+      <link>https://amoro.apache.org/validate-release/</link>
+      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+      <guid>https://amoro.apache.org/validate-release/</guid>
+      <description>&lt;h1 id=&#34;how-to-validate-a-new-release&#34;&gt;How to 
validate a new release&lt;/h1&gt;&#xA;&lt;h2 
id=&#34;download-candidate&#34;&gt;Download candidate&lt;/h2&gt;&#xA;&lt;div 
class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; 
style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code
 class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span 
style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span s [...]
+    </item>
     <item>
       <title>Roadmap</title>
       <link>https://amoro.apache.org/roadmap/</link>
diff --git a/output/join-community/index.html b/output/join-community/index.html
index 95ef751..bae950c 100644
--- a/output/join-community/index.html
+++ b/output/join-community/index.html
@@ -221,6 +221,14 @@
                             <a   href="/how-to-contribute/">How to 
contribute</a>
                             </li class="topnav-page-selection">
                         
+                            <li class="topnav-page-selection">
+                            <a   href="/release-guide/">Release guide</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/validate-release/">Validate release</a>
+                            </li class="topnav-page-selection">
+                        
                         </ul>
                         </div>
                     </div>
diff --git a/output/landingpagesearch.json b/output/landingpagesearch.json
index 7b71367..917fcad 100644
--- a/output/landingpagesearch.json
+++ b/output/landingpagesearch.json
@@ -1 +1 @@
-[{"categories":null,"content":"Benchmark Report Test purpose This test aims at 
comparing the OLAP benchmark performance of various data lake formats in the 
scenario of continuous streaming ingestion in the CDC database.\nMeanwhile, 
particular attention was paid during the testing process to the impact of 
enabling self-optimizing on the analytical performance of the table.\nTest 
envrionment Hardware configuration Number OS Cpu core Memory Disk type Deployed 
components 1 CentOS 7 40 256 SA [...]
\ No newline at end of file
+[{"categories":null,"content":"Benchmark Report Test purpose This test aims at 
comparing the OLAP benchmark performance of various data lake formats in the 
scenario of continuous streaming ingestion in the CDC database.\nMeanwhile, 
particular attention was paid during the testing process to the impact of 
enabling self-optimizing on the analytical performance of the table.\nTest 
envrionment Hardware configuration Number OS Cpu core Memory Disk type Deployed 
components 1 CentOS 7 40 256 SA [...]
\ No newline at end of file
diff --git a/output/quick-start/index.html b/output/quick-start/index.html
index 1fc9334..8d72be4 100644
--- a/output/quick-start/index.html
+++ b/output/quick-start/index.html
@@ -221,6 +221,14 @@
                             <a   href="/how-to-contribute/">How to 
contribute</a>
                             </li class="topnav-page-selection">
                         
+                            <li class="topnav-page-selection">
+                            <a   href="/release-guide/">Release guide</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/validate-release/">Validate release</a>
+                            </li class="topnav-page-selection">
+                        
                         </ul>
                         </div>
                     </div>
diff --git a/output/release-guide/index.html b/output/release-guide/index.html
new file mode 100644
index 0000000..3c8a198
--- /dev/null
+++ b/output/release-guide/index.html
@@ -0,0 +1,643 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<!DOCTYPE html>
+<html>
+<head>
+
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    <meta name="description" content="">
+    <meta name="author" content="">
+    <title>Release Guide</title>
+
+    
+    
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<link href="/css/bootstrap.css" rel="stylesheet">
+
+
+<link href="/css/markdown.css" rel="stylesheet">
+<link href="/css/katex.min.css" rel="stylesheet">
+
+
+
+
+
+<link href="/css/amoro-theme.css" rel="stylesheet">
+
+
+<link href="/font-awesome-4.7.0/css/font-awesome.min.css" rel="stylesheet" 
type="text/css">
+<link 
href="//fonts.googleapis.com/css?family=Lato:300,400,700,300italic,400italic,700italic"
 rel="stylesheet" type="text/css">
+
+
+<link href="/css/termynal.css" rel="stylesheet">
+
+<link href="/css/home-page.css" rel="stylesheet">
+
+
+    
+    
+    
+
+</head>
+<body>
+
+<head>
+    <script>
+        
+        function addAnchor(element) {
+            element.insertAdjacentHTML('beforeend', `<a href="#${element.id}" 
class="anchortag" ariaLabel="Anchor"> πŸ”— </a>` )
+        }
+        document.addEventListener('DOMContentLoaded', function () {
+            var headers = document.querySelectorAll('h1[id], h2[id], h3[id], 
h4[id]')
+            if (headers) {
+                headers.forEach(addAnchor)
+            }
+        });
+    </script>
+</head>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    <nav class="navbar navbar-default" role="navigation">
+        <topsection>
+            <div class="navbar-fixed-top">
+                <div>
+                <a class="page-scroll navbar-brand" 
href="https://amoro.apache.org/";><img class="top-navbar-logo" 
src="https://amoro.apache.org//img/amoro-logo-icon.png"/></a>
+                </div>
+            </div>
+            <div class="navbar-menu-fixed-top navbar-pages-group">
+                
+                
+                
+                
+                
+                    <div class="topnav-page-selection">
+                        <a   href="/quick-start/">Quickstart</a>
+                    </div class="topnav-page-selection">
+                
+                
+                
+                
+                    
+                    <div class="versions-dropdown">
+                    <div class="topnav-page-selection">
+                        <a   href="">Docs</a> <i class="fa fa-caret-down"></i>
+                    </div class="topnav-page-selection">
+                        <div class="versions-dropdown-content">
+                        <ul>
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/docs/latest/">latest</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/docs/0.8.0/">0.8.0-incubating</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/docs/0.7.1/">0.7.1-incubating</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/docs/0.7.0/">0.7.0-incubating</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/docs/0.6.1/">0.6.1</a>
+                            </li class="topnav-page-selection">
+                        
+                        </ul>
+                        </div>
+                    </div>
+                
+                
+                
+                
+                    
+                    <div class="versions-dropdown">
+                    <div class="topnav-page-selection">
+                        <a   href="">Benchmark</a> <i class="fa 
fa-caret-down"></i>
+                    </div class="topnav-page-selection">
+                        <div class="versions-dropdown-content">
+                        <ul>
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/benchmark-report/">Benchmark Report</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/benchmark-guide/">Benchmark Guide</a>
+                            </li class="topnav-page-selection">
+                        
+                        </ul>
+                        </div>
+                    </div>
+                
+                
+                
+                
+                    <div class="topnav-page-selection">
+                        <a   href="/download/">Download</a>
+                    </div class="topnav-page-selection">
+                
+                
+                
+                
+                    <div class="topnav-page-selection">
+                        <a   href="/roadmap/">Roadmap</a>
+                    </div class="topnav-page-selection">
+                
+                
+                
+                
+                    
+                    <div class="versions-dropdown">
+                    <div class="topnav-page-selection">
+                        <a   href="">Community</a> <i class="fa 
fa-caret-down"></i>
+                    </div class="topnav-page-selection">
+                        <div class="versions-dropdown-content">
+                        <ul>
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/join-community/">Join Community</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/how-to-contribute/">How to 
contribute</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/release-guide/">Release guide</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/validate-release/">Validate release</a>
+                            </li class="topnav-page-selection">
+                        
+                        </ul>
+                        </div>
+                    </div>
+                
+                
+                
+                
+                    
+                    <div class="versions-dropdown">
+                    <div class="topnav-page-selection">
+                        <a   href="">ASF</a> <i class="fa fa-caret-down"></i>
+                    </div class="topnav-page-selection">
+                        <div class="versions-dropdown-content">
+                        <ul>
+                        
+                            <li class="topnav-page-selection">
+                            <a  target="_blank" 
href="https://www.apache.org/";>Foundation</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a  target="_blank" 
href="https://www.apache.org/licenses/";>License</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a  target="_blank" 
href="https://www.apache.org/foundation/sponsorship.html";>Donate</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a  target="_blank" 
href="https://www.apache.org/foundation/thanks.html";>Sponsors</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a  target="_blank" 
href="https://www.apache.org/security/";>Security</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a  target="_blank" 
href="https://privacy.apache.org/policies/privacy-policy-public.html";>Privacy</a>
+                            </li class="topnav-page-selection">
+                        
+                        </ul>
+                        </div>
+                    </div>
+                
+                
+                <div class="topnav-page-selection">
+                    <a href="https://github.com/apache/incubator-amoro"; 
target="_blank">
+                        <img 
src="https://amoro.apache.org//img/GitHub-Mark.png"; target="_blank" 
class="top-navbar-logo"/>
+                    </a>
+                </div>
+            </div>
+            </topsection>
+    </nav>
+
+<body dir=" ltr">
+    <section>
+        <div class="grid-container toc-only">
+            
+            <div id="content" class="markdown-body">
+                <div class="margin-for-toc"><h1 
id="how-to-release-a-new-version">How to release a new version</h1>
+<h2 id="preparation">Preparation</h2>
+<h3 id="apache-release-documentation">Apache release documentation</h3>
+<p>Please refer to the following link to understand the ASF release 
process:</p>
+<ul>
+<li><a href="http://www.apache.org/dev/release-publishing";>Apache Release 
Guide</a></li>
+<li><a href="http://www.apache.org/dev/release.html";>Apache Release 
Policy</a></li>
+<li><a 
href="http://www.apache.org/dev/publishing-maven-artifacts.html";>Publishing 
Maven Artifacts</a></li>
+</ul>
+<h3 id="environmental-requirements">Environmental requirements</h3>
+<ul>
+<li>JDK 11</li>
+<li>Apache Maven 3.8+</li>
+<li>GnuPG 2.1+</li>
+<li>Git</li>
+<li>SVN</li>
+</ul>
+<h3 id="gpg-signature">GPG signature</h3>
+<p>Follow the Apache release guidelines, you need the GPG signature to sign 
the release version, users can also use this to determine if the downloaded 
version has been tampered with.</p>
+<p>Create a pgp key for version signing, use <code>&lt;your Apache 
ID&gt;@apache.org</code> as the USER-ID for the key.</p>
+<p>For more details, refer to <a 
href="https://infra.apache.org/release-signing";>Apache Releases Signing 
documentation</a>,<a href="http://www.apache.org/dev/openpgp.html";>Cryptography 
with OpenPGP</a>.</p>
+<p>Brief process for generating a key:</p>
+<ul>
+<li>Generate a new GPG key using <code>gpg --gen-key</code>, set the key 
length to 4096 and set it to never expire</li>
+<li>Upload the key to the public key server using <code>gpg --keyserver 
keys.openpgp.org --send-key &lt;your key id&gt;</code></li>
+<li>Export the public key to a text file using <code>gpg --armor --export 
&lt;your key id&gt; &gt;&gt; gpgapachekey.txt</code></li>
+<li>Obtain the keys of other committers for signing (optional)</li>
+<li>Add the generated key to the KEYS file (uploaded to the svn repository by 
the release manager)</li>
+</ul>
+<p>You can follow the steps below to create the GPG key:</p>
+<div class="info">
+    You should replace <code>amoro</code> with your <code>Apache ID</code> in 
following guides.
+</div>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span style="display:flex;"><span>$ 
gpg --full-gen-key
+</span></span><span style="display:flex;"><span>gpg <span 
style="color:#f92672">(</span>GnuPG<span style="color:#f92672">)</span> 2.2.27; 
Copyright <span style="color:#f92672">(</span>C<span 
style="color:#f92672">)</span> <span style="color:#ae81ff">2021</span> Free 
Software Foundation, Inc.
+</span></span><span style="display:flex;"><span>This is free software: you are 
free to change and redistribute it.
+</span></span><span style="display:flex;"><span>There is NO WARRANTY, to the 
extent permitted by law.
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span>Please <span 
style="color:#66d9ef">select</span> what kind of key you want:
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">(</span>1<span style="color:#f92672">)</span> RSA and RSA 
<span style="color:#f92672">(</span>default<span style="color:#f92672">)</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">(</span>2<span style="color:#f92672">)</span> DSA and 
Elgamal
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">(</span>3<span style="color:#f92672">)</span> DSA <span 
style="color:#f92672">(</span>sign only<span style="color:#f92672">)</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">(</span>4<span style="color:#f92672">)</span> RSA <span 
style="color:#f92672">(</span>sign only<span style="color:#f92672">)</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">(</span>14<span style="color:#f92672">)</span> Existing 
key from card
+</span></span><span style="display:flex;"><span>Your selection? <span 
style="color:#ae81ff">1</span> <span style="color:#75715e"># Please enter 
1</span>
+</span></span><span style="display:flex;"><span>RSA keys may be between <span 
style="color:#ae81ff">1024</span> and <span style="color:#ae81ff">4096</span> 
bits long.
+</span></span><span style="display:flex;"><span>What keysize <span 
style="color:#66d9ef">do</span> you want? <span 
style="color:#f92672">(</span>3072<span style="color:#f92672">)</span> <span 
style="color:#ae81ff">4096</span> <span style="color:#75715e"># Please enter 
4096 here</span>
+</span></span><span style="display:flex;"><span>Requested keysize is <span 
style="color:#ae81ff">4096</span> bits
+</span></span><span style="display:flex;"><span>Please specify how long the 
key should be valid.
+</span></span><span style="display:flex;"><span>0 <span 
style="color:#f92672">=</span> key does not expire
+</span></span><span style="display:flex;"><span>&lt;n&gt; <span 
style="color:#f92672">=</span> key expires in n days
+</span></span><span style="display:flex;"><span>&lt;n&gt;w <span 
style="color:#f92672">=</span> key expires in n weeks
+</span></span><span style="display:flex;"><span>&lt;n&gt;m <span 
style="color:#f92672">=</span> key expires in n months
+</span></span><span style="display:flex;"><span>&lt;n&gt;y <span 
style="color:#f92672">=</span> key expires in n years
+</span></span><span style="display:flex;"><span>Key is valid <span 
style="color:#66d9ef">for</span>? <span style="color:#f92672">(</span>0<span 
style="color:#f92672">)</span> <span style="color:#ae81ff">0</span> <span 
style="color:#75715e"># Please enter 0</span>
+</span></span><span style="display:flex;"><span>Key does not expire at all
+</span></span><span style="display:flex;"><span>Is this correct? <span 
style="color:#f92672">(</span>y/N<span style="color:#f92672">)</span> y <span 
style="color:#75715e"># Please enter y here</span>
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span>GnuPG needs to construct a 
user ID to identify your key.
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span>Real name: amoro <span 
style="color:#75715e"># Please enter &#39;gpg real name&#39;</span>
+</span></span><span style="display:flex;"><span>Email address: 
[email protected] <span style="color:#75715e"># Please enter your apache email 
address here</span>
+</span></span><span style="display:flex;"><span>Comment: amoro <span 
style="color:#75715e"># Please enter some comments here</span>
+</span></span><span style="display:flex;"><span>You selected this USER-ID:
+</span></span><span style="display:flex;"><span>    <span 
style="color:#e6db74">&#34;amoro (amoro) &lt;[email protected]&gt;&#34;</span>
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span>Change <span 
style="color:#f92672">(</span>N<span style="color:#f92672">)</span>ame, <span 
style="color:#f92672">(</span>C<span style="color:#f92672">)</span>omment, 
<span style="color:#f92672">(</span>E<span style="color:#f92672">)</span>mail 
or <span style="color:#f92672">(</span>O<span 
style="color:#f92672">)</span>kay/<span style="color:#f92672">(</span>Q<span 
style="color:#f92672">)</span>uit? O <span style="color:#75715e"># Please ent 
[...]
+</span></span><span style="display:flex;"><span>We need to generate a lot of 
random bytes. It is a good idea to perform
+</span></span><span style="display:flex;"><span>some other action <span 
style="color:#f92672">(</span>type on the keyboard, move the mouse, utilize the
+</span></span><span style="display:flex;"><span>disks<span 
style="color:#f92672">)</span> during the prime generation; this gives the 
random number
+</span></span><span style="display:flex;"><span>generator a better chance to 
gain enough entropy.
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span><span style="color:#75715e"># 
At this time, a dialog box will pop up, asking you to enter the key for this 
gpg. </span>
+</span></span><span style="display:flex;"><span><span style="color:#75715e"># 
you need to remember that it will be used in subsequent steps.</span>
+</span></span><span 
style="display:flex;"><span>β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
+</span></span><span style="display:flex;"><span>β”‚ Please enter this passphrase 
to                     β”‚
+</span></span><span style="display:flex;"><span>β”‚ protect your new key         
                       β”‚
+</span></span><span style="display:flex;"><span>β”‚                              
                       β”‚
+</span></span><span style="display:flex;"><span>β”‚ Passphrase: 
_______________________________________ β”‚
+</span></span><span style="display:flex;"><span>β”‚                              
                       β”‚
+</span></span><span style="display:flex;"><span>β”‚     &lt;OK&gt;               
     &lt;Cancel&gt;                β”‚
+</span></span><span 
style="display:flex;"><span>β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span><span style="color:#75715e"># 
Here you need to re-enter the password in the previous step.</span>
+</span></span><span 
style="display:flex;"><span>β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
+</span></span><span style="display:flex;"><span>β”‚ Please re-enter this 
passphrase                     β”‚
+</span></span><span style="display:flex;"><span>β”‚                              
                       β”‚
+</span></span><span style="display:flex;"><span>β”‚ Passphrase: 
_______________________________________ β”‚
+</span></span><span style="display:flex;"><span>β”‚                              
                       β”‚
+</span></span><span style="display:flex;"><span>β”‚     &lt;OK&gt;               
     &lt;Cancel&gt;                β”‚
+</span></span><span 
style="display:flex;"><span>β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
+</span></span><span style="display:flex;"><span>gpg: key ACFB69E705016886 
marked as ultimately trusted
+</span></span><span style="display:flex;"><span>gpg: revocation certificate 
stored as <span 
style="color:#e6db74">&#39;/root/.gnupg/openpgp-revocs.d/DC12398CCC33A5349EB9663DF9D970AB18C9EDF6.rev&#39;</span>
+</span></span><span style="display:flex;"><span>public and secret key created 
and signed.
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span>pub   rsa4096 2023-05-01 <span 
style="color:#f92672">[</span>SC<span style="color:#f92672">]</span>
+</span></span><span style="display:flex;"><span>      
85778A4CE4DD04B7E07813ABACFB69E705016886
+</span></span><span style="display:flex;"><span>uid                      amoro 
<span style="color:#f92672">(</span>amoro<span style="color:#f92672">)</span> 
&lt;[email protected]&gt;
+</span></span><span style="display:flex;"><span>sub   rsa4096 2023-05-01 <span 
style="color:#f92672">[</span>E<span style="color:#f92672">]</span>
+</span></span></code></pre></div><p>Then you can follow the steps below to 
upload the GPG key to the public server:</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span style="display:flex;"><span>$ 
gpg --keyid-format SHORT --list-keys
+</span></span><span style="display:flex;"><span>/root/.gnupg/pubring.kbx
+</span></span><span style="display:flex;"><span>------------------------
+</span></span><span style="display:flex;"><span>pub   rsa4096/05016886 
2023-05-01 <span style="color:#f92672">[</span>SC<span 
style="color:#f92672">]</span>
+</span></span><span style="display:flex;"><span>      
85778A4CE4DD04B7E07813ABACFB69E705016886
+</span></span><span style="display:flex;"><span>uid         <span 
style="color:#f92672">[</span>ultimate<span style="color:#f92672">]</span> 
amoro <span style="color:#f92672">(</span>amoro<span 
style="color:#f92672">)</span> &lt;[email protected]&gt;
+</span></span><span style="display:flex;"><span>sub   rsa4096/0C5A4E1C 
2023-05-01 <span style="color:#f92672">[</span>E<span 
style="color:#f92672">]</span>
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span><span style="color:#75715e"># 
Send public key to keyserver via key id</span>
+</span></span><span style="display:flex;"><span>$ gpg --keyserver 
keyserver.ubuntu.com --send-key <span style="color:#ae81ff">05016886</span> 
<span style="color:#75715e"># send key should be found in the --list-keys 
result</span>
+</span></span><span style="display:flex;"><span><span style="color:#75715e"># 
Among them, keyserver.ubuntu.com is the selected keyserver, it is recommended 
to use this, because the Apache Nexus verification uses this keyserver</span>
+</span></span></code></pre></div><p>Check if the key is uploaded 
successfully:</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span style="display:flex;"><span>$ 
gpg --keyserver keyserver.ubuntu.com --recv-keys <span 
style="color:#ae81ff">05016886</span>   <span style="color:#75715e"># If the 
following content appears, it means success</span>
+</span></span><span style="display:flex;"><span>gpg: key ACFB69E705016886: 
<span style="color:#e6db74">&#34;amoro (amoro) 
&lt;[email protected]&gt;&#34;</span> not changed
+</span></span><span style="display:flex;"><span>gpg: Total number processed: 
<span style="color:#ae81ff">1</span>
+</span></span><span style="display:flex;"><span>gpg:              unchanged: 
<span style="color:#ae81ff">1</span>
+</span></span></code></pre></div><p>Add the GPG public key to the KEYS file of 
the Apache SVN project warehouse:</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span 
style="display:flex;"><span><span style="color:#75715e"># Add public key to 
KEYS in dev branch</span>
+</span></span><span style="display:flex;"><span>$ mkdir -p ~/amoro_svn/dev
+</span></span><span style="display:flex;"><span>$ cd ~/amoro_svn/dev
+</span></span><span style="display:flex;"><span>$ svn co 
https://dist.apache.org/repos/dist/dev/incubator/amoro
+</span></span><span style="display:flex;"><span>$ cd ~/amoro_svn/dev/amoro
+</span></span><span style="display:flex;"><span><span style="color:#75715e"># 
Append the KEY you generated to the file KEYS, and check if it is added 
correctly</span>
+</span></span><span style="display:flex;"><span>$ <span 
style="color:#f92672">(</span>gpg --list-sigs [email protected] <span 
style="color:#f92672">&amp;&amp;</span> gpg --export --armor 
[email protected]<span style="color:#f92672">)</span> &gt;&gt; KEYS 
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span>$ svn ci -m <span 
style="color:#e6db74">&#34;add gpg key for amoro&#34;</span>
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span><span style="color:#75715e"># 
Add public key to KEYS in release branch</span>
+</span></span><span style="display:flex;"><span>$ mkdir -p ~/amoro_svn/release
+</span></span><span style="display:flex;"><span>$ cd ~/amoro_svn/release
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span>$ svn co 
https://dist.apache.org/repos/dist/release/incubator/amoro/
+</span></span><span style="display:flex;"><span>$ cd ~/amoro_svn/release/amoro
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span><span style="color:#75715e"># 
Append the KEY you generated to the file KEYS, and check if it is added 
correctly</span>
+</span></span><span style="display:flex;"><span>$ <span 
style="color:#f92672">(</span>gpg --list-sigs [email protected] <span 
style="color:#f92672">&amp;&amp;</span> gpg --export --armor 
[email protected]<span style="color:#f92672">)</span> &gt;&gt; KEYS 
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span>$ svn ci -m <span 
style="color:#e6db74">&#34;add gpg key for amoro&#34;</span>
+</span></span></code></pre></div><h3 id="maven-settings">Maven settings</h3>
+<p>During the release process, frequent access to your Apache password is 
required. To prevent exposure in plaintext storage, we need to encrypt it.</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span 
style="display:flex;"><span><span style="color:#75715e"># Generate master 
password</span>
+</span></span><span style="display:flex;"><span>$ mvn 
--encrypt-master-password &lt;apache password&gt;
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">{</span>EM+4/TYVDXYHRbkwjjAS3mE1RhRJXJUSG8aIO5RSxuHU26rKCjuS2vG+/wMjz9te<span
 style="color:#f92672">}</span>
+</span></span></code></pre></div><p>Create the file 
<code>${user.home}/.m2/settings-security.xml</code> and configure the password 
created in the previous step:</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-xml" data-lang="xml"><span style="display:flex;"><span><span 
style="color:#f92672">&lt;settingsSecurity&gt;</span>
+</span></span><span style="display:flex;"><span> <span 
style="color:#f92672">&lt;master&gt;</span>{EM+4/TYVDXYHRbkwjjAS3mE1RhRJXJUSG8aIO5RSxuHU26rKCjuS2vG+/wMjz9te}<span
 style="color:#f92672">&lt;/master&gt;</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">&lt;/settingsSecurity&gt;</span>
+</span></span></code></pre></div><p>In the maven configuration file 
<code>~/.m2/settings.xml</code>, add the following item:</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-xml" data-lang="xml"><span style="display:flex;"><span><span 
style="color:#f92672">&lt;settings</span> <span 
style="color:#a6e22e">xmlns=</span><span 
style="color:#e6db74">&#34;http://maven.apache.org/SETTINGS/1.0.0&#34;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#a6e22e">xmlns:xsi=</span><span 
style="color:#e6db74">&#34;http://www.w3.org/2001/XMLSchema-instance&#34;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#a6e22e">xsi:schemaLocation=</span><span 
style="color:#e6db74">&#34;http://maven.apache.org/SETTINGS/1.0.0 
http://maven.apache.org/xsd/settings-1.0.0.xsd&#34;</span><span 
style="color:#f92672">&gt;</span>
+</span></span><span style="display:flex;"><span>  
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;servers&gt;</span>
+</span></span><span style="display:flex;"><span>    <span 
style="color:#f92672">&lt;server&gt;</span>
+</span></span><span style="display:flex;"><span>        <span 
style="color:#f92672">&lt;id&gt;</span>apache.snapshots.https<span 
style="color:#f92672">&lt;/id&gt;</span>
+</span></span><span style="display:flex;"><span>        <span 
style="color:#75715e">&lt;!-- APACHE LDAP UserName --&gt;</span> 
+</span></span><span style="display:flex;"><span>        <span 
style="color:#f92672">&lt;username&gt;</span>amoro<span 
style="color:#f92672">&lt;/username&gt;</span>
+</span></span><span style="display:flex;"><span>        <span 
style="color:#75715e">&lt;!-- APACHE LDAP password (Fill in the password you 
just created with the command `mvn --encrypt-password &lt;apache 
passphrase&gt;`) --&gt;</span>
+</span></span><span style="display:flex;"><span>        <span 
style="color:#f92672">&lt;password&gt;</span>{/ZLaH78TWboH5IRqNv9pgU4uamuqm9fCIbw0gRWT01c=}<span
 style="color:#f92672">&lt;/password&gt;</span>
+</span></span><span style="display:flex;"><span>    <span 
style="color:#f92672">&lt;/server&gt;</span>
+</span></span><span style="display:flex;"><span>    <span 
style="color:#f92672">&lt;server&gt;</span>
+</span></span><span style="display:flex;"><span>        <span 
style="color:#f92672">&lt;id&gt;</span>apache.releases.https<span 
style="color:#f92672">&lt;/id&gt;</span>
+</span></span><span style="display:flex;"><span>        <span 
style="color:#75715e">&lt;!-- APACHE LDAP UserName --&gt;</span> 
+</span></span><span style="display:flex;"><span>        <span 
style="color:#f92672">&lt;username&gt;</span>amoro<span 
style="color:#f92672">&lt;/username&gt;</span>
+</span></span><span style="display:flex;"><span>        <span 
style="color:#75715e">&lt;!-- APACHE LDAP password (Fill in the password you 
just created with the command `mvn --encrypt-password &lt;apache 
passphrase&gt;`) --&gt;</span>
+</span></span><span style="display:flex;"><span>        <span 
style="color:#f92672">&lt;password&gt;</span>{/ZLaH78TWboH5IRqNv9pgU4uamuqm9fCIbw0gRWT01c=}<span
 style="color:#f92672">&lt;/password&gt;</span>
+</span></span><span style="display:flex;"><span>    <span 
style="color:#f92672">&lt;/server&gt;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;/servers&gt;</span>
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;profiles&gt;</span>
+</span></span><span style="display:flex;"><span>        <span 
style="color:#f92672">&lt;profile&gt;</span>
+</span></span><span style="display:flex;"><span>          <span 
style="color:#f92672">&lt;id&gt;</span>apache-release<span 
style="color:#f92672">&lt;/id&gt;</span>
+</span></span><span style="display:flex;"><span>          <span 
style="color:#f92672">&lt;properties&gt;</span>
+</span></span><span style="display:flex;"><span>            <span 
style="color:#f92672">&lt;gpg.keyname&gt;</span>05016886<span 
style="color:#f92672">&lt;/gpg.keyname&gt;</span>
+</span></span><span style="display:flex;"><span>            <span 
style="color:#75715e">&lt;!-- Use an agent: Prevents being asked for the 
password during the build --&gt;</span>
+</span></span><span style="display:flex;"><span>            <span 
style="color:#f92672">&lt;gpg.useagent&gt;</span>true<span 
style="color:#f92672">&lt;/gpg.useagent&gt;</span>
+</span></span><span style="display:flex;"><span>            <span 
style="color:#f92672">&lt;gpg.passphrase&gt;</span>passphrase for your gpg 
key<span style="color:#f92672">&lt;/gpg.passphrase&gt;</span>
+</span></span><span style="display:flex;"><span>          <span 
style="color:#f92672">&lt;/properties&gt;</span>
+</span></span><span style="display:flex;"><span>        <span 
style="color:#f92672">&lt;/profile&gt;</span>
+</span></span><span style="display:flex;"><span>  <span 
style="color:#f92672">&lt;/profiles&gt;</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">&lt;/settings&gt;</span>
+</span></span></code></pre></div><p>Generate the final encrypted password and 
add it to the <code>~/.m2/settings.xml</code> file:</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span style="display:flex;"><span>$ 
mvn --encrypt-password &lt;apache password&gt;
+</span></span><span style="display:flex;"><span><span 
style="color:#f92672">{</span>/ZLaH78TWboH5IRqNv9pgU4uamuqm9fCIbw0gRWT01c<span 
style="color:#f92672">=}</span>
+</span></span></code></pre></div><h2 id="build-release">Build release</h2>
+<h3 id="cut-the-release-branch">Cut the release branch</h3>
+<p>Cut the release branch if it is not created in the Apache remote 
repository, if it already exists, check it out and pull the latest changes.</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span style="display:flex;"><span>$ 
cd <span style="color:#e6db74">${</span>AMORO_SOURCE_HOME<span 
style="color:#e6db74">}</span>
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span><span style="color:#75715e"># 
Cut the release branch if it is not created </span>
+</span></span><span style="display:flex;"><span>$ git checkout -b 0.8.x
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span><span style="color:#75715e"># 
Or check it out and pull the latest changes if it is created</span>
+</span></span><span style="display:flex;"><span>$ git checkout 0.8.x
+</span></span><span style="display:flex;"><span>$ git pull apache 0.8.x
+</span></span></code></pre></div><p>Change the project version to the release 
version in the <code>tools/change-version.sh</code>:</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-bash" data-lang="bash"><span 
style="display:flex;"><span>OLD<span style="color:#f92672">=</span><span 
style="color:#e6db74">&#34;0.8-SNAPSHOT&#34;</span>
+</span></span><span style="display:flex;"><span>NEW<span 
style="color:#f92672">=</span><span 
style="color:#e6db74">&#34;0.8.0-incubating&#34;</span>
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span>HERE<span 
style="color:#f92672">=</span><span style="color:#e6db74">`</span> basename 
<span style="color:#e6db74">&#34;</span>$PWD<span 
style="color:#e6db74">&#34;</span><span style="color:#e6db74">`</span>
+</span></span><span style="display:flex;"><span><span 
style="color:#66d9ef">if</span> <span style="color:#f92672">[[</span> <span 
style="color:#e6db74">&#34;</span>$HERE<span style="color:#e6db74">&#34;</span> 
!<span style="color:#f92672">=</span> <span 
style="color:#e6db74">&#34;tools&#34;</span> <span 
style="color:#f92672">]]</span>; <span style="color:#66d9ef">then</span>
+</span></span><span style="display:flex;"><span>    echo <span 
style="color:#e6db74">&#34;Please only execute in the tools/ 
directory&#34;</span>;
+</span></span><span style="display:flex;"><span>    exit 1;
+</span></span><span style="display:flex;"><span><span 
style="color:#66d9ef">fi</span>
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span><span style="color:#75715e"># 
change version in all pom files</span>
+</span></span><span style="display:flex;"><span>find .. -name <span 
style="color:#e6db74">&#39;pom.xml&#39;</span> -type f -exec perl -pi -e <span 
style="color:#e6db74">&#39;s#&lt;version&gt;&#39;</span><span 
style="color:#e6db74">&#34;</span>$OLD<span 
style="color:#e6db74">&#34;</span><span 
style="color:#e6db74">&#39;&lt;/version&gt;#&lt;version&gt;&#39;</span><span 
style="color:#e6db74">&#34;</span>$NEW<span 
style="color:#e6db74">&#34;</span><span style="color:#e6db74">&#39;&lt;/versio 
[...]
+</span></span></code></pre></div><p>Then run the scripts and commit the 
change:</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span style="display:flex;"><span>$ 
cd tools
+</span></span><span style="display:flex;"><span>$ bash change-version.sh
+</span></span><span style="display:flex;"><span>$ cd ..
+</span></span><span style="display:flex;"><span>$ git add *
+</span></span><span style="display:flex;"><span>$ git commit -m <span 
style="color:#e6db74">&#34;Change project version to 
0.8.0-incubating&#34;</span>
+</span></span><span style="display:flex;"><span>$ git push apache 0.8.x
+</span></span></code></pre></div><h3 id="create-the-release-tag">Create the 
release tag</h3>
+<p>Create the release tag and push it to the Apache repo:</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span style="display:flex;"><span>$ 
git tag -a v0.8.0-rc1 -m <span style="color:#e6db74">&#34;Release Apache Amoro 
0.8.0 rc1&#34;</span>
+</span></span><span style="display:flex;"><span>$ git push apache v0.8.0-rc1
+</span></span></code></pre></div><h3 
id="build-binary-and-source-release">Build binary and source release</h3>
+<p>Build Amoro binary release with scripts:</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span style="display:flex;"><span>$ 
cd <span style="color:#e6db74">${</span>AMORO_SOURCE_HOME<span 
style="color:#e6db74">}</span>/tools
+</span></span><span style="display:flex;"><span>$ RELEASE_VERSION<span 
style="color:#f92672">=</span>0.8.0-incubating bash 
./releasing/create_binary_release.sh
+</span></span></code></pre></div><p>Then build source release with scripts:</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span style="display:flex;"><span>$ 
cd <span style="color:#e6db74">${</span>AMORO_SOURCE_HOME<span 
style="color:#e6db74">}</span>/tools
+</span></span><span style="display:flex;"><span>$ RELEASE_VERSION<span 
style="color:#f92672">=</span>0.8.0-incubating bash 
./releasing/create_source_release.sh
+</span></span></code></pre></div><p>Validate the source and binary packages 
according to the <a href="../validate-release/">How to validate a new 
release</a> guides.
+After that, publish the dev directory of the Apache SVN warehouse of the 
material package:</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span style="display:flex;"><span>$ 
cd ~/amoro_svn/dev/amoro
+</span></span><span style="display:flex;"><span>$ mkdir 0.8.0-incubating-RC1
+</span></span><span style="display:flex;"><span>$ cp <span 
style="color:#e6db74">${</span>AMORO_SOURCE_HOME<span 
style="color:#e6db74">}</span>/tools/releasing/release/* 0.8.0-incubating-RC1
+</span></span><span style="display:flex;"><span>$ svn add 0.8.0-incubating-RC1
+</span></span><span style="display:flex;"><span>$ svn commit -m <span 
style="color:#e6db74">&#34;Release Apache Amoro 0.8.0 rc1&#34;</span>
+</span></span></code></pre></div><h3 id="release-apache-nexus">Release Apache 
Nexus</h3>
+<p>Next, we will publish the required JAR files to the ​Apache Nexus​ 
repository to achieve the final goal of releasing them to the ​Maven Central 
Repository.</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span style="display:flex;"><span>$ 
cd <span style="color:#e6db74">${</span>$AMORO_SOURCE_HOME<span 
style="color:#e6db74">}</span>/tools
+</span></span><span style="display:flex;"><span>$ RELEASE_VERSION<span 
style="color:#f92672">=</span>0.8.0-incubating bash 
./releasing/deploy_staging_jars.sh
+</span></span></code></pre></div><p>You can visit <a 
href="https://repository.apache.org/";>https://repository.apache.org/</a> and 
log in to check the publishment status. You can find the publishment process in 
the <code>Staging Repositories</code> section. You need to close the process 
when all jars are publised.</p>
+<h2 id="vote-for-the-new-release">Vote for the new release</h2>
+<p>Next, vote for the new release via email. First complete the vote within 
the Amoro community, and upon approval, complete the vote within the Amoro 
community in the Incubator community. For detailed voting guidelines, please 
refer to <a href="https://www.apache.org/foundation/voting.html";>voting 
process</a>.</p>
+<h3 id="vote-in-the-amoro-community">Vote in the Amoro community</h3>
+<p>Send a vote email to <code>[email protected]</code> to start the vote 
process in Apache Amoro community, you can take <a 
href="https://lists.apache.org/thread/22rrpzwtzkby8vnhfvcwzmpfxxz8qhns";>[VOTE] 
Release Apache Amoro(incubating) 0.8.0-incubating rc3</a> as an example.</p>
+<p>You can validate the source and binary packages according to the <a 
href="../validate-release/">How to validate a new release</a> guides and give 
your vote resulut. If other developers identify critical issues, you need to 
cancel the current vote, wait for the fixes to be implemented, and then restart 
the release process with a new release candidate.</p>
+<p>After 72 hours, if there are at least 3 binding votes from Amoro PPMC 
members and no votes against, send the result email to celebrate the release of 
the version like <a 
href="https://lists.apache.org/thread/gokj30ldgh3p5866tw40h41mhdw90whs";>[RESULT][VOTE]
 Release Apache Amoro(incubating) 0.8.0-incubating rc3</a>.</p>
+<h3 id="vote-in-the-incubator-community">Vote in the Incubator community</h3>
+<p>Send a vote email to <code>[email protected]</code> to start the 
vote process in Apache Incubator community, you can take <a 
href="https://lists.apache.org/thread/bqj7gohrjwxp5gwycdgh78xmpymfm6jr";>[VOTE] 
Release Apache Amoro(incubating) 0.8.0-incubating rc3</a> as an example.</p>
+<p>After 72 hours, if there are at least 3 binding votes from IPMC members and 
no votes against, send the result email to celebrate the release of the version 
like <a 
href="https://lists.apache.org/thread/qmvg3tcds0p0pbn05w0mzchm85o581rv";>[RESULT][VOTE]
 Release Apache Amoro(incubating) 0.8.0-incubating rc3</a>.</p>
+<h2 id="complete-the-final-publishing-steps">Complete the final publishing 
steps</h2>
+<h3 id="migrate-source-and-binary-packages">Migrate source and binary 
packages</h3>
+<p>Migrate the source and binary packages to the release directory of the 
Apache SVN warehouse:</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span style="display:flex;"><span>$ 
svn mv 
https://dist.apache.org/repos/dist/dev/incubator/amoro/0.8.0-incubating-RC1 
https://dist.apache.org/repos/dist/release/incubator/amoro/0.8.0-incubating  -m 
<span style="color:#e6db74">&#34;Release Apache Amoro 
0.8.0-incubating&#34;</span>
+</span></span></code></pre></div><h3 
id="publish-releases-in-the-apache-staging-repository">Publish releases in the 
Apache Staging repository</h3>
+<ul>
+<li>Log in to <a 
href="http://repository.apache.org";>http://repository.apache.org</a> , log in 
with your Apache account</li>
+<li>Click Staging repositories on the left</li>
+<li>Select your most recently uploaded warehouse, the warehouse specified in 
the voting email</li>
+<li>Click the Release button above, this process will perform a series of 
checks</li>
+</ul>
+<blockquote>
+<p>It usually takes 24 hours for the warehouse to synchronize to other data 
sources</p></blockquote>
+<h3 id="send-announcement-email">Send announcement email</h3>
+<p>Finally, we need to send the announcement email to these mailing lists: 
<code>[email protected]</code>, <code>[email protected]</code>. 
Here is an example of an announcement email:  <a 
href="https://lists.apache.org/thread/h3cy8f2mfmp4zms4cs3tq4hdlq64qyw0";>[ANNOUNCE]
 Apache Amoro (Incubating) 0.8.0-incubating available</a>.</p>
+<p>Congratulations! You have successfully completed all steps of the Apache 
Amoro release process. Thank you for your contributions!</p>
+</div>
+                
+                    
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<div id="toc" class="markdown-body">
+    <div id="full">
+        <nav id="TableOfContents">
+  <ul>
+    <li><a href="#preparation">Preparation</a>
+      <ul>
+        <li><a href="#apache-release-documentation">Apache release 
documentation</a></li>
+        <li><a href="#environmental-requirements">Environmental 
requirements</a></li>
+        <li><a href="#gpg-signature">GPG signature</a></li>
+        <li><a href="#maven-settings">Maven settings</a></li>
+      </ul>
+    </li>
+    <li><a href="#build-release">Build release</a>
+      <ul>
+        <li><a href="#cut-the-release-branch">Cut the release branch</a></li>
+        <li><a href="#create-the-release-tag">Create the release tag</a></li>
+        <li><a href="#build-binary-and-source-release">Build binary and source 
release</a></li>
+        <li><a href="#release-apache-nexus">Release Apache Nexus</a></li>
+      </ul>
+    </li>
+    <li><a href="#vote-for-the-new-release">Vote for the new release</a>
+      <ul>
+        <li><a href="#vote-in-the-amoro-community">Vote in the Amoro 
community</a></li>
+        <li><a href="#vote-in-the-incubator-community">Vote in the Incubator 
community</a></li>
+      </ul>
+    </li>
+    <li><a href="#complete-the-final-publishing-steps">Complete the final 
publishing steps</a>
+      <ul>
+        <li><a href="#migrate-source-and-binary-packages">Migrate source and 
binary packages</a></li>
+        <li><a 
href="#publish-releases-in-the-apache-staging-repository">Publish releases in 
the Apache Staging repository</a></li>
+        <li><a href="#send-announcement-email">Send announcement email</a></li>
+      </ul>
+    </li>
+  </ul>
+</nav>
+    </div>
+</div>
+
+                
+            </div>
+        </div>
+    </section>
+</body>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<script src="https://amoro.apache.org//js/jquery-1.11.0.js";></script>
+
+
+<script src="https://amoro.apache.org//js/jquery.easing.min.js";></script>
+
+
+<script type="text/javascript" 
src="https://amoro.apache.org//js/search.js";></script>
+
+
+<script src="https://amoro.apache.org//js/bootstrap.min.js";></script>
+
+
+<script src="https://amoro.apache.org//js/iceberg-theme.js";></script>
+
+
+
+</html>
\ No newline at end of file
diff --git a/output/roadmap/index.html b/output/roadmap/index.html
index 3638daa..71933cc 100644
--- a/output/roadmap/index.html
+++ b/output/roadmap/index.html
@@ -221,6 +221,14 @@
                             <a   href="/how-to-contribute/">How to 
contribute</a>
                             </li class="topnav-page-selection">
                         
+                            <li class="topnav-page-selection">
+                            <a   href="/release-guide/">Release guide</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/validate-release/">Validate release</a>
+                            </li class="topnav-page-selection">
+                        
                         </ul>
                         </div>
                     </div>
diff --git a/output/sitemap.xml b/output/sitemap.xml
index edc359f..c81757b 100644
--- a/output/sitemap.xml
+++ b/output/sitemap.xml
@@ -21,6 +21,10 @@
     <loc>https://amoro.apache.org/join-community/</loc>
   </url><url>
     <loc>https://amoro.apache.org/quick-start/</loc>
+  </url><url>
+    <loc>https://amoro.apache.org/release-guide/</loc>
+  </url><url>
+    <loc>https://amoro.apache.org/validate-release/</loc>
   </url><url>
     <loc>https://amoro.apache.org/roadmap/</loc>
   </url><url>
diff --git a/output/benchmark-guide/index.html 
b/output/validate-release/index.html
similarity index 55%
copy from output/benchmark-guide/index.html
copy to output/validate-release/index.html
index 3c3f2f5..fcdff0a 100644
--- a/output/benchmark-guide/index.html
+++ b/output/validate-release/index.html
@@ -36,7 +36,7 @@
     <meta name="viewport" content="width=device-width, initial-scale=1">
     <meta name="description" content="">
     <meta name="author" content="">
-    <title>How To Benchmark</title>
+    <title>Release Guide</title>
 
     
     
@@ -221,6 +221,14 @@
                             <a   href="/how-to-contribute/">How to 
contribute</a>
                             </li class="topnav-page-selection">
                         
+                            <li class="topnav-page-selection">
+                            <a   href="/release-guide/">Release guide</a>
+                            </li class="topnav-page-selection">
+                        
+                            <li class="topnav-page-selection">
+                            <a   href="/validate-release/">Validate release</a>
+                            </li class="topnav-page-selection">
+                        
                         </ul>
                         </div>
                     </div>
@@ -279,126 +287,78 @@
         <div class="grid-container toc-only">
             
             <div id="content" class="markdown-body">
-                <div class="margin-for-toc"><h1 id="benchmark-guild">Benchmark 
Guild</h1>
-<p>This guilde introduces detailed steps for executing the benchmark to 
validate performance of various data lake formats.</p>
-<p>By following the steps in the guild, you can learn about the analytical 
performance of different data lake table format. At the same time, you can 
flexibly adjust the test scenarios to obtain test results that better suit your 
actual scenario.</p>
-<h2 id="deploy-testing-environment">Deploy testing environment</h2>
-<h3 id="deploy-by-docker">Deploy by Docker</h3>
-<p>With <a href="https://docs.docker.com/compose/";>Docker-Compose</a>, you can 
quickly set up an environment for performing the benchmark.
-The detailed steps reference: <a 
href="https://github.com/NetEase/lakehouse-benchmark/tree/master/docker/benchmark";>Lakehouse-benchmark</a>.</p>
-<h3 id="deploy-manually">Deploy manually</h3>
-<p>Alternatively, you can manually deploy the following components to set up 
the test environment:</p>
-<table>
-  <thead>
-      <tr>
-          <th style="text-align: left">Component</th>
-          <th style="text-align: left">Version</th>
-          <th style="text-align: left">Description</th>
-          <th style="text-align: left">Installation Guide</th>
-      </tr>
-  </thead>
-  <tbody>
-      <tr>
-          <td style="text-align: left">MySQL</td>
-          <td style="text-align: left">5.7+</td>
-          <td style="text-align: left">MySQL is used to generate TPC-C data 
for synchronization to data lakes.</td>
-          <td style="text-align: left"><a 
href="https://dev.mysql.com/doc/mysql-installation-excerpt/5.7/en/";>MySQL 
Installation Guide</a></td>
-      </tr>
-      <tr>
-          <td style="text-align: left">Hadoop</td>
-          <td style="text-align: left">2.3.7+</td>
-          <td style="text-align: left">Hadoop is used to provide the storage 
for data lakes.</td>
-          <td style="text-align: left"><a 
href="https://ambari.apache.org/";>Ambari</a></td>
-      </tr>
-      <tr>
-          <td style="text-align: left">Trino</td>
-          <td style="text-align: left">380</td>
-          <td style="text-align: left">Trino is used to execute TPC-H queries 
for Iceberg and Mixed-Iceberg format tables.</td>
-          <td style="text-align: left"><a 
href="https://trino.io/docs/current/installation/deployment.html";>Trino 
Installation Guide</a></td>
-      </tr>
-      <tr>
-          <td style="text-align: left">Amoro Trino Connector</td>
-          <td style="text-align: left">0.4.0</td>
-          <td style="text-align: left">To query Mixed-Iceberg Format tables in 
Trino, you need to install and configure the Amoro connector in Trino.</td>
-          <td style="text-align: left"><a 
href="https://amoro.netease.com/docs/latest/trino/";>Amoro Trino 
Connector</a></td>
-      </tr>
-      <tr>
-          <td style="text-align: left">Iceberg Trino Connector</td>
-          <td style="text-align: left">0.13.0</td>
-          <td style="text-align: left">To query Iceberg Format tables in 
Trino, you need to install and configure the Iceberg connector in Trino.</td>
-          <td style="text-align: left"><a 
href="https://trino.io/docs/current/connector/iceberg.html";>Iceberg Trino 
Connector</a></td>
-      </tr>
-      <tr>
-          <td style="text-align: left">Presto</td>
-          <td style="text-align: left">274</td>
-          <td style="text-align: left">Presto is used to execute TPC-H queries 
for Hudi format tables.</td>
-          <td style="text-align: left"><a 
href="https://prestodb.io/docs/current/installation/deployment.html";>Presto 
Installation Guide</a></td>
-      </tr>
-      <tr>
-          <td style="text-align: left">Hudi Presto Connector</td>
-          <td style="text-align: left">0.11.1</td>
-          <td style="text-align: left">To query Iceberg Format tables in 
Trino, you need to install and configure the Iceberg connector in Presto.</td>
-          <td style="text-align: left"><a 
href="https://prestodb.io/docs/current/connector/hudi.html";>Hudi Presto 
Connector</a></td>
-      </tr>
-      <tr>
-          <td style="text-align: left">AMS</td>
-          <td style="text-align: left">0.4.0</td>
-          <td style="text-align: left">Amoro Management Service, support 
self-optimizing on tables during the test.</td>
-          <td style="text-align: left"><a 
href="https://amoro.netease.com/docs/latest/deployment/";>AMS Installation 
Guide</a></td>
-      </tr>
-      <tr>
-          <td style="text-align: left">data-lake-benchmark</td>
-          <td style="text-align: left">21</td>
-          <td style="text-align: left">The core program of Benchmark which is 
responsible for generating test data, executing the testing process, and 
generating test results.</td>
-          <td style="text-align: left"><a 
href="https://github.com/NetEase/data-lake-benchmark#readme";>Data Lake 
Benchmark</a></td>
-      </tr>
-      <tr>
-          <td style="text-align: left">lakehouse-benchmark-ingestion</td>
-          <td style="text-align: left">1.0</td>
-          <td style="text-align: left">Data synchronization tool based on 
Flink-CDC which can synchronize data from  database to data lake in 
real-time.</td>
-          <td style="text-align: left"><a 
href="https://github.com/NetEase/lakehouse-benchmark-ingestion";>Lakehouse 
Benchmark Ingestion</a></td>
-      </tr>
-  </tbody>
-</table>
-<h2 id="benchmark-steps">Benchmark steps</h2>
-<ol>
-<li>
-<p>Configure the configuration file 
<code>config/mysql/sample_chbenchmark_config.xml</code> file of program 
<code>data-lake-benchmark</code>. Fill in the information of MySQL and 
parameter <code>scalefactor</code>.  <code>scalefactor</code> represents the 
number of warehouses, which controls the overall data volume. Generally, choose 
10 or 100.</p>
-</li>
-<li>
-<p>Generate static data into MySQL with command:</p>
-</li>
-</ol>
-<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span 
style="display:flex;"><span>java -jar lakehouse-benchmark.jar -b 
tpcc,chbenchmark -c config/mysql/sample_chbenchmark_config.xml --create<span 
style="color:#f92672">=</span>true --load<span 
style="color:#f92672">=</span>true
-</span></span></code></pre></div><ol start="3">
-<li>
-<p>Configure the configuration file <code>config/ingestion-conf.yaml</code> 
file of program <code>lakehouse-benchmark-ingestion</code>. Fill in the 
information of MySQL.</p>
-</li>
-<li>
-<p>Start the ingestion job to synchronize data form MySQL to data lake tables 
witch command:</p>
-</li>
-</ol>
-<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span 
style="display:flex;"><span>java -cp 
lakehouse-benchmark-ingestion-1.0-SNAPSHOT.jar 
com.netease.arctic.benchmark.ingestion.MainRunner -confDir <span 
style="color:#f92672">[</span>confDir<span style="color:#f92672">]</span> 
-sinkType <span style="color:#f92672">[</span>arctic/iceberg/hudi<span 
style="color:#f [...]
-</span></span></code></pre></div><ol start="5">
-<li>Execute TPC-H benchmark on static data with command:</li>
-</ol>
-<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span 
style="display:flex;"><span>java -jar lakehouse-benchmark.jar -b 
chbenchmarkForTrino -c config/trino/trino_chbenchmark_config.xml --create<span 
style="color:#f92672">=</span>false --load<span 
style="color:#f92672">=</span>false --execute<span 
style="color:#f92672">=</span>true
-</span></span></code></pre></div><ol start="6">
-<li>Execute TPC-C program to continuously write data into MYSQL witch 
command:</li>
-</ol>
-<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span 
style="display:flex;"><span>java -jar lakehouse-benchmark.jar -b 
tpcc,chbenchmark -c config/mysql/sample_chbenchmark_config.xml --execute<span 
style="color:#f92672">=</span>true -s <span style="color:#ae81ff">5</span>
-</span></span></code></pre></div><ol start="7">
-<li>Execute TPC-H benchmark on dynamic data with command:</li>
-</ol>
-<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span 
style="display:flex;"><span>java -jar lakehouse-benchmark.jar -b 
chbenchmarkForTrino -c config/trino/trino_chbenchmark_config.xml --create<span 
style="color:#f92672">=</span>false --load<span 
style="color:#f92672">=</span>false --execute<span 
style="color:#f92672">=</span>true
-</span></span></code></pre></div><ol start="8">
-<li>
-<p>Obtain the benchmark results in the <code>result</code> directory of the 
<code>data-lake-benchmark</code> project.</p>
-</li>
-<li>
-<p>Repeat step 7 to obtain benchmark results for different points in time.</p>
-</li>
-</ol>
+                <div class="margin-for-toc"><h1 
id="how-to-validate-a-new-release">How to validate a new release</h1>
+<h2 id="download-candidate">Download candidate</h2>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span 
style="display:flex;"><span><span style="color:#75715e"># If there is svn 
locally, you can clone to the local</span>
+</span></span><span style="display:flex;"><span>$ svn co 
https://dist.apache.org/repos/dist/dev/incubator/amoro/<span 
style="color:#e6db74">${</span>release_version<span 
style="color:#e6db74">}</span>-<span 
style="color:#e6db74">${</span>rc_version<span style="color:#e6db74">}</span>/
+</span></span><span style="display:flex;"><span><span style="color:#75715e"># 
or download the material file directly</span>
+</span></span><span style="display:flex;"><span>$ wget 
https://dist.apache.org/repos/dist/dev/incubator/amoro/<span 
style="color:#e6db74">${</span>release_version<span 
style="color:#e6db74">}</span>-<span 
style="color:#e6db74">${</span>rc_version<span style="color:#e6db74">}</span>/
+</span></span></code></pre></div><h2 id="validate-candidate">validate 
candidate</h2>
+<h3 id="check-gpg-signature">Check GPG signature</h3>
+<p>Download the KEYS and import it:</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span style="display:flex;"><span>$ 
curl  https://downloads.apache.org/incubator/amoro/KEYS &gt; KEYS <span 
style="color:#75715e"># Download KEYS</span>
+</span></span><span style="display:flex;"><span>$ gpg --import KEYS <span 
style="color:#75715e"># Import KEYS to local</span>
+</span></span></code></pre></div><p>Trust the KEY used in this version:</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span style="display:flex;"><span>$ 
gpg --edit-key xxxxxxxxxx <span style="color:#75715e">#KEY user used in this 
version</span>
+</span></span><span style="display:flex;"><span>gpg <span 
style="color:#f92672">(</span>GnuPG<span style="color:#f92672">)</span> 2.2.21; 
Copyright <span style="color:#f92672">(</span>C<span 
style="color:#f92672">)</span> <span style="color:#ae81ff">2020</span> Free 
Software Foundation, Inc.
+</span></span><span style="display:flex;"><span>This is free software: you are 
free to change and redistribute it.
+</span></span><span style="display:flex;"><span>There is NO WARRANTY, to the 
extent permitted by law.
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span>Secret key is available.
+</span></span><span style="display:flex;"><span>gpg&gt; trust <span 
style="color:#75715e">#trust</span>
+</span></span><span style="display:flex;"><span>Please decide how far you 
trust this user to correctly verify other users<span 
style="color:#e6db74">&#39; keys
+</span></span></span><span style="display:flex;"><span><span 
style="color:#e6db74">(by looking at passports, checking fingerprints from 
different sources, etc.)
+</span></span></span><span style="display:flex;"><span><span 
style="color:#e6db74">
+</span></span></span><span style="display:flex;"><span><span 
style="color:#e6db74">  1 = I don&#39;</span>t know or won<span 
style="color:#960050;background-color:#1e0010">&#39;</span>t say
+</span></span><span style="display:flex;"><span>  2 <span 
style="color:#f92672">=</span> I <span style="color:#66d9ef">do</span> NOT trust
+</span></span><span style="display:flex;"><span>  3 <span 
style="color:#f92672">=</span> I trust marginally
+</span></span><span style="display:flex;"><span>  4 <span 
style="color:#f92672">=</span> I trust fully
+</span></span><span style="display:flex;"><span>  5 <span 
style="color:#f92672">=</span> I trust ultimately
+</span></span><span style="display:flex;"><span>  m <span 
style="color:#f92672">=</span> back to the main menu
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span>Your decision? <span 
style="color:#ae81ff">5</span> <span style="color:#75715e">#choose 5</span>
+</span></span><span style="display:flex;"><span>Do you really want to set this 
key to ultimate trust? <span style="color:#f92672">(</span>y/N<span 
style="color:#f92672">)</span> y  <span style="color:#75715e">#choose y</span>
+</span></span></code></pre></div><p>Check the gpg signature:</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span style="display:flex;"><span>$ 
<span style="color:#66d9ef">for</span> i in *.tar.gz; <span 
style="color:#66d9ef">do</span> echo $i; gpg --verify $i.asc $i; <span 
style="color:#66d9ef">done</span>
+</span></span></code></pre></div><h3 id="check-sha512-hash">Check sha512 
hash</h3>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span 
style="display:flex;"><span><span style="color:#75715e"># Command for 
Linux</span>
+</span></span><span style="display:flex;"><span>$ <span 
style="color:#66d9ef">for</span> i in *.tar.gz; <span 
style="color:#66d9ef">do</span> echo $i; sha512sum --check  $i.sha512; <span 
style="color:#66d9ef">done</span>
+</span></span><span style="display:flex;"><span><span style="color:#75715e"># 
Command for MacOS</span>
+</span></span><span style="display:flex;"><span>$ <span 
style="color:#66d9ef">for</span> i in *.tar.gz; <span 
style="color:#66d9ef">do</span> echo $i; shasum -a <span 
style="color:#ae81ff">512</span> -c $i.sha512; <span 
style="color:#66d9ef">done</span>
+</span></span></code></pre></div><h3 id="check-the-binary-package">Check the 
binary package</h3>
+<p>Unzip the binary pakcages: 
<code>apache-amoro-${AMORO_VERSION}-bin-${HADOOP_VERSION}.tar.gz</code>:</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span 
style="display:flex;"><span><span style="color:#75715e"># Hadoop2</span>
+</span></span><span style="display:flex;"><span>$ tar -xzvf 
apache-amoro-0.8.0-incubating-bin-hadoop2.tar.gz
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span><span style="color:#75715e"># 
Hadoop3 </span>
+</span></span><span style="display:flex;"><span>$ tar -xzvf 
apache-amoro-0.8.0-incubating-bin-hadoop3.tar.gz
+</span></span></code></pre></div><p>check as follows:</p>
+<ul>
+<li>Check whether the package contains unnecessary files, which makes the tar 
package too large</li>
+<li>Folder contains the word incubating</li>
+<li>There are LICENSE and NOTICE files</li>
+<li>There is a DISCLAIMER file</li>
+<li>Check for extra files or folders, such as empty folders, etc.</li>
+</ul>
+<h3 id="check-the-source-package">Check the source package</h3>
+<p>Unzip the binary pakcages: 
<code>apache-amoro-${AMORO_VERSION}-src.tar.gz</code>:</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span style="display:flex;"><span>$ 
tar -xzvf apache-amoro-0.8.0-incubating-src.tar.gz
+</span></span></code></pre></div><p>Check as follows:</p>
+<ul>
+<li>There are LICENSE and NOTICE files</li>
+<li>There is a DISCLAIMER file</li>
+<li>All source files have ASF license at the beginning</li>
+<li>Only source files exist, not binary files</li>
+</ul>
+<p>Compile from source:</p>
+<div class="highlight"><pre tabindex="0" 
style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code
 class="language-shell" data-lang="shell"><span 
style="display:flex;"><span><span style="color:#75715e"># Compile from 
source</span>
+</span></span><span style="display:flex;"><span>$ mvn clean package
+</span></span><span style="display:flex;"><span>
+</span></span><span style="display:flex;"><span><span style="color:#75715e"># 
Or skip the unit test</span>
+</span></span><span style="display:flex;"><span>$ mvn clean package -DskipTests
+</span></span></code></pre></div><h2 id="vote-for-the-release">vote for the 
release</h2>
+<p>If all verifications pass, please vote +1 for the new release! If you find 
any critical issues, pleaste vote -1 for it.
+Thanks a lot for your work!</p>
 </div>
                 
                     
@@ -420,13 +380,16 @@ The detailed steps reference: <a 
href="https://github.com/NetEase/lakehouse-benc
     <div id="full">
         <nav id="TableOfContents">
   <ul>
-    <li><a href="#deploy-testing-environment">Deploy testing environment</a>
+    <li><a href="#download-candidate">Download candidate</a></li>
+    <li><a href="#validate-candidate">validate candidate</a>
       <ul>
-        <li><a href="#deploy-by-docker">Deploy by Docker</a></li>
-        <li><a href="#deploy-manually">Deploy manually</a></li>
+        <li><a href="#check-gpg-signature">Check GPG signature</a></li>
+        <li><a href="#check-sha512-hash">Check sha512 hash</a></li>
+        <li><a href="#check-the-binary-package">Check the binary 
package</a></li>
+        <li><a href="#check-the-source-package">Check the source 
package</a></li>
       </ul>
     </li>
-    <li><a href="#benchmark-steps">Benchmark steps</a></li>
+    <li><a href="#vote-for-the-release">vote for the release</a></li>
   </ul>
 </nav>
     </div>

Reply via email to