<!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="The Apache Cassandra database is the right choice when you need scalability and high availability without compromising performance. Linear scalability and proven fault-tolerance on commodity hardware or cloud infrastructure make it the perfect platform for mission-critical data. Cassandra's support for replicating across multiple datacenters is best-in-class, providing lower latency for your users and the peace of mind of knowing that you can survive regional outages.
">
  <meta name="keywords" content="cassandra, apache, apache cassandra, distributed storage, key value store, scalability, bigtable, dynamo" />
  <meta name="robots" content="index,follow" />
  <meta name="language" content="en" />  

  <title>Documentation</title>

  <link rel="canonical" href="http://cassandra.apache.org/doc/4.0-alpha1/development/release_process.html">

  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
  <link rel="stylesheet" href="./../../../css/style.css">
  
  <link rel="stylesheet" href="./../../../css/sphinx.css">
  

   <link rel="top" title="Apache Cassandra Documentation v4.0-alpha1" href="../index.html"/> <link rel="up" title="Contributing to Cassandra" href="index.html"/> <link rel="next" title="Frequently Asked Questions" href="../faq/index.html"/> <link rel="prev" title="Dependency Management" href="dependencies.html"/> 
  <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.2.0/css/all.css" integrity="sha384-hWVjflwFxL6sNzntih27bfxkr27PmbbK/iSvJ+a4+0owXq79v+lsFkW54bOGbiDQ" crossorigin="anonymous">
  
  <link type="application/atom+xml" rel="alternate" href="http://cassandra.apache.org/feed.xml" title="Apache Cassandra Website" />
</head>

  <body>
    <!-- breadcrumbs -->
<div class="topnav">
  <div class="container breadcrumb-container">
    <ul class="breadcrumb">
      <li>
        <div class="dropdown">
          <img class="asf-logo" src="./../../../img/asf_feather.png" />
          <a data-toggle="dropdown" href="#">Apache Software Foundation <span class="caret"></span></a>
          <ul class="dropdown-menu" role="menu" aria-labelledby="dLabel">
            <li><a href="http://www.apache.org">Apache Homepage</a></li>
            <li><a href="http://www.apache.org/licenses/">License</a></li>
            <li><a href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
            <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
            <li><a href="http://www.apache.org/security/">Security</a></li>
          </ul>
        </div>
      </li>

      
      <li><a href="./../../../">Apache Cassandra</a></li>
      

      
        
        <li><a href="./../../../doc/latest/">Documentation</a></li>
        
      

      
      <li><a href="./">Contributing to Cassandra</a></li>
      

      
      <li>Release Process</li>
      
    </ul>
  </div>

  <!-- navbar -->
  <nav class="navbar navbar-default navbar-static-top" role="navigation">
    <div class="container">
      <div class="navbar-header">
        <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#cassandra-menu" aria-expanded="false">
          <span class="sr-only">Toggle navigation</span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
        </button>
        <a class="navbar-brand" href="./../../../"><img src="./../../../img/cassandra_logo.png" alt="Apache Cassandra logo" /></a>
      </div><!-- /.navbar-header -->

      <div id="cassandra-menu" class="collapse navbar-collapse">
        <ul class="nav navbar-nav navbar-right">
          <li><a href="./../../../">Home</a></li>
          <li><a href="./../../../download/">Download</a></li>
          <li><a href="./../../../doc/latest/">Documentation</a></li>
          <li><a href="./../../../community/">Community</a></li>
          <li>
            <a href="./../../../blog/">Blog</a>
        </li>
        </ul>
      </div><!-- /#cassandra-menu -->

      
    </div>
  </nav><!-- /.navbar -->
</div><!-- /.topnav -->

    <div class="container-fluid">
  <div class="row">
    <div class="col-md-3">
      <div class="doc-navigation">
        <div class="doc-menu" role="navigation">
          <div class="navbar-header">
            <button type="button" class="pull-left navbar-toggle" data-toggle="collapse" data-target=".sidebar-navbar-collapse">
              <span class="sr-only">Toggle navigation</span>
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
            </button>
          </div>
          <div class="navbar-collapse collapse sidebar-navbar-collapse">
            <form id="doc-search-form" class="navbar-form" action="../search.html" method="get" role="search">
              <div class="form-group">
                <input type="text" size="30" class="form-control input-sm" name="q" placeholder="Search docs">
                <input type="hidden" name="check_keywords" value="yes" />
                <input type="hidden" name="area" value="default" />
              </div>
            </form>
            
            
            
            <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../getting_started/index.html">Getting Started</a></li>
