<?xml version="1.0" encoding="UTF-8"?>
<!--
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.

-->
#set( $releaseName = "0.6.5" )
#set( $releaseDate = "09/03/2014" )
<document xmlns="http://maven.apache.org/XDOC/2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">

  <properties>
    <title>Apache Helix Downloads</title>
    <author email="dev@helix.apache.org">Apache Helix Documentation Team</author>
  </properties>

  <body>
    <div class="toc_container">
      <macro name="toc">
        <param name="class" value="toc"/>
      </macro>
    </div>

    <section name="Introduction">
      <p>Apache Helix artifacts are distributed in source and binary form under the terms of the
        <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
        See the included <tt>LICENSE</tt> and <tt>NOTICE</tt> files included in each artifact for additional license
        information.
      </p>
      <p>Use the links below to download a source distribution of Apache Helix.
      It is good practice to <a href="#Verifying_Releases">verify the integrity</a> of the distribution files.</p>
    </section>

    <section name="Release">
      <p>Release date: ${releaseDate} </p>
      <p><a href="releasenotes/release-${releaseName}.html">${releaseName} Release notes</a></p>
      <a name="mirror"/>
      <subsection name="Mirror">

        <p>
          [if-any logo]
          <a href="[link]">
            <img align="right" src="[logo]" border="0"
                 alt="logo"/>
          </a>
          [end]
          The currently selected mirror is
          <b>[preferred]</b>.
          If you encounter a problem with this mirror,
          please select another mirror.
          If all mirrors are failing, there are
          <i>backup</i>
          mirrors
          (at the end of the mirrors list) that should be available.
        </p>

        <form action="[location]" method="get" id="SelectMirror" class="form-inline">
          Other mirrors:
          <select name="Preferred" class="input-xlarge">
            [if-any http]
            [for http]
            <option value="[http]">[http]</option>
            [end]
            [end]
            [if-any ftp]
            [for ftp]
            <option value="[ftp]">[ftp]</option>
            [end]
            [end]
            [if-any backup]
            [for backup]
            <option value="[backup]">[backup] (backup)</option>
            [end]
            [end]
          </select>
          <input type="submit" value="Change" class="btn"/>
        </form>

        <p>
          You may also consult the
          <a href="http://www.apache.org/mirrors/">complete list of mirrors.</a>
        </p>

      </subsection>
      <subsection name="${releaseName} Sources">
        <table>
          <thead>
            <tr>
              <th>Artifact</th>
              <th>Signatures</th>
              <th>Hashes</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>
                <a href="[preferred]helix/${releaseName}/src/helix-${releaseName}-src.zip">helix-${releaseName}-src.zip</a>
              </td>
              <td>
                <a href="http://www.apache.org/dist/helix/${releaseName}/src/helix-${releaseName}-src.zip.asc">asc</a>
              </td>
              <td>
                <a href="http://www.apache.org/dist/helix/${releaseName}/src/helix-${releaseName}-src.zip.md5">md5</a>
                <a href="http://www.apache.org/dist/helix/${releaseName}/src/helix-${releaseName}-src.zip.sha1">sha1</a>
              </td>
            </tr>
          </tbody>
        </table>
      </subsection>
      <subsection name="${releaseName} Binaries">
        <table>
          <thead>
            <tr>
              <th>Artifact</th>
              <th>Signatures</th>
              <th>Hashes</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>
                <a href="[preferred]helix/${releaseName}/binaries/helix-core-${releaseName}-pkg.tar">helix-core-${releaseName}-pkg.tar</a>
              </td>
              <td>
                <a href="http://www.apache.org/dist/helix/${releaseName}/binaries/helix-core-${releaseName}-pkg.tar.asc">asc</a>
              </td>
              <td>
                <a href="http://www.apache.org/dist/helix/${releaseName}/binaries/helix-core-${releaseName}-pkg.tar.md5">md5</a>
                <a href="http://www.apache.org/dist/helix/${releaseName}/binaries/helix-core-${releaseName}-pkg.tar.sha1">sha1</a>
              </td>
            </tr>
            <tr>
              <td>
                <a href="[preferred]helix/${releaseName}/binaries/helix-admin-webapp-${releaseName}-pkg.tar">helix-admin-webapp-${releaseName}-pkg.tar</a>
              </td>
              <td>
                <a href="http://www.apache.org/dist/helix/${releaseName}/binaries/helix-admin-webapp-${releaseName}-pkg.tar.asc">asc</a>
              </td>
              <td>
                <a href="http://www.apache.org/dist/helix/${releaseName}/binaries/helix-admin-webapp-${releaseName}-pkg.tar.md5">md5</a>
                <a href="http://www.apache.org/dist/helix/${releaseName}/binaries/helix-admin-webapp-${releaseName}-pkg.tar.sha1">sha1</a>
              </td>
            </tr>
            <tr>
              <td>
                <a href="[preferred]helix/${releaseName}/binaries/helix-agent-${releaseName}-pkg.tar">helix-agent-${releaseName}-pkg.tar</a>
              </td>
              <td>
                <a href="http://www.apache.org/dist/helix/${releaseName}/binaries/helix-agent-${releaseName}-pkg.tar.asc">asc</a>
              </td>
              <td>
                <a href="http://www.apache.org/dist/helix/${releaseName}/binaries/helix-agent-${releaseName}-pkg.tar.md5">md5</a>
                <a href="http://www.apache.org/dist/helix/${releaseName}/binaries/helix-agent-${releaseName}-pkg.tar.sha1">sha1</a>
              </td>
            </tr>
          </tbody>
        </table>
      </subsection>
    </section>

<!--    <section name="Older Releases">
    </section>-->

    <section name="Verifying Releases">
      <p>It is essential that you verify the integrity of the downloaded file using the PGP signature (<tt>.asc</tt> file) or a hash (<tt>.md5</tt> or <tt>.sha1</tt> file). Please read <a href="http://www.apache.org/info/verification.html">Verifying Apache Software Foundation Releases</a> for more information on why you should verify our releases.</p>
      <p>The PGP signature can be verified using <a href="http://www.pgpi.org/">PGP</a> or <a href="http://www.gnupg.org/">GPG</a>. First download the <a href="http://www.apache.org/dist/helix/KEYS">KEYS</a> as well as the <tt>*.asc</tt> signature files for the relevant distribution. Make sure you get these files from the main distribution site, rather than from a mirror. Then verify the signatures using one of the following sets of commands:

        <source>% pgpk -a KEYS
% pgpv downloaded_file.asc</source>

      or<br/>

        <source>% pgp -ka KEYS
% pgp downloaded_file.asc</source>

      or<br/>

        <source>% gpg --import KEYS
% gpg --verify downloaded_file.asc</source>
       </p>
    <p>Alternatively, you can verify the MD5 signature on the files. A Unix/Linux program called
      <code>md5</code> or
      <code>md5sum</code> is included in most distributions.  It is also available as part of
      <a href="http://www.gnu.org/software/textutils/textutils.html">GNU Textutils</a>.
      Windows users can get binary md5 programs from these (and likely other) places:
      <ul>
        <li>
          <a href="http://www.md5summer.org/">http://www.md5summer.org/</a>
        </li>
        <li>
          <a href="http://www.fourmilab.ch/md5/">http://www.fourmilab.ch/md5/</a>
        </li>
        <li>
          <a href="http://www.pc-tools.net/win32/md5sums/">http://www.pc-tools.net/win32/md5sums/</a>
        </li>
      </ul>
    </p>
    </section>
  </body>
</document>
