accumulo-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ctubb...@apache.org
Subject [44/50] [abbrv] accumulo-website git commit: Jekyll build from gh-pages:a71ede8
Date Tue, 22 Nov 2016 19:41:41 GMT
http://git-wip-us.apache.org/repos/asf/accumulo-website/blob/59a6d65d/contributor/contrib-projects.html
----------------------------------------------------------------------
diff --git a/contributor/contrib-projects.html b/contributor/contrib-projects.html
new file mode 100644
index 0000000..08f9aac
--- /dev/null
+++ b/contributor/contrib-projects.html
@@ -0,0 +1,230 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+<!--
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You 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.
+-->
+<meta charset="utf-8">
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<link href="https://maxcdn.bootstrapcdn.com/bootswatch/3.3.7/paper/bootstrap.min.css" rel="stylesheet" integrity="sha384-awusxf8AUojygHf2+joICySzB780jVvQaVCAt1clU3QsyAitLGul28Qxb2r1e5g+" crossorigin="anonymous">
+<link href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css" rel="stylesheet">
+<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/v/bs/jq-2.2.3/dt-1.10.12/datatables.min.css">
+<link href="/css/accumulo.css" rel="stylesheet" type="text/css">
+
+<title>Contrib Projects</title>
+
+<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
+<script type="text/javascript" src="https://cdn.datatables.net/v/bs/jq-2.2.3/dt-1.10.12/datatables.min.js"></script>
+<script>
+  // show location of canonical site if not currently on the canonical site
+  $(function() {
+    var host = window.location.host;
+    if (typeof host !== 'undefined' && host !== 'accumulo.apache.org') {
+      $('#non-canonical').show();
+    }
+  });
+
+  $(function() {
+    // decorate section headers with anchors
+    return $("h2, h3, h4, h5, h6").each(function(i, el) {
+      var $el, icon, id;
+      $el = $(el);
+      id = $el.attr('id');
+      icon = '<i class="fa fa-link"></i>';
+      if (id) {
+        return $el.append($("<a />").addClass("header-link").attr("href", "#" + id).html(icon));
+      }
+    });
+  });
+  
+  // configure Google Analytics
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  if (ga.hasOwnProperty('loaded') && ga.loaded === true) {
+    ga('create', 'UA-50934829-1', 'apache.org');
+    ga('send', 'pageview');
+  }
+</script>
+
+</head>
+<body style="padding-top: 100px">
+
+  <nav class="navbar navbar-default navbar-fixed-top">
+  <div class="container">
+    <div class="navbar-header">
+      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-items">
+        <span class="sr-only">Toggle navigation</span>
+        <span class="icon-bar"></span>
+        <span class="icon-bar"></span>
+        <span class="icon-bar"></span>
+      </button>
+      <a href="/"><img id="nav-logo" alt="Apache Accumulo" class="img-responsive" src="/images/accumulo-logo.png" width="200"/></a>
+    </div>
+    <div class="collapse navbar-collapse" id="navbar-items">
+      <ul class="nav navbar-nav">
+        <li class="nav-link"><a href="/downloads">Download</a></li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Releases<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/release/accumulo-1.8.0/">1.8.0 (Latest)</a></li>
+          <li><a href="/release/accumulo-1.7.2/">1.7.2</a></li>
+          <li><a href="/release/accumulo-1.6.6/">1.6.6</a></li>
+          <li><a href="/release/">Archive</a></li>
+        </ul>
+        </li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Documentation<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/1.8/accumulo_user_manual.html">User Manual (1.8)</a></li>
+          <li><a href="/1.8/apidocs">Javadocs (1.8)</a></li>
+          <li><a href="/1.8/examples">Examples (1.8)</a></li>
+          <li><a href="/features">Features</a></li>
+          <li><a href="/papers">Papers &amp; Presentations</a></li>
+          <li><a href="/glossary">Glossary</a></li>
+          <li><a href="/docs-archive/">Archive</a></li>
+        </ul>
+        </li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Community<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/get_involved">Get Involved</a></li>
+          <li><a href="/mailing_list">Mailing Lists</a></li>
+          <li><a href="/people">People</a></li>
+          <li><a href="/projects">Related Projects</a></li>
+          <li><a href="/contributor/">Contributor Guide</a></li>
+          <li><a href="/governance/">Governance</a></li>
+        </ul>
+        </li>
+      </ul>
+      <ul class="nav navbar-nav navbar-right">
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Apache Software Foundation<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="https://www.apache.org">Apache Homepage <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/licenses/LICENSE-2.0">License <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/sponsorship">Sponsorship <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/security">Security <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/thanks">Thanks <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/policies/conduct">Code of Conduct <i class="fa fa-external-link"></i></a></li>
+        </ul>
+        </li>
+      </ul>
+    </div>
+  </div>
+</nav>
+
+
+  <div class="container">
+    <div class="row">
+      <div class="col-md-12">
+
+        <div id="non-canonical" style="display: none; background-color: #F0E68C; padding-left: 1em;">
+          Visit the official site at: <a href="https://accumulo.apache.org">https://accumulo.apache.org</a>
+        </div>
+        <div id="content">
+          
+          <h1 class="title">Contrib Projects</h1>
+          
+          <p>Apache Accumulo is a complex distributed system. In order to minimize that
+complexity for both operators and developers the project maintains contrib
+repositories for instructive applications and code that builds interoperability
+between Accumulo and other systems. This helps minimize the set of dependencies
+needed when building or installing Accumulo, keeps the build time down, and
+allows the contrib projects to follow their own release schedule.</p>
+
+<h2 id="existing-contrib-projects">Existing Contrib Projects</h2>
+
+<p>Each of the below contrib project handles their own development and release
+cycle. For information on what version(s) of Accumulo they work with, see the
+documentation for the individual project.</p>
+
+<h3 id="instamo-archetype">Instamo Archetype</h3>
+
+<p>A Maven Archetype that automates the customization of Instamo to quickly spin
+up an Accumulo process in memory.</p>
+
+<p>The Apache Accumulo Instamo Archetype uses <a href="http://git-scm.com">Git</a> version control
+(<a href="https://git-wip-us.apache.org/repos/asf?p=accumulo-instamo-archetype.git;a=summary">browse</a>|<a href="https://git-wip-us.apache.org/repos/asf/accumulo-instamo-archetype.git">checkout</a>). It builds with <a href="https://maven.apache.org">Apache
+Maven</a>. See the section <a href="#contributing-to-contrib">Contributing to Contrib</a> for
+instructions on submitting issues and patches.</p>
+
+<h3 id="wikisearch-application">Wikisearch Application</h3>
+
+<p>A complex application example that makes use of most of the Accumulo feature
+stack. The Wikisearch application provides an example of indexing and querying
+Wikipedia data within Accumulo. It is a great place to start if you want to get
+familiar with good development practices building on Accumulo.</p>
+
+<p>For details on setting up the application, see the project's README. You can
+also read <a href="example/wikisearch">an overview and some performance numbers</a>.</p>
+
+<p>The Apache Accumulo Wikisearch Example uses <a href="http://git-scm.com">Git</a> version control
+(<a href="https://git-wip-us.apache.org/repos/asf?p=accumulo-wikisearch.git;a=summary">browse</a>|<a href="https://git-wip-us.apache.org/repos/asf/accumulo-wikisearch.git">checkout</a>). It builds with
+<a href="https://maven.apache.org">Apache Maven</a>. See the section <a href="#contributing-to-contrib">Contributing to Contrib</a> for
+instructions on submitting issues and patches.</p>
+
+<h3 id="hama-integration">Hama Integration</h3>
+
+<p>An implementation for running <a href="https://hama.apache.org/hama_bsp_tutorial">Bulk Synchronous Parallel (BSP)
+algorithms</a> implemented via <a href="https://hama.apache.org">Apache Hama</a> on top of data stored
+in Accumulo.</p>
+
+<p>The Apache Accumulo BSP implementation uses <a href="http://git-scm.com">Git</a> version control
+(<a href="https://git-wip-us.apache.org/repos/asf?p=accumulo-bsp.git;a=summary">browse</a>|<a href="https://git-wip-us.apache.org/repos/asf/accumulo-bsp.git">checkout</a>).  It builds with <a href="https://maven.apache.org">Apache
+Maven</a>. See the section <a href="#contributing-to-contrib">Contributing to Contrib</a> for
+instructions on submitting issues and patches.</p>
+
+<h2 id="contributing-to-contrib">Contributing to Contrib</h2>
+
+<p>All contributions to the various Apache Accumulo contrib projects should follow
+the <a href="git#the-implementation">same process used in the primary project</a>. All contributions
+should have a corresponding issue filed in the <a href="https://issues.apache.org/jira/browse/ACCUMULO/component/12316610">contrib component in the
+Accumulo issue tracker</a>.</p>
+
+<h2 id="adding-a-new-contrib-project">Adding a new Contrib Project</h2>
+
+<p>Proposals for new contrib projects should be sent to the <a href="mailing_list">Accumulo mailing
+list</a> for <a href="&#109;&#097;&#105;&#108;&#116;&#111;:&#100;&#101;&#118;&#064;&#097;&#099;&#099;&#117;&#109;&#117;&#108;&#111;&#046;&#097;&#112;&#097;&#099;&#104;&#101;&#046;&#111;&#114;&#103;&#063;&#115;&#117;&#098;&#106;&#101;&#099;&#116;&#061;&#091;&#065;&#099;&#099;&#117;&#109;&#117;&#108;&#111;&#043;&#067;&#111;&#110;&#116;&#114;&#105;&#098;&#043;&#080;&#114;&#111;&#112;&#111;&#115;&#097;&#108;&#093;">developers</a>.</p>
+
+<p>If an example application only makes use of a single Accumulo feature, it is
+probably better off as an Accumulo version-specific example. You can see
+several of these demonstrative applications in the <a href="https://git-wip-us.apache.org/repos/asf?p=accumulo.git;a=tree;f=examples/simple;">simple example
+codebase</a> and the related published documentation for versions
+<a href="1.7/examples">1.7</a> and <a href="1.6/examples">1.6</a>.</p>
+
+
+        </div>
+
+        
+<footer>
+
+  <p><a href="https://www.apache.org"><img src="/images/feather-small.gif" alt="Apache Software Foundation" id="asf-logo" height="100" /></a></p>
+
+  <p>Copyright © 2011-2016 The Apache Software Foundation. Licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+
+</footer>
+
+
+      </div>
+    </div>
+  </div>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/accumulo-website/blob/59a6d65d/contributor/git.html
----------------------------------------------------------------------
diff --git a/contributor/git.html b/contributor/git.html
new file mode 100644
index 0000000..bb8dd45
--- /dev/null
+++ b/contributor/git.html
@@ -0,0 +1,686 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+<!--
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You 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.
+-->
+<meta charset="utf-8">
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<link href="https://maxcdn.bootstrapcdn.com/bootswatch/3.3.7/paper/bootstrap.min.css" rel="stylesheet" integrity="sha384-awusxf8AUojygHf2+joICySzB780jVvQaVCAt1clU3QsyAitLGul28Qxb2r1e5g+" crossorigin="anonymous">
+<link href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css" rel="stylesheet">
+<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/v/bs/jq-2.2.3/dt-1.10.12/datatables.min.css">
+<link href="/css/accumulo.css" rel="stylesheet" type="text/css">
+
+<title>Git</title>
+
+<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
+<script type="text/javascript" src="https://cdn.datatables.net/v/bs/jq-2.2.3/dt-1.10.12/datatables.min.js"></script>
+<script>
+  // show location of canonical site if not currently on the canonical site
+  $(function() {
+    var host = window.location.host;
+    if (typeof host !== 'undefined' && host !== 'accumulo.apache.org') {
+      $('#non-canonical').show();
+    }
+  });
+
+  $(function() {
+    // decorate section headers with anchors
+    return $("h2, h3, h4, h5, h6").each(function(i, el) {
+      var $el, icon, id;
+      $el = $(el);
+      id = $el.attr('id');
+      icon = '<i class="fa fa-link"></i>';
+      if (id) {
+        return $el.append($("<a />").addClass("header-link").attr("href", "#" + id).html(icon));
+      }
+    });
+  });
+  
+  // configure Google Analytics
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  if (ga.hasOwnProperty('loaded') && ga.loaded === true) {
+    ga('create', 'UA-50934829-1', 'apache.org');
+    ga('send', 'pageview');
+  }
+</script>
+
+</head>
+<body style="padding-top: 100px">
+
+  <nav class="navbar navbar-default navbar-fixed-top">
+  <div class="container">
+    <div class="navbar-header">
+      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-items">
+        <span class="sr-only">Toggle navigation</span>
+        <span class="icon-bar"></span>
+        <span class="icon-bar"></span>
+        <span class="icon-bar"></span>
+      </button>
+      <a href="/"><img id="nav-logo" alt="Apache Accumulo" class="img-responsive" src="/images/accumulo-logo.png" width="200"/></a>
+    </div>
+    <div class="collapse navbar-collapse" id="navbar-items">
+      <ul class="nav navbar-nav">
+        <li class="nav-link"><a href="/downloads">Download</a></li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Releases<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/release/accumulo-1.8.0/">1.8.0 (Latest)</a></li>
+          <li><a href="/release/accumulo-1.7.2/">1.7.2</a></li>
+          <li><a href="/release/accumulo-1.6.6/">1.6.6</a></li>
+          <li><a href="/release/">Archive</a></li>
+        </ul>
+        </li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Documentation<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/1.8/accumulo_user_manual.html">User Manual (1.8)</a></li>
+          <li><a href="/1.8/apidocs">Javadocs (1.8)</a></li>
+          <li><a href="/1.8/examples">Examples (1.8)</a></li>
+          <li><a href="/features">Features</a></li>
+          <li><a href="/papers">Papers &amp; Presentations</a></li>
+          <li><a href="/glossary">Glossary</a></li>
+          <li><a href="/docs-archive/">Archive</a></li>
+        </ul>
+        </li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Community<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/get_involved">Get Involved</a></li>
+          <li><a href="/mailing_list">Mailing Lists</a></li>
+          <li><a href="/people">People</a></li>
+          <li><a href="/projects">Related Projects</a></li>
+          <li><a href="/contributor/">Contributor Guide</a></li>
+          <li><a href="/governance/">Governance</a></li>
+        </ul>
+        </li>
+      </ul>
+      <ul class="nav navbar-nav navbar-right">
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Apache Software Foundation<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="https://www.apache.org">Apache Homepage <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/licenses/LICENSE-2.0">License <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/sponsorship">Sponsorship <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/security">Security <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/thanks">Thanks <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/policies/conduct">Code of Conduct <i class="fa fa-external-link"></i></a></li>
+        </ul>
+        </li>
+      </ul>
+    </div>
+  </div>
+</nav>
+
+
+  <div class="container">
+    <div class="row">
+      <div class="col-md-12">
+
+        <div id="non-canonical" style="display: none; background-color: #F0E68C; padding-left: 1em;">
+          Visit the official site at: <a href="https://accumulo.apache.org">https://accumulo.apache.org</a>
+        </div>
+        <div id="content">
+          
+          <h1 class="title">Git</h1>
+          
+          <p><a href="https://git-scm.com">Git</a> is an open source, distributed version control system
+which has become very popular in large, complicated software projects due to
+its efficient handling of multiple, simultaneously and independently developed
+branches of source code.\</p>
+
+<h2 id="workflow-background">Workflow Background</h2>
+
+<p>Likely the most contested subject matter regarding switching an active team
+from one SCM tool to another is a shift in the development paradigm.</p>
+
+<p>Some background, the common case, as is present with this team, is that
+developers coming from a Subversion history are very light on merging being a
+critical consideration on how to perform development. Because merging in
+Subversion is typically of no consequence to the complete view of history, not
+to mention that Subversion allows “merging” of specific revisions instead of
+sub-trees. As such, a transition to Git typically requires a shift in mindset
+in which a fix is not arbitrarily applied to trunk (whatever the main
+development is called), but the fix should be applied to the earliest, non
+end-of-life (EOL) version of the application.</p>
+
+<p>For example, say there is a hypothetical application which has just released
+version-3 of their software and have shifted their development to a version-4
+WIP. Version-2 is still supported, while version-1 was just EOL’ed. Each
+version still has a branch. A bug was just found which affects all released
+versions of this application. In Subversion, considering the history in the
+repository, it is of no consequence where the change is initially applied,
+because a Subversion merge is capable of merging it to any other version.
+History does not suffer because Subversion doesn’t have the capacities to
+accurately track the change across multiple branches. In Git, to maintain a
+non-duplicative history, it is imperative that the developer choose the correct
+branch to fix the bug in. In this case, since version-1 is EOL’ed, version-2,
+version-3 and the WIP version-4 are candidates. The earliest version is
+obviously version-2; so, the change should be applied in version-2, merged to
+version-3 and then the version-4 WIP.</p>
+
+<p>The importance of this example is making a best-attempt to preserve history
+when using Git. While Git does have commands like cherry-pick which allow the
+contents of a commit to be applied from one branch to another which are not
+candidates to merge without conflict (which is typically the case when merging
+a higher version into a lower version), this results in a duplication of that
+commit in history when the two trees are eventually merged together. While Git
+is smart enough to not attempt to re-apply the changes, history still contains
+the blemish.</p>
+
+<p>The purpose of this extravagant example is to outline, in the trivial case, how
+the workflow decided upon for development is very important and has direct
+impact on the efficacy of the advanced commands bundled with Git.</p>
+
+<h2 id="proposed-workflow">Proposed Workflow</h2>
+
+<p>This is a summary of what has been agreed upon by vocal committers/PMC members
+on <a href="&#109;&#097;&#105;&#108;&#116;&#111;:&#100;&#101;&#118;&#064;&#097;&#099;&#099;&#117;&#109;&#117;&#108;&#111;&#046;&#097;&#112;&#097;&#099;&#104;&#101;&#046;&#111;&#114;&#103;">&#100;&#101;&#118;&#064;&#097;&#099;&#099;&#117;&#109;&#117;&#108;&#111;&#046;&#097;&#112;&#097;&#099;&#104;&#101;&#046;&#111;&#114;&#103;</a>. Enumeration of
+every possible situation out of the scope of this document. This document
+intends to lay the ground work to define the correct course of action regardless
+of circumstances. Some concrete examples will be provided to ensure the
+explanation is clear.</p>
+
+<ol>
+  <li>
+    <p>Active development is performed concurrently over no less than two versions
+of Apache Accumulo at any one point in time. As such, the workflow must
+provide guidance on how and where changes should be made which apply to
+multiple versions and how to ensure that such changes are contained in all
+applicable versions.</p>
+  </li>
+  <li>
+    <p>Releases are considered extremely onerous and time-consuming so no emphasis
+is placed on rapid iterations or development-cycles.</p>
+  </li>
+  <li>
+    <p>New features typically have lengthy development cycles in which more than
+one developer contributes to the creation of the new feature from planning,
+to implementation, to scale testing. Mechanisms/guidance should be provided
+for multiple developers to teach contribute to a remote-shared resource.</p>
+  </li>
+  <li>
+    <p>The repository should be the irrefutable, sole source of information
+regarding the development of Apache Accumulo, and, as such, should have
+best-efforts given in creating a clean, readable history without any single
+entity having to control all write access and changes (a proxy). In other
+words, the developers are the ones responsible for ensuring that previous
+releases are preserved to meet ASF policy, for not rewriting any public
+history of code not yet officially released (also ASF policy relevant) and
+for a best-effort to be given to avoid duplicative commits appearing in
+ history created by the application of multiple revisions which have
+ different identifying attributes but the same contents (git-rebase and
+ git-cherry-pick).</p>
+  </li>
+</ol>
+
+<h1 id="the-implementation">The implementation</h1>
+
+<h2 id="contributors">Contributors</h2>
+
+<p>Use the following steps, original derived from Apache Kafka’s <a href="https://cwiki.apache.org/confluence/display/KAFKA/Patch+submission+and+review#Patchsubmissionandreview-Simplecontributorworkflow">simple
+contributor
+workflow</a>.</p>
+
+<p>To be specific, let’s consider a contributor wanting to work on a fix for the
+Jira issue ACCUMULO-12345 that affects 1.5.0 release.</p>
+
+<ol>
+  <li>
+    <p>Ensure you configured Git with your information</p>
+
+    <p><code class="highlighter-rouge">git config --global user.name 'My Name' &amp;&amp; git config --global user.email
+ 'myname@mydomain.com'</code></p>
+  </li>
+  <li>
+    <p>Clone the Accumulo repository:</p>
+
+    <p><code class="highlighter-rouge">git clone https://git-wip-us.apache.org/repos/asf/accumulo.git accumulo</code></p>
+  </li>
+  <li>
+    <p>or update your local copy:</p>
+
+    <p><code class="highlighter-rouge">git fetch &amp;&amp; git fetch --tags</code></p>
+  </li>
+  <li>
+    <p>For the given issue you intend to work on, choose the ‘lowest’ fixVersion
+and create a branch for yourself to work in. This example is against the next release of 1.5</p>
+
+    <p><code class="highlighter-rouge">git checkout -b ACCUMULO-12345-my-work origin/1.5</code></p>
+  </li>
+  <li>
+    <p>Make commits as you see fit as you fix the issue, referencing the issue name
+in the commit message:</p>
+
+    <p><code class="highlighter-rouge">git commit -av</code></p>
+
+    <p>Please include the ticket number at the beginning of the log message, and
+ in the first line, as it’s easier to parse quickly. For example:</p>
+
+    <p><code class="highlighter-rouge">ACCUMULO-2428 throw exception when rename fails after compaction</code></p>
+
+    <p>Consider following the git log message format described in
+ <a href="https://zachholman.com/talk/more-git-and-github-secrets/">Zach Holman’s talk</a>
+ (specifically slides 78-98, beginning at 15:20 into the video). Essentially,
+ leave a short descriptive message in the first line, skip a line, and write
+ more detailed stuff there, if you need to. For example:</p>
+
+    <p><code class="highlighter-rouge">ACCUMULO-2194 Add delay for randomwalk Security teardown</code></p>
+
+    <p><code class="highlighter-rouge">If two Security randomwalk tests run back-to-back, the second test may see that the
+ table user still exists even though it was removed when the first test was torn down.
+ This can happen if the user drop does not propagate through Zookeeper quickly enough.
+ This commit adds a delay to the end of the Security test to give ZK some time.</code></p>
+  </li>
+  <li>
+    <p>Assuming others are developing against the version you also are, as you
+work, or before you create your patch, rebase your branch against the remote
+to lift your changes to the top of your branch. The branch specified here should be the same one you used in step 4.</p>
+
+    <p><code class="highlighter-rouge">git pull --rebase origin 1.5</code></p>
+  </li>
+  <li>
+    <p>At this point, you can create a patch file from the upstream branch to
+attach to the ACCUMULO-12345 Jira issue. The branch specified here should be teh same one you used in step 4.</p>
+
+    <p><code class="highlighter-rouge">git format-patch --stdout origin/1.5 &gt; ACCUMULO-12345.patch</code></p>
+  </li>
+</ol>
+
+<p>An alternative to creating a patch is submitting a request to pull your changes
+from some repository, e.g. Github. Please include the repository and branch
+name merge in the notice to the Jira issue, e.g.</p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code>repo=git://github.com/&lt;username&gt;/accumulo.git branch=ACCUMULO-12345
+</code></pre>
+</div>
+
+<p>A second alternative is to use Github’s “Pull Requests” feature against the
+<a href="https://github.com/apache/accumulo">Apache Accumulo account</a>. Notifications of
+new pull-requests from Github should automatically be sent to
+<a href="&#109;&#097;&#105;&#108;&#116;&#111;:&#100;&#101;&#118;&#064;&#097;&#099;&#099;&#117;&#109;&#117;&#108;&#111;&#046;&#097;&#112;&#097;&#099;&#104;&#101;&#046;&#111;&#114;&#103;">&#100;&#101;&#118;&#064;&#097;&#099;&#099;&#117;&#109;&#117;&#108;&#111;&#046;&#097;&#112;&#097;&#099;&#104;&#101;&#046;&#111;&#114;&#103;</a>.</p>
+
+<p>Ignoring specifics, contributors should be sure to make their changes against
+the earlier version in which the fix is intended, <code class="highlighter-rouge">git-rebase</code>‘ing their
+changes against the upstream branch so as to keep their changes co-located and
+free of unnecessary merges.</p>
+
+<h2 id="developers">Developers</h2>
+
+<h3 id="primary-development">Primary Development</h3>
+
+<p>Primary development should take place in <code class="highlighter-rouge">master</code> which is to contain the most
+recent, un-released version of Apache Accumulo. Branches exist for minor releases
+for each previously released major version.</p>
+
+<p>Using long-lived branches that track a major release line simplifies management and
+release practices. Developers are encouraged to make branches for their own purposes,
+for large features, release candidates or whatever else is deemed useful.</p>
+
+<h3 id="reviewing-contributor-changes">Reviewing contributor changes</h3>
+
+<p>It is always the responsibility of committers to determine that a patch is
+intended and able to be contributed.  From the
+<a href="https://www.apache.org/dev/new-committers-guide#cla">new committer’s guide</a>:
+“Please take care to ensure that patches are original works which have been
+clearly contributed to the ASF in public. In the case of any doubt (or when a
+contribution with a more complex history is presented) please consult your
+project PMC before committing it.”</p>
+
+<p>Extra diligence may be necessary when code is contributed via a pull request.
+Committers should verify that the contributor intended to submit the code as a 
+Contribution under the <a href="https://www.apache.org/licenses/LICENSE-2.0.txt">Apache License</a>.
+When pulling the code, committers should also verify that the commits pulled match the 
+list of commits sent to the Accumulo dev list in the pull request.</p>
+
+<h4 id="patches">Patches</h4>
+
+<p>Developers should use the following steps to apply patches from
+contributors:</p>
+
+<ol>
+  <li>
+    <p>Checkout the branch for the major version which the patch is intended:</p>
+
+    <p><code class="highlighter-rouge">git checkout 1.5</code></p>
+  </li>
+  <li>
+    <p>Verify the changes introduced by the patch:</p>
+
+    <p><code class="highlighter-rouge">git apply --stat ACCUMULO-12345.patch</code></p>
+  </li>
+  <li>
+    <p>Verify that the patch applies cleanly:</p>
+
+    <p><code class="highlighter-rouge">git apply --check ACCUMULO-12345.patch</code></p>
+  </li>
+  <li>
+    <p>If all is well, apply the patch:</p>
+
+    <p><code class="highlighter-rouge">git am --signoff &lt; ACCUMULO-12345.patch</code></p>
+  </li>
+  <li>
+    <p>When finished, push the changes:</p>
+
+    <p><code class="highlighter-rouge">git push origin 1.5</code></p>
+  </li>
+  <li>
+    <p>Merge where appropriate:</p>
+
+    <p><code class="highlighter-rouge">git checkout master &amp;&amp; git merge 1.5</code></p>
+  </li>
+</ol>
+
+<h4 id="github-pull-requests">Github Pull-Requests</h4>
+
+<p>If the contributor submits a repository and branch to pull
+from, the steps are even easier:</p>
+
+<ol>
+  <li>
+    <p>Add their repository as a remote to your repository</p>
+
+    <p><code class="highlighter-rouge">git remote add some_name ${repository}</code></p>
+  </li>
+  <li>
+    <p>Fetch the refs from the given repository</p>
+
+    <p><code class="highlighter-rouge">git fetch ${repository}</code></p>
+  </li>
+  <li>
+    <p>Merge in the given branch to your local branch</p>
+
+    <p><code class="highlighter-rouge">git merge some_name/${branch}</code></p>
+  </li>
+  <li>
+    <p>Delete the remote:</p>
+
+    <p><code class="highlighter-rouge">git remote remove some_name</code></p>
+  </li>
+</ol>
+
+<p>If the branch doesn’t fast-forward merge, you likely want to inform the
+contributor to update their branch to avoid the conflict resolution and merge
+commit. See the <a href="https://git-scm.com/book/en/Git-Branching-Basic-Branching-and-Merging">Git
+manual</a>
+for more information on merging. When merging a pull-request, it’s best to <strong>not</strong>
+include a signoff on the commit(s) as it changes the final commit ID in the
+Accumulo repository. This also has the negative of not automatically closing
+the Pull-Request when the changes are made public.</p>
+
+<h3 id="feature-branches">Feature Branches</h3>
+
+<p>Ease in creating and using feature branches is a desirable merit which Git
+provides with little work. Feature branches are a great way in which developers
+to work on multiple, long-running features concurrently, without worry of
+mixing code ready for public-review and code needing more internal work.
+Additionally, this creates an easily consumable series of commits in which
+other developers can track changes, and see how the feature itself evolved.</p>
+
+<p>To prevent developers’ feature branches from colliding with one another, it was
+suggested to impose a “hierarchy” in which shared feature branches are prefixed
+with <code class="highlighter-rouge">&lt;apache_id&gt;/ACCUMULO-&lt;issue#&gt;[-description]</code>.</p>
+
+<ol>
+  <li>
+    <p>Create a branch off of <code class="highlighter-rouge">master</code>.</p>
+
+    <p><code class="highlighter-rouge">git checkout &lt;apache_id&gt;/ACCUMULO-&lt;issue#&gt; master</code></p>
+  </li>
+  <li>
+    <p>Create the feature, commiting early and often to appropriately outline the
+“story” behind the feature and it’s implementation.</p>
+  </li>
+  <li>
+    <p>As long as you have not collaborating with others, <code class="highlighter-rouge">git-rebase</code> your feature
+branch against upstream changes in <code class="highlighter-rouge">master</code></p>
+
+    <p><code class="highlighter-rouge">git fetch &amp;&amp; git rebase origin/master</code></p>
+  </li>
+  <li>
+    <p>If you are actively collaborating with others, you should be nice and not
+change their history. Use <code class="highlighter-rouge">git-merge</code> instead.</p>
+
+    <p><code class="highlighter-rouge">git fetch &amp;&amp; git merge origin/master</code></p>
+  </li>
+  <li>
+    <p>Continue steps 2 through 4 until the feature is complete.</p>
+  </li>
+  <li>
+    <p>Depending on the nature, duration and history of the changes in your feature
+branch, you can choose to:</p>
+
+    <ul>
+      <li>
+        <p><strong>‘Simple’ Merge</strong>:</p>
+
+        <p><code class="highlighter-rouge">git checkout master &amp;&amp; git merge &lt;apache_id&gt;/ACCUMULO-&lt;issue#&gt;</code></p>
+      </li>
+      <li>
+        <p><strong>Rebase and merge</strong> – keeps all feature-branch commits
+co-located:</p>
+
+        <p><code class="highlighter-rouge">git fetch &amp;&amp; git rebase origin/master &amp;&amp; git checkout master &amp;&amp; git merge &lt;apache_id&gt;/ACCUMULO-&lt;issue#&gt;</code></p>
+      </li>
+      <li>
+        <p><strong>Merge with squash</strong> – feature branch history is a mess, just make one commit
+with the lump-sum of your feature branch changes:</p>
+
+        <p><code class="highlighter-rouge">git checkout master &amp;&amp; git merge --squash &lt;apache_id&gt;/ACCUMULO-&lt;issue#&gt;</code></p>
+      </li>
+    </ul>
+  </li>
+</ol>
+
+<h3 id="changes-which-affect-multiple-versions-aka-merging">Changes which affect multiple versions (a.k.a. merging)</h3>
+
+<p>Merging can be a very confusing topic for users switching to Git, but it can be
+summarized fairly easily.</p>
+
+<ol>
+  <li>
+    <p><strong>Precondition</strong>: choose the right branch to start! (lowest, applicable version
+for the change)</p>
+  </li>
+  <li>
+    <p>Get your changes fixed for that earliest version.</p>
+  </li>
+  <li>
+    <p>Switch to the next highest version which future minor versions will be
+released (non-EOL major release series).</p>
+  </li>
+  <li>
+    <p><code class="highlighter-rouge">git-merge</code> the branch from #1 into the current.</p>
+  </li>
+  <li>
+    <p>In the face of conflicts, use options from <code class="highlighter-rouge">git-merge</code> to help you.</p>
+
+    <ul>
+      <li><code class="highlighter-rouge">git checkout new-version &amp;&amp; git merge --stat old-version</code></li>
+      <li><code class="highlighter-rouge">git checkout new-version &amp;&amp; git merge --no-commit old-version</code></li>
+    </ul>
+  </li>
+  <li>
+    <p>Treat your current branch as the branch from #2, and repeat from #2.</p>
+  </li>
+</ol>
+
+<p>When merging changes across major releases, there is always the possibility of
+changes which are applicable/necessary in one release, but not in any future
+releases, changes which are different in implementation due to API changes, or
+any number of other cases. Whatever the actual case is, the developer who made
+the first set of changes (you) is the one responsible for performing the merge
+through the rest of the active versions. Even when the merge may results in a
+zero-length change in content, this is incredibly important to record as you
+are the one who knows that this zero-length change in content is correct!</p>
+
+<h2 id="release-management">Release Management</h2>
+
+<p>Releases, although not a day to day task, have their own unique steps which are
+to be followed. Releases can be categorized in to minor and major releases.</p>
+
+<h3 id="a-minor-release">A minor release</h3>
+
+<p>A minor release is some set of changes <code class="highlighter-rouge">z'</code> on top of a version <code class="highlighter-rouge">x.y.z</code>.
+Typically, <code class="highlighter-rouge">z'</code> is simply <code class="highlighter-rouge">z + 1</code>, e.g. given a release named ‘1.6.0’, and the
+next minor release is ‘1.6.1’. These changes for <code class="highlighter-rouge">z'</code> should not break any
+client code which works against <code class="highlighter-rouge">z</code> and should absolutely not change the public
+API.</p>
+
+<p>By convention, the branch containing the changes <code class="highlighter-rouge">z'</code> should be named
+<code class="highlighter-rouge">x.y</code> (where the changes for <code class="highlighter-rouge">z'</code> are commits since <code class="highlighter-rouge">x.y.z</code>. The steps to take are as follows:</p>
+
+<ol>
+  <li>Prepare the release candidate. <a href="/governance/releasing">Release
+Guide</a>, <a href="/releasing">Maven
+Instructions</a></li>
+  <li>Create a branch for the release candidate from the <code class="highlighter-rouge">x.y</code> branch,
+named something like <code class="highlighter-rouge">x.y.z'-RCN</code>.</li>
+  <li>Test and Vote</li>
+  <li>Create a GPG-signed tag with the correct final name: <code class="highlighter-rouge">x.y.z'</code></li>
+  <li>Push a delete of the remote branch <code class="highlighter-rouge">x.y.z'-RCN</code></li>
+</ol>
+
+<p>This process is not firm and should not be viewed as requirements for making a release.
+The release manager is encouraged to make use branches/tags in whichever way is best.</p>
+
+<h3 id="a-major-release">A major release</h3>
+
+<p>A major release is a release in which multiple new features are introduced
+and/or the public API are modified. The major release <code class="highlighter-rouge">y'</code>, even when the
+client API is not modified, will typically contain many new features and
+functionality above the last release series <code class="highlighter-rouge">y</code>. A major release also resets
+the <code class="highlighter-rouge">z</code> value back to <code class="highlighter-rouge">0</code>.</p>
+
+<p>The steps to create a new major release are very similar to a minor release:</p>
+
+<ol>
+  <li>Prepare the release candidate. <em>reference release instructions</em></li>
+  <li>Create a tag of the release candidate from the <code class="highlighter-rouge">x.y</code> branch,
+named something like <code class="highlighter-rouge">x.y.0-RCN</code>.</li>
+  <li>Test and Vote</li>
+  <li>Create a GPG-signed tag with the correct final name: <code class="highlighter-rouge">x.y.0</code></li>
+  <li>Push a delete of the remote branch <code class="highlighter-rouge">x.y.0-RCN</code></li>
+</ol>
+
+<h1 id="the-infrastructure">The infrastructure</h1>
+
+<p>This section deals with the changes that must be requested through INFRA. As
+with any substantial INFRA request, the VOTE and result from the mailing should
+be referenced so INFRA knows that the request has been acknowledged. Likely, a
+PMC member should be the one to submit the request.</p>
+
+<h2 id="repositories">Repositories</h2>
+
+<p>I believe that we will need multiple repositories to best align ourselves with
+how we currently track “Accumulo” projects. The repositories follow:</p>
+
+<ol>
+  <li>
+    <p>The main source tree. This will track the standard trunk, branches, tags
+structure from Subversion for Apache Accumulo.</p>
+  </li>
+  <li>
+    <p>One repository for every project in
+<a href="https://svn.apache.org/repos/asf/accumulo/contrib">contrib</a>: Accumulo-BSP,
+Instamo Archetype, and the Wikisearch project. Each of these
+are considered disjoint from one another, and the main source tree, so they
+each deserve their own repository.</p>
+  </li>
+</ol>
+
+<p>Given the list of repositories that currently exist on the <a href="https://git-wip-us.apache.org/repos/asf">ASF
+site</a> and a brief search over INFRA
+tickets, multiple repositories for a single Apache project is not an issue.
+Having this list when making the initial ticket will likely reduce the amount
+of work necessary in opening multiple INFRA tickets.</p>
+
+<h2 id="mirroring">Mirroring</h2>
+
+<p>It should be noted in the INFRA requst that each repository will also need to
+be configured to properly mirror to the <a href="https://github.com/apache">ASF Github</a>
+account to provide the same functionality with current have via the git+svn
+mirror. This should be noted in the INFRA request. Same change needs to be
+applied for the <a href="https://git.apache.org">Apache hosted</a> mirror’ing.</p>
+
+<h2 id="mailing-lists">Mailing lists</h2>
+
+<p>It should be noted in the INFRA request that commit messages should be sent to
+<a href="&#109;&#097;&#105;&#108;&#116;&#111;:&#099;&#111;&#109;&#109;&#105;&#116;&#115;&#064;&#097;&#099;&#099;&#117;&#109;&#117;&#108;&#111;&#046;&#097;&#112;&#097;&#099;&#104;&#101;&#046;&#111;&#114;&#103;">&#099;&#111;&#109;&#109;&#105;&#116;&#115;&#064;&#097;&#099;&#099;&#117;&#109;&#117;&#108;&#111;&#046;&#097;&#112;&#097;&#099;&#104;&#101;&#046;&#111;&#114;&#103;</a>. The subject
+can be decided on using the <a href="https://git-wip-us.apache.org/docs/switching-to-git#contents">provided
+variables</a>.</p>
+
+<h1 id="examples">Examples</h1>
+
+<p>For the sake of clarity, some examples of common situations are included below.</p>
+
+<h2 id="releasing-160">Releasing 1.6.0</h2>
+
+<ol>
+  <li>
+    <p>Branch from <code class="highlighter-rouge">master</code> to <code class="highlighter-rouge">1.6</code></p>
+
+    <p><code class="highlighter-rouge">git checkout master &amp;&amp; git branch 1.6</code></p>
+  </li>
+  <li>
+    <p>Tag <code class="highlighter-rouge">1.6.0-RC1</code> from the just created <code class="highlighter-rouge">1.6</code> branch</p>
+
+    <p><code class="highlighter-rouge">git tag 1.6.0-RC1 1.6</code></p>
+  </li>
+  <li>
+    <p>Test, vote, etc. and tag from 1.6.0-RC1</p>
+
+    <p><code class="highlighter-rouge">git -s tag 1.6.0 1.6.0-RC1</code></p>
+  </li>
+  <li>
+    <p>Delete the RC tag, if desired.</p>
+
+    <p><code class="highlighter-rouge">git tag -d 1.6.0-RC1 &amp;&amp; git push --delete origin 1.6.0-RC1</code></p>
+  </li>
+  <li>
+    <p>Ensure <code class="highlighter-rouge">master</code> contains all features and fixes from <code class="highlighter-rouge">1.6.0</code></p>
+
+    <p><code class="highlighter-rouge">git checkout master &amp;&amp; git merge 1.6</code></p>
+  </li>
+  <li>
+    <p>Update the project version in <code class="highlighter-rouge">master</code> to 1.7.0-SNAPSHOT</p>
+  </li>
+</ol>
+
+
+        </div>
+
+        
+<footer>
+
+  <p><a href="https://www.apache.org"><img src="/images/feather-small.gif" alt="Apache Software Foundation" id="asf-logo" height="100" /></a></p>
+
+  <p>Copyright © 2011-2016 The Apache Software Foundation. Licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+
+</footer>
+
+
+      </div>
+    </div>
+  </div>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/accumulo-website/blob/59a6d65d/contributor/index.html
----------------------------------------------------------------------
diff --git a/contributor/index.html b/contributor/index.html
new file mode 100644
index 0000000..a8dd20b
--- /dev/null
+++ b/contributor/index.html
@@ -0,0 +1,185 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+<!--
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You 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.
+-->
+<meta charset="utf-8">
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<link href="https://maxcdn.bootstrapcdn.com/bootswatch/3.3.7/paper/bootstrap.min.css" rel="stylesheet" integrity="sha384-awusxf8AUojygHf2+joICySzB780jVvQaVCAt1clU3QsyAitLGul28Qxb2r1e5g+" crossorigin="anonymous">
+<link href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css" rel="stylesheet">
+<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/v/bs/jq-2.2.3/dt-1.10.12/datatables.min.css">
+<link href="/css/accumulo.css" rel="stylesheet" type="text/css">
+
+<title>Contributor Guide</title>
+
+<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
+<script type="text/javascript" src="https://cdn.datatables.net/v/bs/jq-2.2.3/dt-1.10.12/datatables.min.js"></script>
+<script>
+  // show location of canonical site if not currently on the canonical site
+  $(function() {
+    var host = window.location.host;
+    if (typeof host !== 'undefined' && host !== 'accumulo.apache.org') {
+      $('#non-canonical').show();
+    }
+  });
+
+  $(function() {
+    // decorate section headers with anchors
+    return $("h2, h3, h4, h5, h6").each(function(i, el) {
+      var $el, icon, id;
+      $el = $(el);
+      id = $el.attr('id');
+      icon = '<i class="fa fa-link"></i>';
+      if (id) {
+        return $el.append($("<a />").addClass("header-link").attr("href", "#" + id).html(icon));
+      }
+    });
+  });
+  
+  // configure Google Analytics
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  if (ga.hasOwnProperty('loaded') && ga.loaded === true) {
+    ga('create', 'UA-50934829-1', 'apache.org');
+    ga('send', 'pageview');
+  }
+</script>
+
+</head>
+<body style="padding-top: 100px">
+
+  <nav class="navbar navbar-default navbar-fixed-top">
+  <div class="container">
+    <div class="navbar-header">
+      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-items">
+        <span class="sr-only">Toggle navigation</span>
+        <span class="icon-bar"></span>
+        <span class="icon-bar"></span>
+        <span class="icon-bar"></span>
+      </button>
+      <a href="/"><img id="nav-logo" alt="Apache Accumulo" class="img-responsive" src="/images/accumulo-logo.png" width="200"/></a>
+    </div>
+    <div class="collapse navbar-collapse" id="navbar-items">
+      <ul class="nav navbar-nav">
+        <li class="nav-link"><a href="/downloads">Download</a></li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Releases<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/release/accumulo-1.8.0/">1.8.0 (Latest)</a></li>
+          <li><a href="/release/accumulo-1.7.2/">1.7.2</a></li>
+          <li><a href="/release/accumulo-1.6.6/">1.6.6</a></li>
+          <li><a href="/release/">Archive</a></li>
+        </ul>
+        </li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Documentation<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/1.8/accumulo_user_manual.html">User Manual (1.8)</a></li>
+          <li><a href="/1.8/apidocs">Javadocs (1.8)</a></li>
+          <li><a href="/1.8/examples">Examples (1.8)</a></li>
+          <li><a href="/features">Features</a></li>
+          <li><a href="/papers">Papers &amp; Presentations</a></li>
+          <li><a href="/glossary">Glossary</a></li>
+          <li><a href="/docs-archive/">Archive</a></li>
+        </ul>
+        </li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Community<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/get_involved">Get Involved</a></li>
+          <li><a href="/mailing_list">Mailing Lists</a></li>
+          <li><a href="/people">People</a></li>
+          <li><a href="/projects">Related Projects</a></li>
+          <li><a href="/contributor/">Contributor Guide</a></li>
+          <li><a href="/governance/">Governance</a></li>
+        </ul>
+        </li>
+      </ul>
+      <ul class="nav navbar-nav navbar-right">
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Apache Software Foundation<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="https://www.apache.org">Apache Homepage <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/licenses/LICENSE-2.0">License <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/sponsorship">Sponsorship <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/security">Security <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/thanks">Thanks <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/policies/conduct">Code of Conduct <i class="fa fa-external-link"></i></a></li>
+        </ul>
+        </li>
+      </ul>
+    </div>
+  </div>
+</nav>
+
+
+  <div class="container">
+    <div class="row">
+      <div class="col-md-12">
+
+        <div id="non-canonical" style="display: none; background-color: #F0E68C; padding-left: 1em;">
+          Visit the official site at: <a href="https://accumulo.apache.org">https://accumulo.apache.org</a>
+        </div>
+        <div id="content">
+          
+          <h1 class="title">Contributor Guide</h1>
+          
+          <p>This page contains resources and documentation for Accumulo contributors.</p>
+
+<p>Any documentation that is helpful to Accumulo users should be placed in the <a href="/1.8/accumulo_user_manual.html">user manual</a>.</p>
+
+<ul>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO">JIRA</a> - Accumulo’s Issue Tracker</li>
+  <li><a href="https://github.com/apache/accumulo/pulls">GitHub</a> - Pull requests can be made on GitHub</li>
+  <li><a href="https://builds.apache.org/view/A/view/Accumulo">Jenkins</a> &amp; <a href="https://travis-ci.org/apache/accumulo">TravisCI</a> - Accumulo build servers</li>
+  <li><a href="/contributor/source">Source Guide</a></li>
+  <li><a href="/contributor/git">Git Workflow</a></li>
+  <li><a href="/contributor/versioning">Versioning</a></li>
+  <li><a href="/contributor/contrib-projects">Contrib Projects</a></li>
+  <li><a href="/contributor/rb">Review Board</a></li>
+</ul>
+
+<p>Below are resources for Accumulo committers which may also be helpful to contributors.</p>
+
+<ul>
+  <li><a href="/contributor/releasing">Making Releases</a></li>
+  <li><a href="/contributor/verifying_releases">Verifying Releases</a></li>
+</ul>
+
+
+        </div>
+
+        
+<footer>
+
+  <p><a href="https://www.apache.org"><img src="/images/feather-small.gif" alt="Apache Software Foundation" id="asf-logo" height="100" /></a></p>
+
+  <p>Copyright © 2011-2016 The Apache Software Foundation. Licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+
+</footer>
+
+
+      </div>
+    </div>
+  </div>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/accumulo-website/blob/59a6d65d/contributor/rb.html
----------------------------------------------------------------------
diff --git a/contributor/rb.html b/contributor/rb.html
new file mode 100644
index 0000000..855f311
--- /dev/null
+++ b/contributor/rb.html
@@ -0,0 +1,267 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+<!--
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You 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.
+-->
+<meta charset="utf-8">
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<link href="https://maxcdn.bootstrapcdn.com/bootswatch/3.3.7/paper/bootstrap.min.css" rel="stylesheet" integrity="sha384-awusxf8AUojygHf2+joICySzB780jVvQaVCAt1clU3QsyAitLGul28Qxb2r1e5g+" crossorigin="anonymous">
+<link href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css" rel="stylesheet">
+<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/v/bs/jq-2.2.3/dt-1.10.12/datatables.min.css">
+<link href="/css/accumulo.css" rel="stylesheet" type="text/css">
+
+<title>Using Review Board</title>
+
+<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
+<script type="text/javascript" src="https://cdn.datatables.net/v/bs/jq-2.2.3/dt-1.10.12/datatables.min.js"></script>
+<script>
+  // show location of canonical site if not currently on the canonical site
+  $(function() {
+    var host = window.location.host;
+    if (typeof host !== 'undefined' && host !== 'accumulo.apache.org') {
+      $('#non-canonical').show();
+    }
+  });
+
+  $(function() {
+    // decorate section headers with anchors
+    return $("h2, h3, h4, h5, h6").each(function(i, el) {
+      var $el, icon, id;
+      $el = $(el);
+      id = $el.attr('id');
+      icon = '<i class="fa fa-link"></i>';
+      if (id) {
+        return $el.append($("<a />").addClass("header-link").attr("href", "#" + id).html(icon));
+      }
+    });
+  });
+  
+  // configure Google Analytics
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  if (ga.hasOwnProperty('loaded') && ga.loaded === true) {
+    ga('create', 'UA-50934829-1', 'apache.org');
+    ga('send', 'pageview');
+  }
+</script>
+
+</head>
+<body style="padding-top: 100px">
+
+  <nav class="navbar navbar-default navbar-fixed-top">
+  <div class="container">
+    <div class="navbar-header">
+      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-items">
+        <span class="sr-only">Toggle navigation</span>
+        <span class="icon-bar"></span>
+        <span class="icon-bar"></span>
+        <span class="icon-bar"></span>
+      </button>
+      <a href="/"><img id="nav-logo" alt="Apache Accumulo" class="img-responsive" src="/images/accumulo-logo.png" width="200"/></a>
+    </div>
+    <div class="collapse navbar-collapse" id="navbar-items">
+      <ul class="nav navbar-nav">
+        <li class="nav-link"><a href="/downloads">Download</a></li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Releases<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/release/accumulo-1.8.0/">1.8.0 (Latest)</a></li>
+          <li><a href="/release/accumulo-1.7.2/">1.7.2</a></li>
+          <li><a href="/release/accumulo-1.6.6/">1.6.6</a></li>
+          <li><a href="/release/">Archive</a></li>
+        </ul>
+        </li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Documentation<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/1.8/accumulo_user_manual.html">User Manual (1.8)</a></li>
+          <li><a href="/1.8/apidocs">Javadocs (1.8)</a></li>
+          <li><a href="/1.8/examples">Examples (1.8)</a></li>
+          <li><a href="/features">Features</a></li>
+          <li><a href="/papers">Papers &amp; Presentations</a></li>
+          <li><a href="/glossary">Glossary</a></li>
+          <li><a href="/docs-archive/">Archive</a></li>
+        </ul>
+        </li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Community<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/get_involved">Get Involved</a></li>
+          <li><a href="/mailing_list">Mailing Lists</a></li>
+          <li><a href="/people">People</a></li>
+          <li><a href="/projects">Related Projects</a></li>
+          <li><a href="/contributor/">Contributor Guide</a></li>
+          <li><a href="/governance/">Governance</a></li>
+        </ul>
+        </li>
+      </ul>
+      <ul class="nav navbar-nav navbar-right">
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Apache Software Foundation<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="https://www.apache.org">Apache Homepage <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/licenses/LICENSE-2.0">License <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/sponsorship">Sponsorship <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/security">Security <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/thanks">Thanks <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/policies/conduct">Code of Conduct <i class="fa fa-external-link"></i></a></li>
+        </ul>
+        </li>
+      </ul>
+    </div>
+  </div>
+</nav>
+
+
+  <div class="container">
+    <div class="row">
+      <div class="col-md-12">
+
+        <div id="non-canonical" style="display: none; background-color: #F0E68C; padding-left: 1em;">
+          Visit the official site at: <a href="https://accumulo.apache.org">https://accumulo.apache.org</a>
+        </div>
+        <div id="content">
+          
+          <h1 class="title">Using Review Board</h1>
+          
+          <p>The Apache Software Foundation provides an <a href="https://reviews.apache.org">instance</a> of
+<a href="https://www.reviewboard.org">Review Board</a> (RB) for projects to use in code reviews. Here is how RB can
+be used to support development in the context of the
+<a href="/governance/bylaws">Apache Accumulo bylaws</a>.</p>
+
+<p>Contributors to Accumulo are encouraged to use RB for non-trivial patches and
+any time feedback is desired. No one is required to use RB, but its ready
+availability and better interface for feedback can help with reviews. Committers
+seeking review prior to pushing changes can also benefit similarly.</p>
+
+<h2 id="roles-for-review-board">Roles for Review Board</h2>
+
+<h3 id="optional-pre-commit-review">Optional Pre-Commit Review</h3>
+
+<p>Accumulo operates under the <a href="https://www.apache.org/foundation/glossary#CommitThenReview">Commit-Then-Review</a> (CtR) policy, so code
+review does not need to occur prior to commit. However, a committer may opt to
+hold a code review before commit for changes that, in their opinion, would
+benefit from additional attention. RB can be used to conduct such code reviews.</p>
+
+<h3 id="consensus-approval-after-a-code-change-veto">Consensus Approval after a Code Change Veto</h3>
+
+<p>Code changes are approved by lazy approval, with consensus approval following
+a veto (see the <a href="/governance/bylaws#actions">Actions</a> section of the bylaws). RB can be used
+to coordinate a consensus approval vote by providing a convenient view of the
+code change under consideration. The vote itself must still be held on the
+developer mailing list.</p>
+
+<h2 id="guidelines-for-posting-a-review">Guidelines for Posting a Review</h2>
+
+<ul>
+  <li>It is best to post a git-generated patch as the basis for a review. RB does
+not support patches containing multiple commits, so either squash commits
+first, or submit a diff spanning the changeset. The <code class="highlighter-rouge">rbt</code> and <code class="highlighter-rouge">post-review</code>
+tools generate diffs.</li>
+  <li>Strive to make your changes small. Reviewers are less likely to want to
+trudge through a review with lots of changes, and are more likely to miss
+problems.</li>
+  <li>Begin the summary of the review with a JIRA issue number. A review must
+always be associated with a JIRA issue. The issue number should also be
+entered in the “Bugs” field of the review, providing a link to JIRA.</li>
+  <li>The “Branch” field should contain the name of the branch that the code change
+is based on (e.g., the base of your git feature branch).</li>
+  <li>Include the “accumulo” user group as reviewers. Also include specific people
+as individual reviewers, even if they are in the “accumulo” group, if you
+deem them of primary importance for the review (e.g., you have been working
+out problems with the review with them, they are expert in the area).</li>
+  <li>Use the description to summarize the change under review. Include helpful
+instructions to the reviewers here.</li>
+  <li>Describe any testing done on the change. It is not expected that reviewers
+will do their own testing, and they may reject the review if you have not
+done sufficient testing yourself.</li>
+  <li>Avoid submitting generated code for review if it can be reproduced by a
+reviewer.</li>
+</ul>
+
+<p>After the review is published, set the status of the associated JIRA issue to
+“Patch Available” as a signal to reviewers. Also, link to the review from the
+issue (More -&gt; Link -&gt; Web Link) to help viewers of the issue find the review
+and assess its progress.</p>
+
+<h2 id="guidelines-for-reviewing-code">Guidelines for Reviewing Code</h2>
+
+<ul>
+  <li>Try to associate comments with relevant lines of code in the review.</li>
+  <li>By default, each comment opens a review issue. If a comment pertains to
+something that should not block the review from completing successfully, then
+clear the “Open an issue” checkbox before saving your feedback. Examples that
+might qualify as non-issues: minor formatting/whitespace issues, spelling
+mistakes, general background questions.</li>
+  <li>If a review looks good, be sure to “Ship It” by either using the “Ship It!”
+button or by submitting a general review with the “Ship It” checkbox checked.</li>
+</ul>
+
+<h2 id="guidelines-for-completing-a-review">Guidelines for Completing a Review</h2>
+
+<p>These guidelines do not apply to consensus approval votes, since the vote
+completion depends on the votes registered in the developer mailing list.</p>
+
+<ul>
+  <li>Use your judgement for the number of “Ship It”s you want to receive to
+consider a review passed. Usually, getting one “Ship It” is enough to proceed
+with a commit. It is recommended that the “Ship It” be from a committer who
+is a neutral party not involved in the change under review.</li>
+  <li>Use your judgement for the minimum time length you set for the review. Simple
+changes can be up for just a day, while complex ones should take up to seven.</li>
+  <li>Review time should be extended in the face of problems discovered in the
+review. Update the review with improved code instead of discarding (i.e.,
+closing unsuccessfully) it and beginning a new one.</li>
+  <li>A review should not be “submitted” (i.e., closed successfully) unless there
+are no outstanding issues. Check with reviewers to ensure that their issues
+are resolved satisfactorily.</li>
+  <li>A review should be “discarded” if the code requires major rework or it
+becomes obvious it should never be committed (due to design changes,
+becoming overcome by events, being back-burnered, etc.).</li>
+  <li>Don’t leave a review open indefinitely. Once you have received sufficient
+feedback to submit or discard it, do so. If there has been no activity for
+some time, discard the review. A new one can always be created later.</li>
+</ul>
+
+<p>Once you’ve closed a review as submitted, if you are unable to commit your
+changes yourself, attach the final version of them to the relevant JIRA issue.
+They should be in the form of a patch containing a single commit,
+<a href="/contributor/git#contributors">per the final steps of the contribution process</a>.</p>
+
+
+        </div>
+
+        
+<footer>
+
+  <p><a href="https://www.apache.org"><img src="/images/feather-small.gif" alt="Apache Software Foundation" id="asf-logo" height="100" /></a></p>
+
+  <p>Copyright © 2011-2016 The Apache Software Foundation. Licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+
+</footer>
+
+
+      </div>
+    </div>
+  </div>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/accumulo-website/blob/59a6d65d/contributor/releasing.html
----------------------------------------------------------------------
diff --git a/contributor/releasing.html b/contributor/releasing.html
new file mode 100644
index 0000000..9eec7f2
--- /dev/null
+++ b/contributor/releasing.html
@@ -0,0 +1,303 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+<!--
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You 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.
+-->
+<meta charset="utf-8">
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<link href="https://maxcdn.bootstrapcdn.com/bootswatch/3.3.7/paper/bootstrap.min.css" rel="stylesheet" integrity="sha384-awusxf8AUojygHf2+joICySzB780jVvQaVCAt1clU3QsyAitLGul28Qxb2r1e5g+" crossorigin="anonymous">
+<link href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css" rel="stylesheet">
+<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/v/bs/jq-2.2.3/dt-1.10.12/datatables.min.css">
+<link href="/css/accumulo.css" rel="stylesheet" type="text/css">
+
+<title>Making a Release</title>
+
+<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
+<script type="text/javascript" src="https://cdn.datatables.net/v/bs/jq-2.2.3/dt-1.10.12/datatables.min.js"></script>
+<script>
+  // show location of canonical site if not currently on the canonical site
+  $(function() {
+    var host = window.location.host;
+    if (typeof host !== 'undefined' && host !== 'accumulo.apache.org') {
+      $('#non-canonical').show();
+    }
+  });
+
+  $(function() {
+    // decorate section headers with anchors
+    return $("h2, h3, h4, h5, h6").each(function(i, el) {
+      var $el, icon, id;
+      $el = $(el);
+      id = $el.attr('id');
+      icon = '<i class="fa fa-link"></i>';
+      if (id) {
+        return $el.append($("<a />").addClass("header-link").attr("href", "#" + id).html(icon));
+      }
+    });
+  });
+  
+  // configure Google Analytics
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  if (ga.hasOwnProperty('loaded') && ga.loaded === true) {
+    ga('create', 'UA-50934829-1', 'apache.org');
+    ga('send', 'pageview');
+  }
+</script>
+
+</head>
+<body style="padding-top: 100px">
+
+  <nav class="navbar navbar-default navbar-fixed-top">
+  <div class="container">
+    <div class="navbar-header">
+      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-items">
+        <span class="sr-only">Toggle navigation</span>
+        <span class="icon-bar"></span>
+        <span class="icon-bar"></span>
+        <span class="icon-bar"></span>
+      </button>
+      <a href="/"><img id="nav-logo" alt="Apache Accumulo" class="img-responsive" src="/images/accumulo-logo.png" width="200"/></a>
+    </div>
+    <div class="collapse navbar-collapse" id="navbar-items">
+      <ul class="nav navbar-nav">
+        <li class="nav-link"><a href="/downloads">Download</a></li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Releases<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/release/accumulo-1.8.0/">1.8.0 (Latest)</a></li>
+          <li><a href="/release/accumulo-1.7.2/">1.7.2</a></li>
+          <li><a href="/release/accumulo-1.6.6/">1.6.6</a></li>
+          <li><a href="/release/">Archive</a></li>
+        </ul>
+        </li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Documentation<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/1.8/accumulo_user_manual.html">User Manual (1.8)</a></li>
+          <li><a href="/1.8/apidocs">Javadocs (1.8)</a></li>
+          <li><a href="/1.8/examples">Examples (1.8)</a></li>
+          <li><a href="/features">Features</a></li>
+          <li><a href="/papers">Papers &amp; Presentations</a></li>
+          <li><a href="/glossary">Glossary</a></li>
+          <li><a href="/docs-archive/">Archive</a></li>
+        </ul>
+        </li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Community<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/get_involved">Get Involved</a></li>
+          <li><a href="/mailing_list">Mailing Lists</a></li>
+          <li><a href="/people">People</a></li>
+          <li><a href="/projects">Related Projects</a></li>
+          <li><a href="/contributor/">Contributor Guide</a></li>
+          <li><a href="/governance/">Governance</a></li>
+        </ul>
+        </li>
+      </ul>
+      <ul class="nav navbar-nav navbar-right">
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Apache Software Foundation<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="https://www.apache.org">Apache Homepage <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/licenses/LICENSE-2.0">License <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/sponsorship">Sponsorship <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/security">Security <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/thanks">Thanks <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/policies/conduct">Code of Conduct <i class="fa fa-external-link"></i></a></li>
+        </ul>
+        </li>
+      </ul>
+    </div>
+  </div>
+</nav>
+
+
+  <div class="container">
+    <div class="row">
+      <div class="col-md-12">
+
+        <div id="non-canonical" style="display: none; background-color: #F0E68C; padding-left: 1em;">
+          Visit the official site at: <a href="https://accumulo.apache.org">https://accumulo.apache.org</a>
+        </div>
+        <div id="content">
+          
+          <h1 class="title">Making a Release</h1>
+          
+          <p>This is a guide for the creation of a release of Apache Accumulo.</p>
+
+<h2 id="setup">Setup</h2>
+
+<p>There are number of things that are required before attempting to build a release.</p>
+
+<ol>
+  <li>Use gpg-agent, and be sure to increase the gpg-agent cache timeout (via .gnupg/gpg-agent.conf) to ensure that the agent doesn’t require re-authentication mid-build, as it will cause things to fail. For example, you can add <code class="highlighter-rouge">default-cache-ttl 6000</code> to increase the timeout from the default of 10 minutes to over an hour. If you do not have a GPG key, reference the very thorough <a href="https://www.apache.org/dev/release-signing">ASF release signing documentation</a>.</li>
+  <li>Ensure that you’re using the correct major release of Java (check javadoc too).</li>
+  <li>Ensure that you’re building Apache Accumulo with a username that has the same name as your Apache ID (this is due to
+the maven-release-plugin and staging the release candidate).</li>
+  <li>Update the CHANGES file so that it’s in sync with Jira (manual process).</li>
+  <li>Ensure that you have a texlive distribution installed so you are able to build the documentation.</li>
+  <li>Have a clean workspace before starting.</li>
+</ol>
+
+<p>Given all of this, it’s recommended that you only attempt making a release from a GNU/Linux machine.</p>
+
+<h2 id="create-the-candidate">Create the candidate</h2>
+
+<p><strong>TL;DR</strong></p>
+
+<ul>
+  <li><code class="highlighter-rouge">./assemble/build.sh --create-release-candidate</code> to make the release candidate</li>
+  <li><code class="highlighter-rouge">git tag $version $version-rcN</code> to create an RC tag from the actual tag</li>
+  <li><code class="highlighter-rouge">git tag -d $version</code> make sure you don’t accidentally push a “release” tag</li>
+  <li><code class="highlighter-rouge">git push origin $version-rcN</code> push the RC tag</li>
+  <li><code class="highlighter-rouge">git checkout -b $version-rcN-branch</code> save off the branch from the Maven release plugin</li>
+  <li><strong>VOTE</strong></li>
+  <li><em>If vote fails</em>, fix the original branch and start over.</li>
+  <li><em>If vote passes</em>, <code class="highlighter-rouge">git merge $version-rcN-branch</code> back into the original branch you released from.</li>
+  <li><code class="highlighter-rouge">git tag -s $version-rcN $version</code> make a GPG-signed tag</li>
+  <li><code class="highlighter-rouge">git push origin $version</code> push the signed tag.</li>
+</ul>
+
+<p><strong>Long-winded explanation</strong></p>
+
+<p>You should use the provided script assemble/build.sh to create the release candidate. This script is
+desirable as it activates all necessary maven profiles in addition to verifying that certain preconditions
+are met, like RPM signing availablilty and the ability to sign files using GPG. The –test option can 
+be used as a dry run for creating a release candidate. The –create-release-candidate option should be 
+used to create the actual release candidate.</p>
+
+<p>When invoking build.sh with the –create-release-candidate option, the majority of the work will be performed
+by the maven-release-plugin, invoking <em>release:clean</em>, <em>release:prepare</em>, and <em>release:perform</em>. These will
+guide you through choosing the correct versions. The default options provided should be what you choose.
+It is highly recommended that an ‘RC’ suffix is <em>not</em> appended to the release version the plugin prompts
+you for, as that will result in that version string being placed into the poms, which then would require 
+voting to occur on artifacts that cannot be directly promoted. After the build.sh script finishes (this will 
+likely take at least 15 minutes, even on recent hardware), your current branch will be on the “next” version 
+that you provided to the release plugin.</p>
+
+<p>One unwanted side-effect of this approach is that after creating this branch, but <em>before invoking release:perform</em>,
+you must edit the release.properties to add the <em>-rcN</em> suffix to the value of scm.tag. Otherwise, the release
+plugin will complain that it cannot find the branch for the release. With a successful invocation of <em>mvn release:perform</em>,
+a staging repository will be made for you on the <a href="https://repository.apache.org">ASF Nexus server</a> which you can log into with your ASF 
+credentials.</p>
+
+<p>After you log into Nexus, click on <em>Staging Repositories</em> in the <em>Build Promotion</em> toolbar on the left side of
+the screen. Assuming your build went according to plan, you should have a new staging repository made for
+you. At this point, you should inspect the artifacts that were staged to ensure that they are as you expect
+them to be. When you’re ready to present those artifacts for voting, you need to close that repository which
+will make it publicly available for other members to inspect.</p>
+
+<h2 id="vote">Vote</h2>
+
+<p>At this point, you should have a closed repository that’s ready to vote on. Send a message to <a href="&#109;&#097;&#105;&#108;&#116;&#111;:&#100;&#101;&#118;&#064;&#097;&#099;&#099;&#117;&#109;&#117;&#108;&#111;&#046;&#097;&#112;&#097;&#099;&#104;&#101;&#046;&#111;&#114;&#103;">the dev
+list</a> and get the ball rolling. If the vote ultimately fails, you delete
+the staged repository, clean up the branch you created (or wait until the release ultimately passes if you
+choose), and fix what needs fixing.</p>
+
+<p>If the vote passes, huzzah, you’re almost done.</p>
+
+<h2 id="promote-the-artifacts">Promote the artifacts</h2>
+
+<p>Promote that staged repository using Nexus which you can do with the click of a button. This will trigger
+a process to get the release out to all of the mirrors.</p>
+
+<h2 id="create-the-final-git-tag">Create the final Git tag</h2>
+
+<p>The Git repository should also contain a tag which refers to the final commit which made up a release. This tag
+should also be signed with your GPG key. To ensure proper retention on release (stemming from ASF policy
+requirements), This final tag <em>must</em> being with “rel/”. For example, a release of 1.7.0 should have a corresponding
+tag name of “rel/1.7.0”.</p>
+
+<h2 id="copy-artifacts-to-distapacheorg">Copy artifacts to dist.apache.org</h2>
+
+<p>An SVN server is running at https://dist.apache.org/repos/dist/release/accumulo. You need to upload the release
+tarballs, the GPG signatures and checksum files to the correct directory (based on the release number). If you
+are releasing a bug-fix release, be sure to delete the previous release in the same line (e.g. if you release
+1.6.2, remove 1.6.1). The old tarballs removed from dist.apache.org will still be preserved in archive.apache.org
+automatically.</p>
+
+<h2 id="update-projectsapacheorg">Update projects.apache.org</h2>
+
+<p>Fill out the <a href="https://reporter.apache.org/addrelease?accumulo">add release</a> form to update the projects website.</p>
+
+<h2 id="update-the-website">Update the Website</h2>
+
+<p>After a successful vote, this website needs to be updated with the new artifacts.</p>
+
+<ul>
+  <li>Copy Accumulo User Manual (HTML version exists in &gt;=1.7.0)</li>
+  <li>Update downloads page</li>
+  <li>Create release notes (ensure notes contain link to JIRA changes for that version)</li>
+  <li>Remove previous bug-fix release (if applicable)</li>
+  <li>Update examples README files</li>
+  <li>Update doap_Accumulo.rdf</li>
+</ul>
+
+<h3 id="javadocs">Javadocs</h3>
+
+<p>Javadocs are easy to update. Using the latest JDK7 or later (at least JDK 7u21
+to avoid known <a href="https://www.kb.cert.org/vuls/id/225657">vulnerabilities</a>), follow these steps:</p>
+
+<ol>
+  <li>Unpack the source release tarball and change to its root directory, or checkout the SCM tag for the release</li>
+  <li>Build the javadocs with <code class="highlighter-rouge">mvn clean package javadoc:aggregate -DskipTests -Paggregate-javadocs</code></li>
+  <li>Take note that the javadocs you will need to copy are the entire contents of <code class="highlighter-rouge">./target/site/apidocs/</code></li>
+  <li>Checkout the <code class="highlighter-rouge">gh-pages</code> branch (you may need to move the contents of <code class="highlighter-rouge">./target/site/apidocs</code> outside your git workspace to switch branches)</li>
+  <li>Remove any existing apidocs from the appropriate version folder (e.g. 1.6/apidocs for a 1.6.x release)</li>
+  <li>Copy the entire contents of the new apidocs directory (identified in step 3) to the destination (e.g. to 1.6/apidocs)</li>
+  <li>Continue updating the site content, as needed</li>
+  <li>Commit the changes</li>
+  <li>Update the site using jekyll with <code class="highlighter-rouge">./_devtools/git-hooks/post-commit</code> (if you don’t have the commit hook already configured)</li>
+  <li>Don’t forget to push both the <code class="highlighter-rouge">gh-pages</code> and <code class="highlighter-rouge">asf-site</code> branches</li>
+  <li>Verify that javadocs have been updated on the production site (e.g. https://accumulo.apache.org/1.6/apidocs/)</li>
+</ol>
+
+<h2 id="references">References</h2>
+
+<p>Some good references that explain a few things:</p>
+
+<ul>
+  <li><a href="https://mail-archives.apache.org/mod_mbox/accumulo-dev/201305.mbox/raw/%3CCAL5zq9bH8y0FyjXmmfXhWPj8axosn9dZ7%2Bu-R1DK4Y-WM1YoWg%40mail.gmail.com%3E">Christopher talks about making releases</a></li>
+  <li><a href="https://www.apache.org/dev/publishing-maven-artifacts">Publishing Maven Artifacts</a></li>
+  <li><a href="https://www.apache.org/dev/release-publishing">Publishing Releases</a></li>
+  <li><a href="/governance/releasing">Accumulo Release Guide</a></li>
+</ul>
+
+
+        </div>
+
+        
+<footer>
+
+  <p><a href="https://www.apache.org"><img src="/images/feather-small.gif" alt="Apache Software Foundation" id="asf-logo" height="100" /></a></p>
+
+  <p>Copyright © 2011-2016 The Apache Software Foundation. Licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+
+</footer>
+
+
+      </div>
+    </div>
+  </div>
+</body>
+</html>


Mime
View raw message