<li class="toctree-l1"><a class="reference internal" href="../architecture/index.html">Architecture</a></li>
<li class="toctree-l1"><a class="reference internal" href="../data_modeling/index.html">Data Modeling</a></li>
<li class="toctree-l1"><a class="reference internal" href="../cql/index.html">The Cassandra Query Language (CQL)</a></li>
<li class="toctree-l1"><a class="reference internal" href="../configuration/index.html">Configuring Cassandra</a></li>
<li class="toctree-l1"><a class="reference internal" href="../operating/index.html">Operating Cassandra</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tools/index.html">Cassandra Tools</a></li>
<li class="toctree-l1"><a class="reference internal" href="../troubleshooting/index.html">Troubleshooting</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="index.html">Contributing to Cassandra</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="gettingstarted.html">Getting Started</a></li>
<li class="toctree-l2"><a class="reference internal" href="ide.html">Building and IDE Integration</a></li>
<li class="toctree-l2"><a class="reference internal" href="testing.html">Testing</a></li>
<li class="toctree-l2"><a class="reference internal" href="patches.html">Contributing Code Changes</a></li>
<li class="toctree-l2"><a class="reference internal" href="code_style.html">Code Style</a></li>
<li class="toctree-l2"><a class="reference internal" href="how_to_review.html">Review Checklist</a></li>
<li class="toctree-l2"><a class="reference internal" href="how_to_commit.html">How-to Commit</a></li>
<li class="toctree-l2"><a class="reference internal" href="documentation.html">Working on Documentation</a></li>
<li class="toctree-l2"><a class="reference internal" href="ci.html">Jenkins CI Environment</a></li>
<li class="toctree-l2"><a class="reference internal" href="dependencies.html">Dependency Management</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">Release Process</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#prerequisites">Prerequisites</a></li>
<li class="toctree-l3"><a class="reference internal" href="#create-release-artifacts">Create Release Artifacts</a></li>
<li class="toctree-l3"><a class="reference internal" href="#call-for-a-vote">Call for a Vote</a></li>
<li class="toctree-l3"><a class="reference internal" href="#post-vote-operations">Post-vote operations</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../faq/index.html">Frequently Asked Questions</a></li>
<li class="toctree-l1"><a class="reference internal" href="../plugins/index.html">Third-Party Plugins</a></li>
<li class="toctree-l1"><a class="reference internal" href="../bugs.html">Reporting Bugs</a></li>
<li class="toctree-l1"><a class="reference internal" href="../contactus.html">Contact us</a></li>
</ul>

            
            
          </div><!--/.nav-collapse -->
        </div>
      </div>
    </div>
    <div class="col-md-8">
      <div class="content doc-content">
        <div class="content-container">
          
  <div class="section" id="release-process">
