text: <!DOCTYPE html>
  <html lang="en" class="js csstransforms3d">
    <head>
      <meta charset="utf-8">
      <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
      <meta http-equiv="Cache-Control" content="max-age=7200" />
      <meta name="generator" content="Hugo 0.70.0" />
      <meta name="description" content="">
      <meta name="buildDate" content="2020-09-25 15:31:18">
  
  
      <link rel="shortcut icon" href="https://shardingsphere.apache.org/document/current/img/favicon.png" type="image/x-icon" />
  
      <title>ShardingSphere-UI Release Guide :: ShardingSphere</title>
      
      
      <link href="https://shardingsphere.apache.org/community/css/nucleus.css?1601019078" rel="stylesheet">
      <link href="https://shardingsphere.apache.org/community/css/font-awesome.min.css?1601019078" rel="stylesheet">
      <link href="https://shardingsphere.apache.org/community/css/hybrid.css?1601019078" rel="stylesheet">
      <link href="https://shardingsphere.apache.org/community/css/featherlight.min.css?1601019078" rel="stylesheet">
      <link href="https://shardingsphere.apache.org/community/css/perfect-scrollbar.min.css?1601019078" rel="stylesheet">
      <link href="https://shardingsphere.apache.org/community/css/auto-complete.css?1601019078" rel="stylesheet">
      <link href="https://shardingsphere.apache.org/community/css/theme.css?1601019078" rel="stylesheet">
      <link href="https://shardingsphere.apache.org/community/css/hugo-theme.css?1601019078" rel="stylesheet">
      
        <link href="https://shardingsphere.apache.org/community/css/theme-black.css?1601019078" rel="stylesheet">
      
  
      <script src="https://shardingsphere.apache.org/community/js/jquery-2.x.min.js?1601019078"></script>
      
      <style type="text/css">
        :root #header + #content > #left > #rlblock_left{ 
            display:none !important;
        }
        
      </style>
      
  
    </head>
    <body class="" data-url="/en/contribute/release_ui/">
      <nav id="sidebar" class="">
  
  
  
    <div id="header-wrapper">
      <div id="header">
        <a href="https://shardingsphere.apache.org/"><img src="https://shardingsphere.apache.org/document/current/img/logo_v2.png" /></a>
  
      </div>
      
    </div>
  
      <div class="highlightable">
      <ul class="topics">
  
          
            
            
  
  
   
    
      
      <li data-nav-id="/en/contribute/" title="Get Involved" class="dd-item 
          parent
          
          
          ">
        <a href="https://shardingsphere.apache.org/community/en/contribute/">
            <b>1. </b>Get Involved
            
        </a>
        
        
          <ul>
            
            
            
            
          
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/contribute/subscribe/" title="Subscribe Guide" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/contribute/subscribe/">
          Subscribe Guide
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/contribute/contributor/" title="Contributor Guide" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/contribute/contributor/">
          Contributor Guide
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/contribute/committer/" title="Committer Guide" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/contribute/committer/">
          Committer Guide
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/contribute/code-conduct/" title="Code of Conduct" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/contribute/code-conduct/">
          Code of Conduct
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/contribute/document-contributor/" title="Documents Contributor Guide" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/contribute/document-contributor/">
          Documents Contributor Guide
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/contribute/release/" title="ShardingSphere Release Guide" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/contribute/release/">
          ShardingSphere Release Guide
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/contribute/release_ui/" title="ShardingSphere-UI Release Guide" class="dd-item active">
          <a href="https://shardingsphere.apache.org/community/en/contribute/release_ui/">
          ShardingSphere-UI Release Guide
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/contribute/release-elasticjob/" title="ElasticJob Release Guide" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/contribute/release-elasticjob/">
          ElasticJob Release Guide
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/contribute/release-elasticjob-ui/" title="ElasticJob-UI Release Guide" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/contribute/release-elasticjob-ui/">
          ElasticJob-UI Release Guide
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/contribute/2fa/" title="2FA" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/contribute/2fa/">
          2FA
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/contribute/icla/" title="Sign ICLA Guide" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/contribute/icla/">
          Sign ICLA Guide
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/contribute/vote/" title="Accept a new committer process" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/contribute/vote/">
          Accept a new committer process
          
          </a>
      </li>
       
    
   
  
              
            
          
          </ul>
                
      </li>
    
   
  
            
            
  
  
   
    
      
      <li data-nav-id="/en/powered-by/" title="Powered By ShardingSphere" class="dd-item 
          
          
          
          ">
        <a href="https://shardingsphere.apache.org/community/en/powered-by/">
            <b>2. </b>Powered By ShardingSphere
            
        </a>
        
                
      </li>
    
   
  
            
            
  
  
   
    
      
      <li data-nav-id="/en/team/" title="Team" class="dd-item 
          
          
          
          ">
        <a href="https://shardingsphere.apache.org/community/en/team/">
            <b>3. </b>Team
            
        </a>
        
                
      </li>
    
   
  
            
            
  
  
   
    
      
      <li data-nav-id="/en/security/" title="security" class="dd-item 
          
          
          
          ">
        <a href="https://shardingsphere.apache.org/community/en/security/">
            <b>4. </b>security
            
        </a>
        
                
      </li>
    
   
  
            
           
      </ul>
  
      
      
  
      
      <section id="prefooter">
        <hr/>
        <ul>
        
          <li>
            <a class="padding">
              <i class="fa fa-fw fa-language"></i>
            <div class="select-style">
              <select id="select-language" onchange="location = this.value;">
            
            
            
                
                
                    
                      
                      
  <option id="en" value="/community/en/contribute/release_ui/" selected>English</option>
                      
                    
                
                    
                
            
                
                
                    
                
                    
                      
                      
  <option id="cn" value="/community/cn/contribute/release_ui/">简体中文</option>
                      
                    
                
            
          </select>
          <svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
            width="255px" height="255px" viewBox="0 0 255 255" style="enable-background:new 0 0 255 255;" xml:space="preserve">
            <g>
              <g id="arrow-drop-down">
                <polygon points="0,63.75 127.5,191.25 255,63.75 		" />
              </g>
            </g>
          </svg>
          </div>
          </a>
          </li>
         
        
        
        </ul>
      </section>
      
      <section id="footer">
        <p></p>
  
      </section>
    </div>
  </nav>
  
  
  
  
  
          <section id="body">
          <div id="overlay"></div>
          <div class="padding highlightable">
                
                <div>
                  <div id="top-bar">
                  
                    
                    
                    
                    <div id="top-github-link">
                      <a class="github-link" title='Edit this page' href="https://github.com/apache/shardingsphere/tree/master/docs/community/content/contribute/release_ui.en.md" target="blank">
                        <i class="fa fa-code-fork"></i>
                        <span id="top-github-link-text">Edit this page</span>
                      </a>
                    </div>
                    
                  
                  
                  <div id="breadcrumbs" itemscope="" itemtype="http://data-vocabulary.org/Breadcrumb">
                      <span id="sidebar-toggle-span">
                          <a href="#" id="sidebar-toggle" data-sidebar-toggle="">
                            <i class="fa fa-bars"></i>
                          </a>
                      </span>
                    
                    <span class="links">
                      
            
            
              
              
            
            
              
              
            
            
              <a href='https://shardingsphere.apache.org/community/en/'>ShardingSphere</a> > <a href='https://shardingsphere.apache.org/community/en/contribute/'>Get Involved</a> > ShardingSphere-UI Release Guide
            
           
            
           
            
             
                    </span>
                  </div>
                  
                </div>
              </div>
              
  
          
            <div id="chapter">
          
          <div id="body-inner">
            
  
          
  
  
  <h2 id="gpg-settings">GPG Settings</h2>
  <p>Please refer to <a href="https://shardingsphere.apache.org/community/en/contribute/release/">Release Guide</a>.</p>
  <h2 id="apache-maven-central-repository-release">Apache Maven Central Repository Release</h2>
  <h3 id="set-settingsxml">Set settings.xml</h3>
  <p>Add the following template to <code>~/.m2/settings.xml</code>, all the passwords need to be filled in after encryption.
  For encryption settings, please see <a href="http://maven.apache.org/guides/mini/guide-encryption.html">here</a>.</p>
  <div class="highlight"><pre 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="color:#f92672">&lt;settings&gt;</span>
      <span style="color:#f92672">&lt;servers&gt;</span>
        <span style="color:#f92672">&lt;server&gt;</span>
            <span style="color:#f92672">&lt;id&gt;</span>apache.snapshots.https<span style="color:#f92672">&lt;/id&gt;</span>
            <span style="color:#f92672">&lt;username&gt;</span> <span style="color:#75715e">&lt;!-- APACHE LDAP username --&gt;</span> <span style="color:#f92672">&lt;/username&gt;</span>
            <span style="color:#f92672">&lt;password&gt;</span> <span style="color:#75715e">&lt;!-- APACHE LDAP encrypted password --&gt;</span> <span style="color:#f92672">&lt;/password&gt;</span>
        <span style="color:#f92672">&lt;/server&gt;</span>
        <span style="color:#f92672">&lt;server&gt;</span>
            <span style="color:#f92672">&lt;id&gt;</span>apache.releases.https<span style="color:#f92672">&lt;/id&gt;</span>
            <span style="color:#f92672">&lt;username&gt;</span> <span style="color:#75715e">&lt;!-- APACHE LDAP username --&gt;</span> <span style="color:#f92672">&lt;/username&gt;</span>
            <span style="color:#f92672">&lt;password&gt;</span> <span style="color:#75715e">&lt;!-- APACHE LDAP encrypted password --&gt;</span> <span style="color:#f92672">&lt;/password&gt;</span>
        <span style="color:#f92672">&lt;/server&gt;</span>
      <span style="color:#f92672">&lt;/servers&gt;</span>
  <span style="color:#f92672">&lt;/settings&gt;</span>
  </code></pre></div><h3 id="update-release-notes">Update Release Notes</h3>
  <pre><code>https://github.com/apache/shardingsphere-ui/blob/master/RELEASE-NOTES.md
  </code></pre><h3 id="create-release-branch">Create Release Branch</h3>
  <p>Suppose ShardingSphere source codes downloaded from github is under <code>~/shardingsphere-ui/</code> directory and the version to be released is <code>${RELEASE.VERSION}</code>.
  Create <code>${RELEASE.VERSION}-release</code> branch, where all the following operations are performed.</p>
  <div class="highlight"><pre 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="color:#75715e">## ${name} is the properly branch, e.g. master, dev-4.x</span>
  git clone --branch <span style="color:#e6db74">${</span>name<span style="color:#e6db74">}</span> https://github.com/apache/shardingsphere-ui.git ~/shardingsphere-ui
  cd ~/shardingsphere-ui/
  git pull
  git checkout -b <span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>-release
  git push origin <span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>-release
  </code></pre></div><h3 id="pre-release-check">Pre-Release Check</h3>
  <div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">cd ~/shardingsphere-ui
  mvn release:prepare -Prelease -Darguments<span style="color:#f92672">=</span><span style="color:#e6db74">&#34;-DskipTests&#34;</span> -DautoVersionSubmodules<span style="color:#f92672">=</span>true -DdryRun<span style="color:#f92672">=</span>true -Dusername<span style="color:#f92672">=</span><span style="color:#e6db74">${</span>Github username<span style="color:#e6db74">}</span>
  </code></pre></div><p>-Prelease: choose release profile, which will pack all the source codes, jar files and executable binary packages of ShardingSphere-UI.</p>
  <p>-DautoVersionSubmodules=true: it can make the version number is inputted only once and not for each sub-module.</p>
  <p>-DdryRun=true: rehearsal, which means not to generate or submit new version number and new tag.</p>
  <h3 id="prepare-for-the-release">Prepare for the Release</h3>
  <p>First, clean local pre-release check information.</p>
  <div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">cd ~/shardingsphere-ui
  mvn release:clean
  </code></pre></div><p>Then, prepare to execute the release.</p>
  <div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">cd ~/shardingsphere-ui
  mvn release:prepare -Prelease -Darguments<span style="color:#f92672">=</span><span style="color:#e6db74">&#34;-DskipTests&#34;</span> -DautoVersionSubmodules<span style="color:#f92672">=</span>true -DpushChanges<span style="color:#f92672">=</span>false -Dusername<span style="color:#f92672">=</span><span style="color:#e6db74">${</span>Github username<span style="color:#e6db74">}</span>
  </code></pre></div><p>It is basically the same as the previous rehearsal command, but deleting -DdryRun=true parameter.</p>
  <p>-DpushChanges=false: do not submit the edited version number and tag to Github automatically.</p>
  <p>After making sure there is no mistake in local files, submit them to GitHub.</p>
  <div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">git push origin <span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>-release
  git push origin --tags
  </code></pre></div><h3 id="deploy-the-release">Deploy the Release</h3>
  <div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">cd ~/shardingsphere-ui
  mvn release:perform -Prelease -Darguments<span style="color:#f92672">=</span><span style="color:#e6db74">&#34;-DskipTests&#34;</span> -DautoVersionSubmodules<span style="color:#f92672">=</span>true -Dusername<span style="color:#f92672">=</span><span style="color:#e6db74">${</span>Github username<span style="color:#e6db74">}</span>
  </code></pre></div><h2 id="apache-svn-repository-release">Apache SVN Repository Release</h2>
  <h3 id="checkout-shardingsphere-release-directory">Checkout ShardingSphere Release Directory</h3>
  <p>If there is no local work directory, create one at first.</p>
  <div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">mkdir -p ~/ss_svn/dev/
  cd ~/ss_svn/dev/
  </code></pre></div><p>After the creation, checkout ShardingSphere release directory from Apache SVN.</p>
  <div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">svn --username<span style="color:#f92672">=</span><span style="color:#e6db74">${</span>APACHE LDAP username<span style="color:#e6db74">}</span> co https://dist.apache.org/repos/dist/dev/shardingsphere
  cd ~/ss_svn/dev/shardingsphere
  </code></pre></div><h3 id="add-gpg-public-key">Add gpg Public Key</h3>
  <p>Only the account in its first deployment needs to add that.
  It is alright for <code>KEYS</code> to only include the public key of the deployed account.</p>
  <div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">gpg -a --export <span style="color:#e6db74">${</span>GPG username<span style="color:#e6db74">}</span> &gt;&gt; KEYS
  </code></pre></div><h3 id="add-the-release-content-to-svn-directory">Add the Release Content to SVN Directory</h3>
  <p>Create folder by version number.</p>
  <div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">mkdir -p ~/ss_svn/dev/shardingsphere/shardingsphere-ui-<span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>
  cd ~/ss_svn/dev/shardingsphere/shardingsphere-ui-<span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>
  </code></pre></div><p>Add source code packages, binary packages and executable binary packages of ShardingSphere-Proxy to SVN working directory.</p>
  <div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">cp -f ~/shardingsphere-ui/shardingsphere-ui-distribution/shardingsphere-ui-src-distribution/target/*.zip ~/ss_svn/dev/shardingsphere/shardingsphere-ui-<span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>
  cp -f ~/shardingsphere-ui/shardingsphere-ui-distribution/shardingsphere-ui-src-distribution/target/*.zip.asc ~/ss_svn/dev/shardingsphere/shardingsphere-ui-<span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>
  cp -f ~/shardingsphere-ui/shardingsphere-ui-distribution/shardingsphere-ui-bin-distribution/target/*.tar.gz ~/ss_svn/dev/shardingsphere/shardingsphere-ui-<span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>
  cp -f ~/shardingsphere-ui/shardingsphere-ui-distribution/shardingsphere-ui-bin-distribution/target/*.tar.gz.asc ~/ss_svn/dev/shardingsphere/shardingsphere-ui-<span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>
  </code></pre></div><h3 id="generate-sign-files">Generate sign files</h3>
  <div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">shasum -a <span style="color:#ae81ff">512</span> apache-shardingsphere-<span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>-shardingsphere-ui-src.zip &gt;&gt; apache-shardingsphere-<span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>-shardingsphere-ui-src.zip.sha512
  shasum -b -a <span style="color:#ae81ff">512</span> apache-shardingsphere-<span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>-shardingsphere-ui-bin.tar.gz &gt;&gt; apache-shardingsphere-<span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>-shardingsphere-ui-bin.tar.gz.sha512
  </code></pre></div><h3 id="commit-to-apache-svn">Commit to Apache SVN</h3>
  <div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">cd ~/ss_svn/dev/shardingsphere/
  svn add shardingsphere-ui-<span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>
  svn --username<span style="color:#f92672">=</span><span style="color:#e6db74">${</span>APACHE LDAP 用户名<span style="color:#e6db74">}</span> commit -m <span style="color:#e6db74">&#34;release shardingsphere-ui-</span><span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span>
  </code></pre></div><h2 id="check-release">Check Release</h2>
  <h3 id="check-sha512-hash">Check sha512 hash</h3>
  <div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">shasum -c apache-shardingsphere-<span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>-shardingsphere-ui-src.zip.sha512
  shasum -c apache-shardingsphere-<span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>-shardingsphere-ui-bin.tar.gz.sha512
  </code></pre></div><h3 id="check-gpg-signature">Check gpg Signature</h3>
  <p>First, import releaser&rsquo;s public key.
  Import KEYS from SVN repository to local. (The releaser does not need to import again; the checking assistant needs to import it, with the user name filled as the releaser&rsquo;s. )</p>
  <div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">curl https://dist.apache.org/repos/dist/dev/shardingsphere/KEYS &gt;&gt; KEYS
  gpg --import KEYS
  gpg --edit-key <span style="color:#e6db74">&#34;</span><span style="color:#e6db74">${</span>GPG username of releaser<span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span>
    &gt; trust
  
  Please decide how far you trust this user to correctly verify other users<span style="color:#e6db74">&#39; keys
  </span><span style="color:#e6db74">(by looking at passports, checking fingerprints from different sources, etc.)
  </span><span style="color:#e6db74">
  </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
    2 <span style="color:#f92672">=</span> I <span style="color:#66d9ef">do</span> NOT trust
    3 <span style="color:#f92672">=</span> I trust marginally
    4 <span style="color:#f92672">=</span> I trust fully
    5 <span style="color:#f92672">=</span> I trust ultimately
    m <span style="color:#f92672">=</span> back to the main menu
  
  Your decision? <span style="color:#ae81ff">5</span>
  
    &gt; save
  </code></pre></div><p>Then, check the gpg signature.</p>
  <div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">gpg --verify apache-shardingsphere-<span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>-shardingsphere-ui-src.zip.asc apache-shardingsphere-<span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>-shardingsphere-ui-src.zip
  gpg --verify apache-shardingsphere-<span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>-shardingsphere-ui-bin.tar.gz.asc apache-shardingsphere-<span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>-shardingsphere-ui-bin.tar.gz
  </code></pre></div><h3 id="check-released-files">Check Released Files</h3>
  <h4 id="compare-release-source-with-github-tag">compare release source with github tag</h4>
  <pre><code>curl -Lo tag-shardingsphere-ui-${RELEASE.VERSION}.zip https://github.com/apache/shardingsphere-ui/archive/shardingsphere-ui-${RELEASE.VERSION}.zip
  unzip tag-shardingsphere-ui-${RELEASE.VERSION}.zip
  unzip apache-shardingsphere-${RELEASE.VERSION}-shardingsphere-ui-src.zip
  diff -r apache-shardingsphere-${RELEASE.VERSION}-shardingsphere-ui-src/ shardingsphere-shardingsphere-ui-${RELEASE.VERSION}/
  </code></pre><h4 id="check-source-package">Check source package</h4>
  <ul>
  <li>Check whether source tarball is oversized for including nonessential files</li>
  <li><code>LICENSE</code> and <code>NOTICE</code> files exist</li>
  <li>Correct year in <code>NOTICE</code> file</li>
  <li>There is only text files but no binary files</li>
  <li>All source files have ASF headers</li>
  <li>Codes can be compiled and pass the unit tests (./mvnw install)</li>
  <li>Check if there is any extra files or folders, empty folders for example</li>
  </ul>
  <h4 id="check-binary-packages">Check binary packages</h4>
  <p>Decompress <code>apache-shardingsphere-${RELEASE.VERSION}-shardingsphere-ui-bin.tar.gz</code>
  to check the following items:</p>
  <ul>
  <li><code>LICENSE</code> and <code>NOTICE</code> files exist</li>
  <li>Correct year in <code>NOTICE</code> file</li>
  <li>All text files have ASF headers</li>
  <li>Check the third party dependency license:
  <ul>
  <li>The software have a compatible license</li>
  <li>All software licenses mentioned in <code>LICENSE</code></li>
  <li>All the third party dependency licenses are under <code>licenses</code> folder</li>
  <li>If it depends on Apache license and has a <code>NOTICE</code> file, that <code>NOTICE</code> file need to be added to <code>NOTICE</code> file of the release</li>
  </ul>
  </li>
  </ul>
  <h2 id="call-for-a-vote">Call for a Vote</h2>
  <h3 id="vote-procedure">Vote procedure</h3>
  <ol>
  <li>
  <p>ShardingSphere community vote: send the vote e-mail to <code>dev@shardingsphere.apache.org</code>.
  PMC needs to check the rightness of the version according to the document before they vote.
  After at least 72 hours and with at least 3 <code>+1 PMC member</code> votes, it can come to the next stage of the vote.</p>
  </li>
  <li>
  <p>Announce the vote result: send the result vote e-mail to <code>dev@shardingsphere.apache.org</code>.</p>
  </li>
  </ol>
  <h3 id="vote-templates">Vote Templates</h3>
  <ol>
  <li>ShardingSphere Community Vote Template</li>
  </ol>
  <p>Title:</p>
  <pre><code>[VOTE] Release Apache ShardingSphere UI ${RELEASE.VERSION}
  
  </code></pre><p>Body:</p>
  <pre><code>Hello ShardingSphere Community,
  
  This is a call for vote to release Apache ShardingSphere UI version ${RELEASE.VERSION}
  
  Release notes:
  https://github.com/apache/shardingsphere-ui/blob/master/RELEASE-NOTES.md
  
  The release candidates:
  https://dist.apache.org/repos/dist/dev/shardingsphere/shardingsphere-ui-${RELEASE.VERSION}/
  
  Git tag for the release:
  https://github.com/apache/shardingsphere-ui/tree/shardingsphere-ui-${RELEASE.VERSION}/
  
  Release Commit ID:
  https://github.com/apache/shardingsphere-ui/commit/xxxxxxxxxxxxxxxxxxxxxxx
  
  Keys to verify the Release Candidate:
  https://dist.apache.org/repos/dist/dev/shardingsphere/KEYS
  
  Look at here for how to verify this release candidate:
  https://shardingsphere.apache.org/community/en/contribute/release_ui/
  
  GPG user ID:
  ${YOUR.GPG.USER.ID}
  
  The vote will be open for at least 72 hours or until necessary number of votes are reached.
  
  Please vote accordingly:
  
  [ ] +1 approve 
  
  [ ] +0 no opinion
   
  [ ] -1 disapprove with the reason
  
  PMC vote is +1 binding, all others is +1 non-binding.
  
  Checklist for reference:
  
  [ ] Download links are valid.
  
  [ ] Checksums and PGP signatures are valid.
  
  [ ] Source code distributions have correct names matching the current release.
  
  [ ] LICENSE and NOTICE files are correct for each ShardingSphere repo.
  
  [ ] All files have license headers if necessary.
  
  [ ] No compiled archives bundled in source archive.
  </code></pre><ol start="2">
  <li>Announce the vote result:</li>
  </ol>
  <p>Title：</p>
  <pre><code>[RESULT][VOTE] Release Apache ShardingSphere UI ${RELEASE.VERSION}
  </code></pre><p>Body:</p>
  <pre><code>We’ve received 3 +1 binding votes and one +1 non-binding vote:
  
  +1 binding, xxx
  +1 binding, xxx
  +1 binding, xxx
  
  +1 non-binding, xxx
  
  Thank you everyone for taking the time to review the release and help us. 
  I will process to publish the release and send ANNOUNCE.
  
  </code></pre><h2 id="finish-the-release">Finish the Release</h2>
  <h3 id="move-source-packages-binary-packages-and-keys-from-the-dev-directory-to-release-directory">Move source packages, binary packages and KEYS from the <code>dev</code> directory to <code>release</code> directory</h3>
  <div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">svn mv https://dist.apache.org/repos/dist/dev/shardingsphere/shardingsphere-ui-<span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span> https://dist.apache.org/repos/dist/release/shardingsphere/ -m <span style="color:#e6db74">&#34;transfer packages for shardingsphere-ui-</span><span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span>
  svn delete https://dist.apache.org/repos/dist/release/shardingsphere/KEYS -m <span style="color:#e6db74">&#34;delete KEYS&#34;</span>
  svn cp https://dist.apache.org/repos/dist/dev/shardingsphere/KEYS https://dist.apache.org/repos/dist/release/shardingsphere/ -m <span style="color:#e6db74">&#34;transfer KEYS for shardingsphere-ui-</span><span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span><span style="color:#e6db74">&#34;</span>
  </code></pre></div><h3 id="merge-release-branch-to-master-and-delete-release-branch-on-github">Merge release branch to <code>master</code> and delete release branch on Github</h3>
  <div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">git checkout master
  git merge origin/<span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>-release
  git pull
  git push origin master
  git push --delete origin <span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>-release
  git branch -d <span style="color:#e6db74">${</span>RELEASE.VERSION<span style="color:#e6db74">}</span>-release
  </code></pre></div><h3 id="update-the-download-page">Update the download page</h3>
  <p><a href="https://shardingsphere.apache.org/document/current/en/downloads/">https://shardingsphere.apache.org/document/current/en/downloads/</a></p>
  <p><a href="https://shardingsphere.apache.org/document/current/cn/downloads/">https://shardingsphere.apache.org/document/current/cn/downloads/</a></p>
  <p>GPG signatures and hashes (SHA* etc) should use URL start with <code>https://downloads.apache.org/shardingsphere/</code></p>
  <p>Keep one latest versions in <code>Latest releases</code>. Incubating stage versions will be archived automatically in <a href="https://archive.apache.org/dist/incubator/shardingsphere/">Archive repository</a></p>
  <h3 id="publish-release-in-github">Publish release in GitHub</h3>
  <p>Click <code>Edit</code> in <a href="https://github.com/apache/shardingsphere-ui/releases">GitHub Releases</a>&lsquo;s <code>shardingsphere-ui-${RELEASE_VERSION}</code> version</p>
  <p>Edit version number and release notes, click <code>Publish release</code></p>
  <h3 id="send-e-mail-to-devshardingsphereapacheorg-and-announceapacheorg-to-announce-the-release-is-finished">Send e-mail to <code>dev@shardingsphere.apache.org</code> and <code>announce@apache.org</code> to announce the release is finished</h3>
  <p>Announcement e-mail template:</p>
  <p>Title:</p>
  <pre><code>[ANNOUNCE] Apache ShardingSphere UI ${RELEASE.VERSION} available
  </code></pre><p>Body:</p>
  <pre><code>Hi all,
  
  Apache ShardingSphere Team is glad to announce the new release of Apache ShardingSphere UI ${RELEASE.VERSION}.
  
  ShardingSphere is an open-source ecosystem consisted of a set of distributed database middleware solutions, including 2 independent products, ShardingSphere-JDBC &amp; ShardingSphere-Proxy. 
  They both provide functions of data sharding, distributed transaction and database governance, applicable in a variety of situations such as Java isomorphism, heterogeneous language. 
  Aiming at reasonably making full use of the computation and storage capacity of the database in a distributed system, ShardingSphere defines itself as a middleware, rather than a totally new type of database. 
  As the cornerstone of many enterprises, relational database still takes a huge market share. 
  Therefore, at the current stage, we prefer to focus on its increment instead of a total overturn.
  
  Download Links: https://shardingsphere.apache.org/document/current/en/downloads/
  
  Release Notes: https://github.com/apache/shardingsphere-ui/blob/master/RELEASE-NOTES.md
  
  Website: https://shardingsphere.apache.org/
  
  ShardingSphere Resources:
  - Issue: https://github.com/apache/shardingsphere-ui/issues/
  - Mailing list: dev@shardingsphere.apache.org
  - Documents: https://shardingsphere.apache.org/document/current/
  
  
  
  - Apache ShardingSphere Team
  
  </code></pre>
  
  <footer class=" footline" >
  	
  </footer>
  
  
          
              </div> 
          
          </div> 
          
  
        </div>
  
      <div id="navigation">
          
          
          
          
              
              
                  
                      
                      
                  
                  
  
                      
                      
                          
                      
                      
  
                      
                          
              
              
                  
                      
                      
                  
                  
  
                      
                      
                      
  
                      
                          
              
              
                  
                      
                          
                          
                      
                  
                  
  
                      
                      
                      
  
                      
              
          
                      
                          
              
              
                  
                      
                  
                  
  
                      
                      
                      
  
                      
              
          
                      
                          
              
              
                  
                      
                  
                  
  
                      
                      
                      
  
                      
              
          
                      
                          
              
              
                  
                      
                  
                  
  
                      
                      
                      
  
                      
              
          
                      
                          
              
              
                  
                      
                  
                  
  
                      
                      
                      
  
                      
              
          
                      
                          
              
              
                  
                      
                  
                  
  
                      
                      
                      
  
                      
              
          
                      
                          
              
              
                  
                      
                      
                  
                  
  
                      
                      
                      
  
                      
              
          
                      
                          
              
              
                  
                      
                          
                          
                      
                  
                  
  
                      
                      
                      
  
                      
              
          
                      
                          
              
              
                  
                      
                  
                  
  
                      
                      
                      
  
                      
              
          
                      
                          
              
              
                  
                      
                  
                  
  
                      
                      
                      
  
                      
              
          
                      
                          
              
              
                  
                      
                  
                  
  
                      
                      
                      
  
                      
              
          
                      
                          
              
              
                  
                      
                  
                  
  
                      
                      
                      
  
                      
              
          
                      
              
          
                      
                          
              
              
                  
                      
                  
                  
  
                      
                      
                      
  
                      
              
          
                      
                          
              
              
                  
                      
                  
                  
  
                      
                      
                      
  
                      
              
          
                      
                          
              
              
                  
                      
                  
                  
  
                      
                      
                      
  
                      
              
          
                      
              
          
          
          
  
  
          
              <a class="nav nav-prev" href="https://shardingsphere.apache.org/community/en/contribute/release/" title="ShardingSphere Release Guide"> <i class="fa fa-chevron-left"></i></a>
          
          
              <a class="nav nav-next" href="https://shardingsphere.apache.org/community/en/contribute/release-elasticjob/" title="ElasticJob Release Guide" style="margin-right: 0px;"><i class="fa fa-chevron-right"></i></a>
          
      </div>
  
      </section>
      
      <div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
        <div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
      </div>
      <script src="https://shardingsphere.apache.org/community/js/clipboard.min.js?1601019078"></script>
      <script src="https://shardingsphere.apache.org/community/js/perfect-scrollbar.min.js?1601019078"></script>
      <script src="https://shardingsphere.apache.org/community/js/perfect-scrollbar.jquery.min.js?1601019078"></script>
      <script src="https://shardingsphere.apache.org/community/js/jquery.sticky.js?1601019078"></script>
      <script src="https://shardingsphere.apache.org/community/js/featherlight.min.js?1601019078"></script>
      <script src="https://shardingsphere.apache.org/community/js/html5shiv-printshiv.min.js?1601019078"></script>
      <script src="https://shardingsphere.apache.org/community/js/highlight.pack.js?1601019078"></script>
      <script>hljs.initHighlightingOnLoad();</script>
      <script src="https://shardingsphere.apache.org/community/js/modernizr.custom.71422.js?1601019078"></script>
      <script src="https://shardingsphere.apache.org/community/js/learn.js?1601019078"></script>
      <script src="https://shardingsphere.apache.org/community/js/hugo-learn.js?1601019078"></script>
  
      
  
    </body>
  </html>
  
  