<?xml version="1.0" encoding="iso-8859-1"?>
<!--
 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.
-->
<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></properties>
  <body>
  
    <section name="Apache Whirr&#153; 0.9.0"></section>
    <p>Apache Whirr is a set of libraries for running cloud services.</p>
    <p>Whirr provides:</p>
    <ul>
      <li>A cloud-neutral way to run services. You don't have to worry about the idiosyncrasies of
      each provider.</li>
      <li>A common service API. The details of provisioning are particular to the service.</li>
      <li>Smart defaults for services. You can get a properly configured system running quickly,
      while still being able to override settings as needed.</li>
    </ul>
    <p>You can also use Whirr as a command line tool for deploying clusters.</p>

    <subsection name="Getting Started"></subsection>

    <p>Start with <a href="whirr-in-5-minutes.html">Whirr in 5 Minutes</a>
    or the  
    <a href="quick-start-guide.html">Quick Start Guide</a>.</p>
    <p>There is also an 
    <a href="http://whirr.apache.org/faq.html">FAQ</a> which covers how to achieve common tasks with Whirr, and a 
    <a href="configuration-guide.html">configuration guide</a> for reference.</p>

  </body>
</document>