<h1><a class="toc-backref" href="#id1">Release Process</a><a class="headerlink" href="#release-process" title="Permalink to this headline">¶</a></h1>
<div class="contents topic" id="contents">
<p class="topic-title">Contents</p>
<ul class="simple">
<li><a class="reference internal" href="#release-process" id="id1">Release Process</a><ul>
<li><a class="reference internal" href="#prerequisites" id="id2">Prerequisites</a><ul>
<li><a class="reference internal" href="#create-and-publish-your-gpg-key" id="id3">Create and publish your GPG key</a></li>
</ul>
</li>
<li><a class="reference internal" href="#create-release-artifacts" id="id4">Create Release Artifacts</a><ul>
<li><a class="reference internal" href="#perform-the-release" id="id5">Perform the Release</a></li>
</ul>
</li>
<li><a class="reference internal" href="#call-for-a-vote" id="id6">Call for a Vote</a></li>
<li><a class="reference internal" href="#post-vote-operations" id="id7">Post-vote operations</a><ul>
<li><a class="reference internal" href="#publish-artifacts" id="id8">Publish Artifacts</a></li>
<li><a class="reference internal" href="#promote-nexus-repository" id="id9">Promote Nexus Repository</a></li>
<li><a class="reference internal" href="#sign-and-upload-distribution-packages-to-bintray" id="id10">Sign and Upload Distribution Packages to Bintray</a></li>
<li><a class="reference internal" href="#update-and-publish-website" id="id11">Update and Publish Website</a></li>
<li><a class="reference internal" href="#release-version-in-jira" id="id12">Release version in JIRA</a></li>
<li><a class="reference internal" href="#update-to-next-development-version" id="id13">Update to Next Development Version</a></li>
<li><a class="reference internal" href="#wait-for-artifacts-to-sync" id="id14">Wait for Artifacts to Sync</a></li>
<li><a class="reference internal" href="#send-release-announcement" id="id15">Send Release Announcement</a></li>
<li><a class="reference internal" href="#update-slack-cassandra-topic" id="id16">Update Slack Cassandra topic</a></li>
<li><a class="reference internal" href="#tweet-from-cassandra" id="id17">Tweet from &#64;Cassandra</a></li>
<li><a class="reference internal" href="#delete-old-releases" id="id18">Delete Old Releases</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="line-block">
<div class="line"><br /></div>
<div class="line"><br /></div>
</div>
<div class="admonition attention">
<p class="first admonition-title">Attention</p>
<dl class="last docutils">
<dt>WORK IN PROGRESS</dt>
<dd><ul class="first last simple">
<li>A number of these steps still have been finalised/tested.</li>
<li>The use of people.apache.org needs to be replaced with svnpubsub and dist.apache.org</li>
</ul>
</dd>
</dl>
</div>
<p>The steps for Release Managers to create, vote and publish releases for Apache Cassandra.</p>
<p>While a committer can perform the initial steps of creating and calling a vote on a proposed release, only a PMC can complete the process of publishing and announcing the release.</p>
<div class="section" id="prerequisites">
<h2><a class="toc-backref" href="#id2">Prerequisites</a><a class="headerlink" href="#prerequisites" title="Permalink to this headline">¶</a></h2>
<dl class="docutils">
<dt>Background docs</dt>
<dd><ul class="first last simple">
<li><a class="reference external" href="http://www.apache.org/legal/release-policy.html">ASF Release Policy</a></li>
<li><a class="reference external" href="http://www.apache.org/dev/release-distribution">ASF Release Distribution Policy</a></li>
<li><a class="reference external" href="http://www.eu.apache.org/dev/release-publishing.html">ASF Release Best Practices</a></li>
</ul>
</dd>
</dl>
<p>A debian based linux OS is required to run the release steps from. Debian-based distros provide the required RPM, dpkg and repository management tools.</p>
<div class="section" id="create-and-publish-your-gpg-key">
<h3><a class="toc-backref" href="#id3">Create and publish your GPG key</a><a class="headerlink" href="#create-and-publish-your-gpg-key" title="Permalink to this headline">¶</a></h3>
<p>To create a GPG key, follow the <a class="reference external" href="http://www.apache.org/dev/openpgp.html">guidelines</a>.
Include your public key in:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>https://dist.apache.org/repos/dist/release/cassandra/KEYS
</pre></div>
</div>
<p>Publish your GPG key in a PGP key server, such as <a class="reference external" href="http://pgp.mit.edu/">MIT Keyserver</a>.</p>
</div>
</div>
<div class="section" id="create-release-artifacts">
<h2><a class="toc-backref" href="#id4">Create Release Artifacts</a><a class="headerlink" href="#create-release-artifacts" title="Permalink to this headline">¶</a></h2>
<p>Any committer can perform the following steps to create and call a vote on a proposed release.</p>
<p>Check that no open jira tickets are urgent and currently being worked on.
Also check with a PMC that there’s security vulnerabilities currently being worked on in private.</p>
<div class="section" id="perform-the-release">
<h3><a class="toc-backref" href="#id5">Perform the Release</a><a class="headerlink" href="#perform-the-release" title="Permalink to this headline">¶</a></h3>
<p>Run the following commands to generate and upload release artifacts, to a nexus staging repository and distribution location:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>cd ~/git
git clone https://github.com/apache/cassandra-builds.git
# Edit the variables at the top of `cassandra-builds/cassandra-release/prepare_release.sh`

