blob: 051e7ee7dc17380969499ead2f3f995e909be352 [file] [log] [blame]
<!DOCTYPE html>
<!--
Generated by Apache Maven Doxia at 2017-03-29
Rendered using Reflow Maven Skin 1.1.1 (http://andriusvelykis.github.io/reflow-maven-skin)
-->
<html xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<title>Apache OpenMeetings Project -
Release Guide</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="description" content="" />
<meta name="author" content="Apache OpenMeetings Team" />
<meta http-equiv="content-language" content="en" />
<link href=".//css/bootstrap.min.css" rel="stylesheet" />
<link href=".//css/bootstrap-responsive.min.css" rel="stylesheet" />
<link href=".//css/docs.css" rel="stylesheet" />
<link href=".//css/reflow-skin.css" rel="stylesheet" />
<link href=".//css/lightbox.css" rel="stylesheet" />
<link href=".//css/site.css" rel="stylesheet" />
<link href=".//css/print.css" rel="stylesheet" media="print" />
<!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
<!--[if lt IE 9]>
<script src=".//js/html5.js"></script>
<![endif]-->
</head>
<body class="page-releaseguide project-openmeetings-server" data-spy="scroll" data-offset="60" data-target="#toc-scroll-target">
<div class="navbar navbar-fixed-top">
<div class="navbar-inner">
<div class="container">
<a class="btn btn-navbar" data-toggle="collapse" data-target="#top-nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</a>
<div class="brand"><span class="color-highlight">Apache</span> OpenMeetings</div>
<div class="nav-collapse collapse" id="top-nav-collapse">
<ul class="nav pull-right">
<li ><a href="demo.html" title="Demo">Demo</a></li>
<li ><a href="downloads.html" title="Download">Download</a></li>
<li ><a href="https://cwiki.apache.org/confluence/display/OPENMEETINGS" title="Wiki" class="externalLink">Wiki</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">General <b class="caret"></b></a>
<ul class="dropdown-menu">
<li ><a href="index.html" title="Home">Home</a></li>
<li ><a href="license.html" title="License">License</a></li>
<li ><a href="http://www.apache.org/" title="ASF" class="externalLink">ASF</a></li>
<li ><a href="CallForLogo.html" title="Call For Logo">Call For Logo</a></li>
<li ><a href="NewsArchive.html" title="News archive">News archive</a></li>
<li ><a href="security.html" title="Security">Security</a></li>
<li ><a href="commercial-support.html" title="Commercial Support">Commercial Support</a></li>
</ul>
</li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Installation <b class="caret"></b></a>
<ul class="dropdown-menu">
<li ><a href="installation.html" title="Installation">Installation</a></li>
<li ><a href="Upgrade.html" title="Upgrade">Upgrade</a></li>
<li ><a href="https://cwiki.apache.org/confluence/display/OPENMEETINGS/Tutorials+for+installing+OpenMeetings+and+Tools" title="Tutorials" class="externalLink">Tutorials</a></li>
<li ><a href="CommandLineAdmin.html" title="Command Line Admin">Command Line Admin</a></li>
</ul>
</li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Community <b class="caret"></b></a>
<ul class="dropdown-menu">
<li ><a href="get-involved.html" title="Get Involved">Get Involved</a></li>
<li ><a href="team-list.html" title="Committers">Committers</a></li>
<li ><a href="OurUsers.html" title="Our Users">Our Users</a></li>
<li ><a href="mail-lists.html" title="Mailing Lists">Mailing Lists</a></li>
<li ><a href="http://cwiki.apache.org/confluence/display/OPENMEETINGS/" title="Wiki" class="externalLink">Wiki</a></li>
</ul>
</li>
<li class="dropdown active">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Development <b class="caret"></b></a>
<ul class="dropdown-menu">
<li ><a href="source-repository.html" title="Source Code">Source Code</a></li>
<li ><a href="issue-tracking.html" title="Bugs / Issues">Bugs / Issues</a></li>
<li ><a href="dependencies.html" title="Dependencies">Dependencies</a></li>
<li ><a href="integration.html" title="Continuous Integration">Continuous Integration</a></li>
<li ><a href="BuildInstructions_3.0.x.html" title="Build Instructions 3.0.x">Build Instructions 3.0.x</a></li>
<li ><a href="BuildInstructions.html" title="Build Instructions">Build Instructions</a></li>
<li ><a href="JUnitTesting.html" title="JUnit Testing">JUnit Testing</a></li>
<li ><a href="ManualTesting.html" title="Manual Testing">Manual Testing</a></li>
<li class="active"><a href="" title="Release Guide">Release Guide</a></li>
<li ><a href="WebsiteGuide.html" title="Website Guide">Website Guide</a></li>
</ul>
</li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Configuration <b class="caret"></b></a>
<ul class="dropdown-menu">
<li class="dropdown-submenu ">
<a href="ReleaseGuide.html#integration" title="Integration">Integration</a>
<ul class="dropdown-menu">
<li ><a href="openmeetings-webservice/apidocs/index.html" title="SOAP/REST API" target="_blank">SOAP/REST API</a></li>
<li ><a href="RestAPISample.html" title="REST API Sample">REST API Sample</a></li>
<li ><a href="LdapAndADS.html" title="Ldap and ADS">Ldap and ADS</a></li>
<li ><a href="oauth2.html" title="OAuth2">OAuth2</a></li>
<li ><a href="voip-sip-integration.html" title="VoIP and SIP">VoIP and SIP</a></li>
<li ><a href="errorvalues.html" title="Errors table">Errors table</a></li>
</ul>
</li>
<li class="dropdown-submenu ">
<a href="ReleaseGuide.html#plugins" title="Plugins">Plugins</a>
<ul class="dropdown-menu">
<li ><a href="MoodlePlugin.html" title="Moodle Plugin">Moodle Plugin</a></li>
<li ><a href="SakaiPlugin.html" title="Sakai Plugin">Sakai Plugin</a></li>
<li ><a href="JiraPlugin.html" title="Jira Plugin">Jira Plugin</a></li>
<li ><a href="JoomlaPlugin.html" title="Joomla Plugin">Joomla Plugin</a></li>
<li ><a href="DrupalPlugin.html" title="Drupal Plugin">Drupal Plugin</a></li>
<li ><a href="BitrixPlugin.html" title="Bitrix Plugin">Bitrix Plugin</a></li>
<li ><a href="ConfluencePlugin.html" title="Confluence Plugin">Confluence Plugin</a></li>
<li ><a href="SugarCRMPlugin.html" title="SugarCRM Plugin">SugarCRM Plugin</a></li>
<li ><a href="RedminePlugin.html" title="Redmine Plugin">Redmine Plugin</a></li>
</ul>
</li>
<li class="dropdown-submenu ">
<a href="ReleaseGuide.html#db" title="DB Sample Configurations">DB Sample Configurations</a>
<ul class="dropdown-menu">
<li ><a href="ApacheDerbyConfig.html" title="Apache Derby">Apache Derby</a></li>
<li ><a href="IBMDB2Config.html" title="IBM DB2">IBM DB2</a></li>
<li ><a href="OracleConfig.html" title="Oracle">Oracle</a></li>
<li ><a href="MySQLConfig.html" title="MySQL">MySQL</a></li>
<li ><a href="PostgresConfig.html" title="Postgres">Postgres</a></li>
<li ><a href="MSSQLConfig.html" title="MSSQL">MSSQL</a></li>
</ul>
</li>
<li class="dropdown-submenu ">
<a href="ReleaseGuide.html#localization" title="Localization and languages">Localization and languages</a>
<ul class="dropdown-menu">
<li ><a href="Internationalisation.html" title="Internationalisation">Internationalisation</a></li>
<li ><a href="LanguageEditor.html" title="LanguageEditor">LanguageEditor</a></li>
<li ><a href="TimeZoneHandling.html" title="TimeZoneHandling">TimeZoneHandling</a></li>
<li ><a href="EditTemplates.html" title="EditTemplates">EditTemplates</a></li>
</ul>
</li>
<li class="dropdown-submenu ">
<a href="ReleaseGuide.html#port" title="NAT Port Settings">NAT Port Settings</a>
<ul class="dropdown-menu">
<li ><a href="PortSettings.html" title="Port settings">Port settings</a></li>
</ul>
</li>
<li class="dropdown-submenu ">
<a href="ReleaseGuide.html#performance" title="Performance">Performance</a>
<ul class="dropdown-menu">
<li ><a href="JVMPerformanceTuning.html" title="JVM performance tuning">JVM performance tuning</a></li>
<li ><a href="NetworkCalculator.html" title="Network bandwidth calculator">Network bandwidth calculator</a></li>
</ul>
</li>
<li class="dropdown-submenu ">
<a href="ReleaseGuide.html#interface" title="User Interface">User Interface</a>
<ul class="dropdown-menu">
<li ><a href="themes-and-branding.html" title="Themes">Themes</a></li>
<li ><a href="Dashboard.html" title="Dashboard">Dashboard</a></li>
<li ><a href="WebcamResolutions.html" title="Webcam resolutions">Webcam resolutions</a></li>
<li ><a href="ConferenceRoomLayoutOptions.html" title="Room layout options">Room layout options</a></li>
<li ><a href="HotKeys.html" title="Hot Keys">Hot Keys</a></li>
</ul>
</li>
<li class="dropdown-submenu ">
<a href="ReleaseGuide.html#customize" title="Customization">Customization</a>
<ul class="dropdown-menu">
<li ><a href="WebappNamePath.html" title="Webapp name/path">Webapp name/path</a></li>
<li ><a href="Navigation.html" title="Navigation">Navigation</a></li>
<li ><a href="CalendarAndTimezone.html" title="Calendar and timezone">Calendar and timezone</a></li>
<li ><a href="CustomRoomTypeHowTo.html" title="Custom room type">Custom room type</a></li>
<li ><a href="CustomCryptMechanism.html" title="Custom crypt mechanism">Custom crypt mechanism</a></li>
<li ><a href="GeneralConfiguration.html" title="General Configuration">General Configuration</a></li>
</ul>
</li>
<li class="dropdown-submenu ">
<a href="ReleaseGuide.html#security" title="Security">Security</a>
<ul class="dropdown-menu">
<li ><a href="RestrictedAccess.html" title="Restricted Access">Restricted Access</a></li>
<li ><a href="RTMPSAndHTTPS.html" title="RTMPS and HTTPS">RTMPS and HTTPS</a></li>
</ul>
</li>
<li class="dropdown-submenu ">
<a href="ReleaseGuide.html#convert" title="Converters">Converters</a>
<ul class="dropdown-menu">
<li ><a href="OpenOfficeConverter.html" title="OpenOffice Converter">OpenOffice Converter</a></li>
</ul>
</li>
<li class="dropdown-submenu ">
<a href="ReleaseGuide.html#cluster" title="Clustering">Clustering</a>
<ul class="dropdown-menu">
<li ><a href="Clustering.html" title="Clustering">Clustering</a></li>
</ul>
</li>
<li class="dropdown-submenu ">
<a href="ReleaseGuide.html#misc" title="Misc">Misc</a>
<ul class="dropdown-menu">
<li ><a href="GetVersionInfo.html" title="Get version info">Get version info</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div><!--/.nav-collapse -->
</div>
</div>
</div>
<div class="container">
<!-- Masthead
================================================== -->
<header>
<div class="jumbotron subhead">
<div class="row" id="banner">
<div class="span12">
<div class="pull-left">
<a href="index.html" id="bannerLeft"><img src="images/logo.png" alt='"'Apache OpenMeetings'"' /></a>
</div>
<div class="pull-right">
<a href="http://apache.org" id="bannerRight"><img src="http://apache.org/img/asf_logo.png" alt='"'Apache'"' /></a>
</div>
</div>
</div>
</div>
<div>
<ul class="breadcrumb">
<li class="publishDate version-date">Last Published: 2017-03-29</li>
</ul>
</div>
</header>
<div class="main-body">
<div class="row">
<div class="span8">
<div class="body-content">
<!-- Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License. -->
<div class="section">
<div class="page-header">
<h2 id="How_to_Build_a_Release_of_OpenMeetings">How to Build a Release of OpenMeetings</h2>
</div>
<div class="section">
<h3 id="Required_tools">Required tools</h3>
<div>
<p>To build a binary release of OpenMeetings you need: </p>
<ul>
<li>Sun JDK8</li>
<li>Apache Maven 3.3.9</li>
<li> SVN Command line client (Subversion 1.7 required!) <a class="externalLink" href="http://subversion.apache.org/packages.html" target="_blank" rel="nofollow">http://subversion.apache.org/packages.html</a> </li>
<li>A text editor</li>
<li>You need to be online! The build process actively downloads needed libraries and dependencies.</li>
<li>Valid certficate to be able to enter <a class="externalLink" href="https://securesigning.websecurity.symantec.com/csportal/">https://securesigning.websecurity.symantec.com/csportal/</a> Please ask INFRA in case you need one. </li>
</ul>
</div>
</div>
<div class="section">
<h3 id="Prepare_your_Apache_ID">Prepare your Apache ID</h3>
<div>
<ul>
<li><b>Every release package must be signed with a PGP/GPG key.</b><br /> So if you want to release a package your Apache Id must be connected with a PGP key! <br /> <br /> You might follow: <br /> <a class="externalLink" href="http://www.apache.org/dev/new-committers-guide.html#security-and-pgp" target="_blank">http://www.apache.org/dev/new-committers-guide.html#security-and-pgp </a> <br /> <br /> In short:
<ul>
<li>Create PGP key pairs (private + public) (and I recommend creating a Revoke Cert)</li>
<li>Upload the public key (either bei using the PGP Tool that you use to create the key) or by using the web form to: <a class="externalLink" href="http://pgp.mit.edu/" target="_blank" rel="nofollow">http://pgp.mit.edu/</a> </li>
<li>Add the fingerprint string (something like &quot;BF13 CF11 F9C9 0CBE 4413 09AB 0055 16BF 93A3 0395&quot;) to your profile at <a class="externalLink" href="https://id.apache.org/" target="_blank" rel="nofollow">https://id.apache.org/</a> </li>
<li> Wait for 6-8 hours, the server will search for a public key based on your fingerprint, if success it will create a file with your name at: <br /> <a class="externalLink" href="https://people.apache.org/keys/committer/">https://people.apache.org/keys/committer/</a> </li>
<li> If that is &quot;success&quot; then add your key to: <br /> <a class="externalLink" href="https://svn.apache.org/repos/asf/openmeetings/project/KEYS">https://svn.apache.org/repos/asf/openmeetings/project/KEYS</a> <br /> <br /> and follow the instructions in the file. </li>
</ul> </li>
<li><b>Maven</b><br />
<ul>
<li>Ensure you able to login to <a class="externalLink" href="https://repository.apache.org/">https://repository.apache.org</a></li>
<li> Set up development environment as described here: <a class="externalLink" href="http://www.apache.org/dev/publishing-maven-artifacts.html#dev-env">Setup development environment</a><br /> Don't forget to secure passwords as described here: <a class="externalLink" href="http://maven.apache.org/guides/mini/guide-encryption.html#How_to_create_a_master_password">Password Encryption</a> </li>
</ul> </li>
</ul>
</div>
</div>
<div class="section">
<h3 id="Step1_-_Prepare_files">Step1 - Prepare files</h3>
<ul>
<li> Check that all files:<br /> LICENSE, NOTICE, DISCLAIMER, CHANGELOG, README<br /> are up to date and refer to the right version. </li>
<li> Update following files in OM documentation:<br /> <tt>openmeetings-server/src/site/xdoc/index.xml</tt><br /> <tt>openmeetings-server/src/site/xdoc/NewsArchive.xml</tt><br /> <tt>openmeetings-server/src/site/xdoc/downloads.xml</tt><br /> </li>
<li> Create a TAG of the SVN tree that you would like to release<br /> Example:
<div class="source">
<pre>
svn copy -r1453158 https://svn.apache.org/repos/asf/openmeetings/application/trunk \
https://svn.apache.org/repos/asf/openmeetings/application/tags/3.1.0RC1 \
-m &quot;3.1.0 Release candidate 1&quot;
</pre>
</div> </li>
<li> <p>Get the source from your TAG: </p>
<div class="source">
<pre>svn checkout https://svn.apache.org/repos/asf/openmeetings/application/tags/$BRANCHORTAG/</pre>
</div> <p>$BRANCHORTAG should be replaced with your new TAG</p> </li>
<li> <p>Update versions of all modules</p>
<div class="source">
<pre>mvn versions:set -DgenerateBackupPoms=false -DnewVersion=3.1.0</pre>
</div> </li>
<li>Deploy release artifacts to Maven
<ul>
<li>
<div class="source">
<pre>
mvn clean
mvn deploy -Pdeploy,rc
</pre>
</div> </li>
</ul> </li>
<li> <p>Run the command: </p>
<div class="source">
<pre>mvn clean install -P allModules,rc</pre>
</div> </li>
<li> <p>Test building the source on windows and OSx or Linux</p> <p>Test running the binary's</p> </li>
<li> <p> Commit artifacts you have created with KEYS file to the <tt>https://dist.apache.org/repos/dist/dev/openmeetings/</tt> Proposed file structure for &quot;Release Candidate 1&quot; of 3.1.0 will be: </p>
<div class="source">
<pre>
3.1.0
3.1.0/rc1
3.1.0/rc1/src
3.1.0/rc1/src/apache-openmeetings-3.1.0-src.zip
3.1.0/rc1/src/apache-openmeetings-3.1.0-src.tar.gz
3.1.0/rc1/src/apache-openmeetings-3.1.0-src.zip.sha
3.1.0/rc1/src/apache-openmeetings-3.1.0-src.zip.asc
3.1.0/rc1/src/apache-openmeetings-3.1.0-src.tar.gz.sha
3.1.0/rc1/src/apache-openmeetings-3.1.0-src.tar.gz.asc
3.1.0/rc1/bin
3.1.0/rc1/bin/apache-openmeetings-3.1.0.zip
3.1.0/rc1/bin/apache-openmeetings-3.1.0.tar.gz
3.1.0/rc1/bin/apache-openmeetings-3.1.0.zip.sha
3.1.0/rc1/bin/apache-openmeetings-3.1.0.zip.asc
3.1.0/rc1/bin/apache-openmeetings-3.1.0.tar.gz.sha
3.1.0/rc1/bin/apache-openmeetings-3.1.0.tar.gz.asc
3.1.0/rc1/CHANGELOG
3.1.0/rc1/KEYS
</pre>
</div> </li>
</ul>
</div>
<div class="section">
<h3 id="Step2_-_VOTE_and_RESULT_emails">Step2 - VOTE and RESULT emails</h3>
<p> Send a &quot;VOTE&quot; to the developer mailing list including links to release artifacts.<br /> A VOTE always contains two parts:<br /> Send an email to the developer mailing list with the subject line:<br /> [VOTE] Apache OpenMeetings x.xx release<br /> An example for such an email: <a class="externalLink" href="http://mail-archives.apache.org/mod_mbox/openmeetings-dev/201701.mbox/%3CCAJmbs8jZ7EiXoeBbG4ynvg30FPx2nAOJMypE2Qp-v-c63ayO9A%40mail.gmail.com%3E">example Vote email</a> <a class="externalLink" href="http://s.apache.org/vote-2.0.0RC4">example Vote email (Incubator)</a> <br /> Forward (Not CC) this Vote email to: private@openmeetings.apache.org<br /> <br /> After the vote is over, send a &quot;RESULT&quot; email to the list with the subject line:<br /> [RESULT][VOTE] Apache OpenMeetings x.xx release<br /> An example for such an email: <a class="externalLink" href="http://mail-archives.apache.org/mod_mbox/openmeetings-dev/201701.mbox/%3CCAJmbs8gyvHuarzdVma%2BF6ap7RHBhhVciZp5Oi5JogQdLR6o0NA%40mail.gmail.com%3E">example Result email</a> <br /> Forward (Not CC) this RESULT VOTE email to: private@openmeetings.apache.org<br /> <br /> Votes on whether a package is ready to be released use majority approval -- i.e., at least three PMC members must vote affirmatively for release, and there must be more positive than negative votes. Releases may not be vetoed. Before voting +1 PMC members are required to download the signed source code package, compile it as provided, and test the resulting executable on their own platform, along with also verifying that the package meets the requirements of the ASF policy on releases. </p>
</div>
<div class="section">
<h3 id="Step3_-_Sign_web_start_application">Step3 - Sign web start application</h3>
<p>If VOTEs positive: Sign screen sharing web application and re-pack the release</p>
<ul>
<li>Go to the folder you check out: https://svn.apache.org/repos/asf/openmeetings/application/tags/$BRANCHORTAG/</li>
<li> <p>Run the command: </p>
<div class="source">
<pre>
cd openmeetings-screenshare
mvn clean install -Prc,release
</pre>
</div> </li>
<li>Go to <a class="externalLink" href="https://securesigning.websecurity.symantec.com/csportal/">https://securesigning.websecurity.symantec.com/csportal/</a></li>
<li>Select &quot;Signing Sets&quot;</li>
<li>Select &quot;Add signing set&quot;</li>
<li>Enter &quot;Signing set name&quot; (must include &quot;Apache OpenMeetings&quot; and version) for ex. &quot;Apache OpenMeetings 3.1.0-RELEASE&quot;</li>
<li>Enter &quot;Version&quot; for ex. &quot;3.1.0-RELEASE&quot;</li>
<li>Select &quot;Java Signing Sha256&quot; as &quot;Signing service&quot;</li>
<li>Select &quot;Upload files&quot; and add all <b>jar</b> files from <tt>target/jnlp</tt></li>
<li>Select &quot;Sign now&quot;</li>
<li>Select &quot;Type of signing&quot; -&gt; &quot;Production&quot;</li>
<li>Select &quot;Sign&quot;</li>
<li>Select &quot;Download set&quot;</li>
<li>Open binary artifacts of OM created on previous step (both <b>tar.gz</b> and <b>zip</b>)</li>
<li>Replace jar files inside artifacts <tt>webapps/openmeetings/screenshare</tt> with the signed ones</li>
<li> Re-create artifact signatures <p>Create sha256sum checksums</p>
<div class="source">
<pre>
#On OSX you might use this command to make a SHA checksum and store it to a file
shasum -a 256 -r apache-openmeetings-XXX-src.zip &gt;apache-openmeetings-XXX-src.zip.sha256
</pre>
</div>
<div class="source">
<pre>
#To create SHA hashes On Ubuntu:
for f in `ls -1 *.tar.gz *.zip`; do sha256sum $f &gt; $f.sha256; done
#To check SHA hashes On Ubuntu:
for f in `ls -1 *.tar.gz *.zip`; do sha256sum -c $f.sha256; done
</pre>
</div> <p> Create signatures with the your KEY for every file, the KEY must be available at:<br /> <a class="externalLink" href="https://svn.apache.org/repos/asf/openmeetings/project/KEYS"> https://svn.apache.org/repos/asf/openmeetings/project/KEYS </a> </p>
<div class="source">
<pre>
#To create signatures On Ubuntu:
for f in `ls -1 *.tar.gz *.zip`; do gpg --armor --output $f.asc --detach-sig $f; done
#To check signatures On Ubuntu:
for f in `ls -1 *.tar.gz *.zip`; do gpg --verify $f.asc; done
</pre>
</div> </li>
</ul>
<p>NOTE: &quot;Type of signing&quot; can be selected as &quot;Test&quot; to check everything works as expected</p>
</div>
<div class="section">
<h3 id="Step4_-_Distribute_and_announce">Step4 - Distribute and announce</h3>
<p>If VOTEs positive: Upload the release </p>
<ul>
<li>Upload Artifacts with signatures created on the previous steps to https://dist.apache.org/repos/dist/release/openmeetings/CURRENT_VERSION </li>
<li>Close staging repo:
<ul>
<li>Go to: <a class="externalLink" href="https://repository.apache.org/#stagingRepositories">Staging Repositories</a></li>
<li>Select openmeetings staging repo and Close it with valid message:<br /> for ex. &quot;The VOTE about 3.1.2 release was successful&quot; </li>
<li>Select openmeetings staging repo and Release it with valid message:<br /> for ex. &quot;The VOTE about 3.1.2 release was successful&quot; </li>
</ul> </li>
<li> Wait 24 hours (until all Apache mirrors have synced the packages) and send an announcement to the mailing list + blog and any other channel. </li>
<li> Email announcements should have the subject line:<br /> [ANNOUNCE] Apache OpenMeetings x.xx released </li>
<li> Update release section of DOAP file <tt>site/trunk/doap.rdf (https://svn.apache.org/repos/asf/openmeetings/site/trunk/doap.rdf)</tt> </li>
<li> Add a section to <a href="downloads.html">downloads</a> website.<br /> Make sure that the binary packages are linked using the mirror URL as base path ( <b>not</b> http://www.apache.org/dist):<br /> Mirror URL: <a class="externalLink" href="http://www.apache.org/dyn/closer.lua/openmeetings/">http://www.apache.org/dyn/closer.lua/openmeetings/</a> </li>
<li> Release candidates should be deleted from <tt>https://dist.apache.org/repos/dist/dev/openmeetings/</tt><br /> Old releases should be deleted from <tt>https://dist.apache.org/repos/dist/release/openmeetings/</tt> </li>
</ul>
</div>
</div>
</div>
</div>
<div class="span4">
<div id="toc-sidebar">
<div class="well">
<ul class="nav nav-list">
<li class="nav-header">Table of Contents</li>
<li class="dropdown"><a href="#How_to_Build_a_Release_of_OpenMeetings" title="How to Build a Release of OpenMeetings">How to Build a Release of OpenMeetings <b class="caret"></b></a>
<ul class="nav nav-list">
<li><a href="#Required_tools" title="Required tools">Required tools</a>
<li><a href="#Prepare_your_Apache_ID" title="Prepare your Apache ID">Prepare your Apache ID</a>
<li><a href="#Step1_-_Prepare_files" title="Step1 - Prepare files">Step1 - Prepare files</a>
<li><a href="#Step2_-_VOTE_and_RESULT_emails" title="Step2 - VOTE and RESULT emails">Step2 - VOTE and RESULT emails</a>
<li><a href="#Step3_-_Sign_web_start_application" title="Step3 - Sign web start application">Step3 - Sign web start application</a>
<li><a href="#Step4_-_Distribute_and_announce" title="Step4 - Distribute and announce">Step4 - Distribute and announce</a>
<li class="divider"></li>
</ul>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div><!-- /container -->
<!-- Footer
================================================== -->
<footer class="well">
<div class="container">
<div class="row">
<div class="span3 bottom-nav">
<ul class="nav nav-list">
<li class="nav-header">General</li>
<li >
<a href="index.html" title="Home">Home</a>
</li>
<li >
<a href="license.html" title="License">License</a>
</li>
<li >
<a href="http://www.apache.org/" title="ASF" class="externalLink">ASF</a>
</li>
<li >
<a href="CallForLogo.html" title="Call For Logo">Call For Logo</a>
</li>
<li >
<a href="NewsArchive.html" title="News archive">News archive</a>
</li>
<li >
<a href="security.html" title="Security">Security</a>
</li>
<li >
<a href="commercial-support.html" title="Commercial Support">Commercial Support</a>
</li>
</ul>
</div>
<div class="span3 bottom-nav">
<ul class="nav nav-list">
<li class="nav-header">Installation</li>
<li >
<a href="installation.html" title="Installation">Installation</a>
</li>
<li >
<a href="Upgrade.html" title="Upgrade">Upgrade</a>
</li>
<li >
<a href="https://cwiki.apache.org/confluence/display/OPENMEETINGS/Tutorials+for+installing+OpenMeetings+and+Tools" title="Tutorials" class="externalLink">Tutorials</a>
</li>
<li >
<a href="CommandLineAdmin.html" title="Command Line Admin">Command Line Admin</a>
</li>
</ul>
</div>
<div class="span3 bottom-nav">
<ul class="nav nav-list">
<li class="nav-header">Community</li>
<li >
<a href="get-involved.html" title="Get Involved">Get Involved</a>
</li>
<li >
<a href="team-list.html" title="Committers">Committers</a>
</li>
<li >
<a href="OurUsers.html" title="Our Users">Our Users</a>
</li>
<li >
<a href="mail-lists.html" title="Mailing Lists">Mailing Lists</a>
</li>
<li >
<a href="http://cwiki.apache.org/confluence/display/OPENMEETINGS/" title="Wiki" class="externalLink">Wiki</a>
</li>
</ul>
</div>
<div class="span3 bottom-nav">
<ul class="nav nav-list">
<li class="nav-header">Development</li>
<li >
<a href="source-repository.html" title="Source Code">Source Code</a>
</li>
<li >
<a href="issue-tracking.html" title="Bugs / Issues">Bugs / Issues</a>
</li>
<li >
<a href="dependencies.html" title="Dependencies">Dependencies</a>
</li>
<li >
<a href="integration.html" title="Continuous Integration">Continuous Integration</a>
</li>
<li >
<a href="BuildInstructions_3.0.x.html" title="Build Instructions 3.0.x">Build Instructions 3.0.x</a>
</li>
<li >
<a href="BuildInstructions.html" title="Build Instructions">Build Instructions</a>
</li>
<li >
<a href="JUnitTesting.html" title="JUnit Testing">JUnit Testing</a>
</li>
<li >
<a href="ManualTesting.html" title="Manual Testing">Manual Testing</a>
</li>
<li class="active">
<a href="#" title="Release Guide">Release Guide</a>
</li>
<li >
<a href="WebsiteGuide.html" title="Website Guide">Website Guide</a>
</li>
</ul>
</div>
</div>
</div>
</footer>
<div class="container subfooter">
<div class="row">
<div class="span12">
<p class="pull-right"><a href="#">Back to top</a></p>
<p class="copyright">Copyright &copy;2012-2017 <a href="http://apache.org">Apache Software Foundation</a>. All Rights Reserved.</p>
</div>
</div>
</div>
<!-- Le javascript
================================================== -->
<!-- Placed at the end of the document so the pages load faster -->
<script src=".//js/jquery.min.js"></script>
<script src=".//js/bootstrap.min.js"></script>
<script src=".//js/lightbox.min.js"></script>
<script src=".//js/reflow-scroll.js"></script>
<script src=".//js/jquery-ui.min.js" type="text/javascript"></script>
<script src=".//js/netcalc.js" type="text/javascript"></script>
<script src=".//js/reflow-skin.js"></script>
</body>
</html>