# After cloning cassandra-builds repo, the prepare_release.sh is run from the actual cassandra git checkout,
# on the branch/commit that we wish to tag for the tentative release along with version number to tag.
# For example here &lt;version-branch&gt; might be `3.11` and &lt;version&gt; `3.11.3`
cd ~/git/cassandra/
git checkout cassandra-&lt;version-branch&gt;
../cassandra-builds/cassandra-release/prepare_release.sh -v &lt;version&gt;
</pre></div>
</div>
<p>If successful, take note of the email text output which can be used in the next section “Call for a Vote”.</p>
<p>The <code class="docutils literal notranslate"><span class="pre">prepare_release.sh</span></code> script does not yet generate and upload the rpm distribution packages.
To generate and upload them do:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>cd ~/git/cassandra-build
docker build -f docker/centos7-image.docker docker/
docker run --rm -v `pwd`/dist:/dist `docker images -f label=org.cassandra.buildenv=centos -q` /home/build/build-rpms.sh &lt;version&gt;-tentative
rpmsign --addsign dist/*.rpm
</pre></div>
</div>
<p>For more information on the above steps see the <a class="reference external" href="https://github.com/apache/cassandra-builds">cassandra-builds documentation</a>.
The next step is to copy and commit these binaries to staging svnpubsub:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span># FIXME the following commands is wrong while people.apache.org is still used instead of svnpubsub and dist.apache.org
cd ~/git
svn co https://dist.apache.org/repos/dist/dev/cassandra cassandra-dist-dev
mkdir cassandra-dist-dev/&lt;version&gt;
cp cassandra-build/dist/*.rpm cassandra-dist-dev/&lt;version&gt;/

svn add cassandra-dist-dev/&lt;version&gt;
svn ci cassandra-dist-dev/&lt;version&gt;
</pre></div>
</div>
</div>
</div>
<div class="section" id="call-for-a-vote">
<h2><a class="toc-backref" href="#id6">Call for a Vote</a><a class="headerlink" href="#call-for-a-vote" title="Permalink to this headline">¶</a></h2>
<p>Fill out the following email template and send to the dev mailing list:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>I propose the following artifacts for release as &lt;version&gt;.

sha1: &lt;git-sha&gt;

Git: https://gitbox.apache.org/repos/asf?p=cassandra.git;a=shortlog;h=refs/tags/&lt;version&gt;-tentative

Artifacts: https://repository.apache.org/content/repositories/orgapachecassandra-&lt;nexus-id&gt;/org/apache/cassandra/apache-cassandra/&lt;version&gt;/

Staging repository: https://repository.apache.org/content/repositories/orgapachecassandra-&lt;nexus-id&gt;/

The distribution packages are available here: https://dist.apache.org/repos/dist/dev/cassandra/${version}/

The vote will be open for 72 hours (longer if needed).

[1]: (CHANGES.txt) https://git1-us-west.apache.org/repos/asf?p=cassandra.git;a=blob_plain;f=CHANGES.txt;hb=&lt;version&gt;-tentative
[2]: (NEWS.txt) https://git1-us-west.apache.org/repos/asf?p=cassandra.git;a=blob_plain;f=NEWS.txt;hb=&lt;version&gt;-tentative
</pre></div>
</div>
</div>
<div class="section" id="post-vote-operations">
<h2><a class="toc-backref" href="#id7">Post-vote operations</a><a class="headerlink" href="#post-vote-operations" title="Permalink to this headline">¶</a></h2>
<p>Any PMC can perform the following steps to formalize and publish a successfully voted release.</p>
<div class="section" id="publish-artifacts">
<h3><a class="toc-backref" href="#id8">Publish Artifacts</a><a class="headerlink" href="#publish-artifacts" title="Permalink to this headline">¶</a></h3>
<p>Run the following commands to publish the voted release artifacts:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>cd ~/git
git clone https://github.com/apache/cassandra-builds.git
# edit the variables at the top of `finish_release.sh`

# After cloning cassandra-builds repo, `finish_release.sh` is run from the actual cassandra git checkout,
# on the tentative release tag that we wish to tag for the final release version number tag.
cd ~/git/cassandra/
git checkout &lt;version&gt;-tentative
../cassandra-builds/cassandra-release/finish_release.sh -v &lt;version&gt; &lt;staging_number&gt;
</pre></div>
</div>
<p>If successful, take note of the email text output which can be used in the next section “Send Release Announcement”.
The output will also list the next steps that are required. The first of these is to commit changes made to your <a class="reference external" href="https://dist.apache.org/repos/dist/release/cassandra/">https://dist.apache.org/repos/dist/release/cassandra/</a> checkout.</p>
</div>
<div class="section" id="promote-nexus-repository">
<h3><a class="toc-backref" href="#id9">Promote Nexus Repository</a><a class="headerlink" href="#promote-nexus-repository" title="Permalink to this headline">¶</a></h3>
<blockquote>
<div><ul class="simple">
<li>Login to <a class="reference external" href="https://repository.apache.org">Nexus repository</a> again.</li>
<li>Click on “Staging” and then on the repository with id “cassandra-staging”.</li>
<li>Find your closed staging repository, right click on it and choose “Promote”.</li>
<li>Select the “Releases” repository and click “Promote”.</li>
<li>Next click on “Repositories”, select the “Releases” repository and validate that your artifacts exist as you expect them.</li>
</ul>
</div></blockquote>
</div>
<div class="section" id="sign-and-upload-distribution-packages-to-bintray">
<h3><a class="toc-backref" href="#id10">Sign and Upload Distribution Packages to Bintray</a><a class="headerlink" href="#sign-and-upload-distribution-packages-to-bintray" title="Permalink to this headline">¶</a></h3>
<p>Run the following command:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>cd ~/git
# FIXME the next command is wrong while people.apache.org is used instead of svnpubsub and dist.apache.org
svn mv https://dist.apache.org/repos/dist/dev/cassandra/&lt;version&gt; https://dist.apache.org/repos/dist/release/cassandra/

# Create the yum metadata, sign the metadata, and sign some files within the signed repo metadata that the ASF sig tool errors out on
svn co https://dist.apache.org/repos/dist/release/cassandra/redhat/ cassandra-dist-redhat
cd cassandra-dist-redhat/&lt;abbreviated-version&gt;x/
createrepo .
gpg --detach-sign --armor repodata/repomd.xml
for f in `find repodata/ -name *.bz2`; do
  gpg --detach-sign --armor $f;
done

svn co https://dist.apache.org/repos/dist/release/cassandra/&lt;version&gt; cassandra-dist-&lt;version&gt;
cd cassandra-dist-&lt;version&gt;
cassandra-build/cassandra-release/upload_bintray.sh cassandra-dist-&lt;version&gt;
</pre></div>
</div>
</div>
<div class="section" id="update-and-publish-website">
<h3><a class="toc-backref" href="#id11">Update and Publish Website</a><a class="headerlink" href="#update-and-publish-website" title="Permalink to this headline">¶</a></h3>
<p>See <a href="#id19"><span class="problematic" id="id20">`docs https://svn.apache.org/repos/asf/cassandra/site/src/README`_</span></a> for building and publishing the website.
Also update the CQL doc if appropriate.</p>
</div>
<div class="section" id="release-version-in-jira">
<h3><a class="toc-backref" href="#id12">Release version in JIRA</a><a class="headerlink" href="#release-version-in-jira" title="Permalink to this headline">¶</a></h3>
<p>Release the JIRA version.</p>
<blockquote>
<div><ul class="simple">
<li>In JIRA go to the version that you want to release and release it.</li>
<li>Create a new version, if it has not been done before.</li>
</ul>
</div></blockquote>
</div>
<div class="section" id="update-to-next-development-version">
<h3><a class="toc-backref" href="#id13">Update to Next Development Version</a><a class="headerlink" href="#update-to-next-development-version" title="Permalink to this headline">¶</a></h3>
<p>Edit and commit <code class="docutils literal notranslate"><span class="pre">build.xml</span></code> so the base.version property points to the next version.</p>
</div>
<div class="section" id="wait-for-artifacts-to-sync">
<h3><a class="toc-backref" href="#id14">Wait for Artifacts to Sync</a><a class="headerlink" href="#wait-for-artifacts-to-sync" title="Permalink to this headline">¶</a></h3>
<p>Wait for the artifacts to sync at <a class="reference external" href="http://www.apache.org/dist/cassandra/">http://www.apache.org/dist/cassandra/</a></p>
</div>
<div class="section" id="send-release-announcement">
<h3><a class="toc-backref" href="#id15">Send Release Announcement</a><a class="headerlink" href="#send-release-announcement" title="Permalink to this headline">¶</a></h3>
<p>Fill out the following email template and send to both user and dev mailing lists:</p>
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>The Cassandra team is pleased to announce the release of Apache Cassandra version &lt;version&gt;.

Apache Cassandra is a fully distributed database. It is the right choice
when you need scalability and high availability without compromising
performance.

 http://cassandra.apache.org/

Downloads of source and binary distributions are listed in our download
section:

 http://cassandra.apache.org/download/

This version is &lt;the first|a bug fix&gt; release[1] on the &lt;version-base&gt; series. As always,
please pay attention to the release notes[2] and let us know[3] if you
were to encounter any problem.

Enjoy!

[1]: (CHANGES.txt) https://git1-us-west.apache.org/repos/asf?p=cassandra.git;a=blob_plain;f=CHANGES.txt;hb=&lt;version&gt;
[2]: (NEWS.txt) https://git1-us-west.apache.org/repos/asf?p=cassandra.git;a=blob_plain;f=NEWS.txt;hb=&lt;version&gt;
[3]: https://issues.apache.org/jira/browse/CASSANDRA
</pre></div>
</div>
</div>
<div class="section" id="update-slack-cassandra-topic">
<h3><a class="toc-backref" href="#id16">Update Slack Cassandra topic</a><a class="headerlink" href="#update-slack-cassandra-topic" title="Permalink to this headline">¶</a></h3>
<dl class="docutils">
<dt>Update topic in <code class="docutils literal notranslate"><span class="pre">cassandra</span></code> <a class="reference internal" href="../contactus.html#slack"><span class="std std-ref">Slack room</span></a></dt>
<dd>/topic cassandra.apache.org | Latest releases: 3.11.4, 3.0.18, 2.2.14, 2.1.21 | ask, don’t ask to ask</dd>
</dl>
</div>
<div class="section" id="tweet-from-cassandra">
<h3><a class="toc-backref" href="#id17">Tweet from &#64;Cassandra</a><a class="headerlink" href="#tweet-from-cassandra" title="Permalink to this headline">¶</a></h3>
<p>Tweet the new release, from the &#64;Cassandra account</p>
</div>
<div class="section" id="delete-old-releases">
<h3><a class="toc-backref" href="#id18">Delete Old Releases</a><a class="headerlink" href="#delete-old-releases" title="Permalink to this headline">¶</a></h3>
<p>As described in <a class="reference external" href="http://www.apache.org/dev/release.html#when-to-archive">When to Archive</a>.
Also check people.apache.org as previous release scripts used it.</p>
</div>
</div>
</div>



          
          <div class="doc-prev-next-links" role="navigation" aria-label="footer navigation">
            
            <a href="../faq/index.html" class="btn btn-default pull-right " role="button" title="Frequently Asked Questions" accesskey="n">Next <span class="glyphicon glyphicon-circle-arrow-right" aria-hidden="true"></span></a>
            
            
            <a href="dependencies.html" class="btn btn-default" role="button" title="Dependency Management" accesskey="p"><span class="glyphicon glyphicon-circle-arrow-left" aria-hidden="true"></span> Previous</a>
            
          </div>
          
        </div>
      </div>
    </div>
  </div>
</div>

    <hr />

<footer>
  <div class="container">
    <div class="col-md-4 social-blk">
      <span class="social">
        <a href="https://twitter.com/cassandra"
           class="twitter-follow-button"
           data-show-count="false" data-size="large">Follow @cassandra</a>
        <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script>
        <a href="https://twitter.com/intent/tweet?button_hashtag=cassandra"
           class="twitter-hashtag-button"
           data-size="large"
           data-related="ApacheCassandra">Tweet #cassandra</a>
        <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script>

      </span>
      <a class="subscribe-rss icon-link" href="/feed.xml" title="Subscribe to Blog via RSS">
          <span><i class="fa fa-rss"></i></span>
      </a>
    </div>

    <div class="col-md-8 trademark">
      <p>&copy; 2016 <a href="http://apache.org">The Apache Software Foundation</a>.
      Apache, the Apache feather logo, and Apache Cassandra are trademarks of The Apache Software Foundation.
      <p>
    </div>
  </div><!-- /.container -->
</footer>

<!-- Javascript. Placed here so pages load faster -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="./../../../js/underscore-min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>


<script src="./../../../js/doctools.js"></script>
<script src="./../../../js/searchtools.js"></script>

 <script type="text/javascript"> var DOCUMENTATION_OPTIONS = { URL_ROOT:    "", VERSION:     "", COLLAPSE_INDEX: false, FILE_SUFFIX: ".html", HAS_SOURCE:  false, SOURCELINK_SUFFIX: ".txt" }; </script> 



<script type="text/javascript">
  var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
  document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

  try {
    var pageTracker = _gat._getTracker("UA-11583863-1");
    pageTracker._trackPageview();
  } catch(err) {}
</script>


  </body>
</html>
