deltacloud-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mfoj...@apache.org
Subject [12/51] [partial] Site: Complete site revamp using bootstrap and docs update
Date Mon, 25 Jun 2012 12:34:16 GMT
http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/getting-sources.md
----------------------------------------------------------------------
diff --git a/site/content/getting-sources.md b/site/content/getting-sources.md
new file mode 100644
index 0000000..45e5082
--- /dev/null
+++ b/site/content/getting-sources.md
@@ -0,0 +1,79 @@
+--- 
+site_name: Deltacloud API
+title: Getting the Sources
+---
+<br/>
+
+<h3>Setting up a developement environment</h3>
+
+<h4>Installing dependencies</h4>
+<p>
+First, you will need all the installation dependencies for Deltacloud. Follow the steps in <a href="/install-deltacloud.html">Install Deltacloud</a> section to get these dependencies.
+</p>
+
+<h4>Getting the sources</h4>
+
+The Deltacloud repository is hosted at the Apache Software Foundation, using the <a href="http://git-scm.com/">Git</a> version control system. If you don't have Git already, use the yum or apt package managers:
+
+<pre>
+$ sudo yum install git
+</pre>
+or
+<pre>
+$ sudo apt-get install git
+</pre>
+
+The canonical Deltacloud repository is located at <a href="https://git-wip-us.apache.org/repos/asf/deltacloud.git">https://git-wip-us.apache.org/repos/asf/deltacloud.git</a> with read-only mirrors at <strong>git://git.apache.org/deltacloud.git</strong> and <strong>git://github.com/apache/deltacloud</strong>.
+
+Go to your root directory and run git to get the latest version of Deltacloud source code from git repository. You can also use a different directory, but remember, where you clone the code:
+
+<pre>
+$ git clone git://git.apache.org/deltacloud.git
+</pre>
+
+This will pull the latest version to the directory <strong>~/deltacloud</strong>.
+
+<h4>Development dependencies</h4>
+<p>
+Apart from installation dependecies, you have to install some additional libraries, in order to develop for Deltacloud. The Deltacloud source includes a Gemfile: <strong>/path/to/deltacloud/server/Gemfile</strong>, which lists these development dependencies.
+</p>
+
+<p>
+You can easily get all the development dependecies with <a href="http://gembundler.com/">Bundler</a>:
+</p>
+
+<p>Install Bundler (if you don't have it yet):</p>
+
+<pre>$ gem install bundler</pre>
+
+<p>Then, get the required dependencies:</p>
+
+<pre>
+$ cd /path/to/deltacloud/server
+$ bundle
+</pre>
+
+<h4>Building from source and installing the Deltacloud gem</h4>
+
+<p>
+Build and install the Deltacloud server gem:
+</p>
+
+<pre>
+$ cd path/to/DeltacloudProject/deltacloud/server
+$ rake package
+$ gem install pkg/deltacloud-core-&lt;version&gt;.gem
+</pre>
+
+<p>
+Then install the Deltacloud client gem:
+</p>
+
+<pre>
+$ cd path/to/DeltacloudProject/deltacloud/client
+$ rake package
+$ gem install pkg/deltacloud-client-&lt;version&gt;.gem
+</pre>
+
+<a class="btn btn-inverse btn-large" style="float: right" href="/how-to-contribute.html">Contribute</a>
+<br/>

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/hardware-profiles.md
----------------------------------------------------------------------
diff --git a/site/content/hardware-profiles.md b/site/content/hardware-profiles.md
new file mode 100644
index 0000000..73a1714
--- /dev/null
+++ b/site/content/hardware-profiles.md
@@ -0,0 +1,211 @@
+---
+site_name: Deltacloud API
+title: Hardware profiles
+---
+<br/>
+
+<div class="row">
+  <div class="span9">
+
+<h3 id="hardware">Hardware profiles</h3>
+
+<p>
+A hardware profile describes the size of a virtual machine in a cloud and specifies details such as how many virtual CPUs, how much memory or how much local storage an instance might have. The attributes of a hardware profile consist of a human-readable <strong>name</strong> and a list of <strong>elements</strong>. Each element defines possible values along with a sizing dimension.
+</p>
+
+<p>
+Since clouds differ sharply in how virtual machine sizing is represented and influenced, hardware profiles provide a generic mechanism to express sizing constraints. For each dimension (such as amount of memory), the hardware profile can express that
+</p>
+
+<ul>
+  <li>size is <strong>fixed</strong> in the dimension, for example instances all have 2GB of memory;</li>
+  <li>size can vary within some <strong>range</strong>, for example instances can have from 1GB to 4GB of memory;
+  </li>
+  <li>
+  size can be chosen from a predefined set of values - an <strong>enumeration</strong>, for example instances can have 512 MB, 1 GB or 4GB of memory.
+  </li>
+</ul>
+
+<p>
+When creating a new instance, a client must specify the hardware profile on which the instance is based.
+</p>
+
+<p style="margin-bottom:0px">
+In addition to the sizing constraints, a hardware profile may also indicate the parameters that can be specified by a client in instance operations. A <code>&lt;param&gt;</code> XML tag signifies the user-defined variable dimensions within the given property. For instance, the following extract shows the memory dimension for a hardware profile that can be specified in the HTTP POST create 
+</p>
+
+  </div>
+  <div class="span3">
+
+<ul class="nav nav-list well">
+  <li class="nav-header">
+    REST API
+  </li>
+  <li><a href="/rest-api.html">Introduction</a></li>
+  <li><a href="/api-entry-point.html">API entry point</a></li>
+  <li><a href="/compute-resources.html">Compute resources</a></li>
+  <ul class="nav nav-list">
+    <li><a href="/compute-resources.html#realms">Realms</a></li>
+    <li class="active"><a href="#hardware">Hardware profiles</a></li>
+    <li><a href="/images.html">Images</a></li>
+    <li><a href="/instance-states.html">Instance states</a></li>
+    <li><a href="/instances.html">Instances</a></li>
+    <li><a href="/keys.html">Keys</a></li>
+    <li><a href="/firewalls.html">Firewalls</a></li>
+    <li><a href="/addresses.html">Addresses</a></li>
+    <li><a href="/load-balancers.html">Load balancers</a></li>
+  </ul>
+  <li><a href="/storage-resources.html">Storage resources</a></li>
+</ul>
+
+  </div>
+</div>
+
+<p style="margin-top:0px">
+operation of the instances collection (i.e. creating a new instance). The given parameter must be specified using the name <strong>hwp_memory</strong>. The default value is 10240 but the client may specify a value in the range 7680 up to 15360:
+</p>
+
+<pre>
+...
+&lt;property kind='range' name='memory' unit='MB' value='10240'&gt;
+    &lt;param href='http://localhost:3003/api/instances' method='post' name='hwp_memory' operation='create' /&gt;
+    &lt;range first='7680.0' last='15360' /&gt;
+&lt;/property&gt;
+...
+</pre>
+
+<h4>Get a list of all hardware profiles</h4>
+
+<p>
+To produce a list of all hardware profiles availaible with this cloud use call <strong>GET /api/hardware_profiles</strong>. The example below shows how to list the hardware profiles available in the Amazon EC2 cloud. As EC2 provides a set of pre-defined hardware profiles, the properties of each dimension (memory,cpu etc) are the type fixed.
+</p>
+
+<p>Example request:</p>
+
+<pre>
+GET /api/hardware_profiles?format=xml HTTP/1.1
+Authorization: Basic AU1J3UB2121Afd1DdyQWxLaTYTmJMNF4zTXBoRGdhMDh2RUw5ZDAN9zVXVa==
+User-Agent: curl/7.20.1 (i386-redhat-linux-gnu)
+Host: localhost:3001
+Accept: */*
+</pre>
+
+<p>Server response:</p>
+
+<pre>
+HTTP/1.1 200 OK
+Content-Type: application/xml
+Content-Length: 3896
+&lt;?xml version='1.0' encoding='utf-8' ?&gt;
+&lt;hardware_profiles&gt;
+  &lt;hardware_profile href='http://localhost:3001/api/hardware_profiles/t1.micro' id='t1.micro'&gt;
+    &lt;name&gt;t1.micro&lt;/name&gt;
+    &lt;property kind='fixed' name='cpu' unit='count' value='1' /&gt;
+    &lt;property kind='fixed' name='memory' unit='MB' value='645.12' /&gt;
+    &lt;property kind='fixed' name='architecture' unit='label' value='i386' /&gt;
+    &lt;property kind='fixed' name='storage' unit='GB' value='160' /&gt;
+  &lt;/hardware_profile&gt;
+  &lt;hardware_profile href='http://localhost:3001/api/hardware_profiles/m1.small' id='m1.small'&gt;
+    &lt;name&gt;m1.small&lt;/name&gt;
+    &lt;property kind='fixed' name='cpu' unit='count' value='1' /&gt;
+    &lt;property kind='fixed' name='memory' unit='MB' value='1740.8' /&gt;
+    &lt;property kind='fixed' name='architecture' unit='label' value='i386' /&gt;
+    &lt;property kind='fixed' name='storage' unit='GB' value='160' /&gt;
+  &lt;/hardware_profile&gt;
+  &lt;hardware_profile href='http://localhost:3001/api/hardware_profiles/m1.large' id='m1.large'&gt;
+    &lt;name&gt;m1.large&lt;/name&gt;
+    &lt;property kind='fixed' name='cpu' unit='count' value='4' /&gt;
+    &lt;property kind='fixed' name='memory' unit='MB' value='7680.0' /&gt;
+    &lt;property kind='fixed' name='architecture' unit='label' value='x86_64' /&gt;
+    &lt;property kind='fixed' name='storage' unit='GB' value='850' /&gt;
+  &lt;/hardware_profile&gt;
+  &lt;hardware_profile href='http://localhost:3001/api/hardware_profiles/m1.xlarge' id='m1.xlarge'&gt;
+    &lt;name&gt;m1.xlarge&lt;/name&gt;
+    &lt;property kind='fixed' name='cpu' unit='count' value='8' /&gt;
+    &lt;property kind='fixed' name='memory' unit='MB' value='15360' /&gt;
+    &lt;property kind='fixed' name='architecture' unit='label' value='x86_64' /&gt;
+    &lt;property kind='fixed' name='storage' unit='GB' value='1690' /&gt;
+  &lt;/hardware_profile&gt;
+  &lt;hardware_profile href='http://localhost:3001/api/hardware_profiles/c1.medium' id='c1.medium'&gt;
+    &lt;name&gt;c1.medium&lt;/name&gt;
+    &lt;property kind='fixed' name='cpu' unit='count' value='5' /&gt;
+    &lt;property kind='fixed' name='memory' unit='MB' value='1740.8' /&gt;
+    &lt;property kind='fixed' name='architecture' unit='label' value='i386' /&gt;
+    &lt;property kind='fixed' name='storage' unit='GB' value='350' /&gt;
+  &lt;/hardware_profile&gt;
+  &lt;hardware_profile href='http://localhost:3001/api/hardware_profiles/c1.xlarge' id='c1.xlarge'&gt;
+    &lt;name&gt;c1.xlarge&lt;/name&gt;
+    &lt;property kind='fixed' name='cpu' unit='count' value='20' /&gt;
+    &lt;property kind='fixed' name='memory' unit='MB' value='7168' /&gt;
+    &lt;property kind='fixed' name='architecture' unit='label' value='x86_64' /&gt;
+    &lt;property kind='fixed' name='storage' unit='GB' value='1690' /&gt;
+  &lt;/hardware_profile&gt;
+  &lt;hardware_profile href='http://localhost:3001/api/hardware_profiles/m2.xlarge' id='m2.xlarge'&gt;
+    &lt;name&gt;m2.xlarge&lt;/name&gt;
+    &lt;property kind='fixed' name='cpu' unit='count' value='6.5' /&gt;
+    &lt;property kind='fixed' name='memory' unit='MB' value='17510.4' /&gt;
+    &lt;property kind='fixed' name='architecture' unit='label' value='x86_64' /&gt;
+    &lt;property kind='fixed' name='storage' unit='GB' value='420' /&gt;
+  &lt;/hardware_profile&gt;
+  &lt;hardware_profile href='http://localhost:3001/api/hardware_profiles/m2.2xlarge' id='m2.2xlarge'&gt;
+    &lt;name&gt;m2.2xlarge&lt;/name&gt;
+    &lt;property kind='fixed' name='cpu' unit='count' value='13' /&gt;
+    &lt;property kind='fixed' name='memory' unit='MB' value='35020.8' /&gt;
+    &lt;property kind='fixed' name='architecture' unit='label' value='x86_64' /&gt;
+    &lt;property kind='fixed' name='storage' unit='GB' value='850' /&gt;
+  &lt;/hardware_profile&gt;
+  &lt;hardware_profile href='http://localhost:3001/api/hardware_profiles/m2.4xlarge' id='m2.4xlarge'&gt;
+    &lt;name&gt;m2.4xlarge&lt;/name&gt;
+    &lt;property kind='fixed' name='cpu' unit='count' value='26' /&gt;
+    &lt;property kind='fixed' name='memory' unit='MB' value='70041.6' /&gt;
+    &lt;property kind='fixed' name='architecture' unit='label' value='x86_64' /&gt;
+    &lt;property kind='fixed' name='storage' unit='GB' value='1690' /&gt;
+  &lt;/hardware_profile&gt;
+&lt;/hardware_profiles&gt;
+</pre>
+
+<h4>Get the details of a hardware profile</h4>
+
+<p>
+To retrieve the details of a specific hardware profile use call <strong>GET /api/hardware profiles/:id</strong>. The example below shows a request for the m1-large profile of the Deltacloud mock driver. This hardware profile demonstrates the three different types of parameters (fixed, range, enum). Instances launched within this hardware profile will have exactly 2 virtual CPUs, memory in the range 7.5 to 15GB and local storage that can either be 850MB or 1GB. The default value for each dimension is indicated by the value attribute on the property element.
+</p>
+
+<p>Example request:</p>
+
+<pre>
+GET /api/hardware_profiles/m1-large?format=xml HTTP/1.1
+Authorization: Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+User-Agent: curl/7.20.1 (i386-redhat-linux-gnu)
+Host: localhost:3003
+Accept: */*
+</pre>
+
+<p>Server response:</p>
+
+<pre>
+HTTP/1.1 200 OK
+Content-Type: application/xml
+Content-Length: 808
+
+&lt;?xml version='1.0' encoding='utf-8' ?&gt;
+&lt;hardware_profile href='http://localhost:3003/api/hardware_profiles/m1-large' id='m1-large'&gt;
+  &lt;name&gt;m1-large&lt;/name&gt;
+  &lt;property kind='fixed' name='cpu' unit='count' value='2' /&gt;
+  &lt;property kind='range' name='memory' unit='MB' value='10240'&gt;
+    &lt;param href='http://localhost:3003/api/instances' method='post' name='hwp_memory' operation='create' /&gt;
+    &lt;range first='7680.0' last='15360' /&gt;
+  &lt;/property&gt;
+  &lt;property kind='enum' name='storage' unit='GB' value='850'&gt;
+    &lt;param href='http://localhost:3003/api/instances' method='post' name='hwp_storage' operation='create' /&gt;
+    &lt;enum&gt;
+      &lt;entry value='850' /&gt;
+      &lt;entry value='1024' /&gt;
+    &lt;/enum&gt;
+  &lt;/property&gt;
+  &lt;property kind='fixed' name='architecture' unit='label' value='x86_64' /&gt;
+&lt;/hardware_profile&gt;
+</pre>
+
+<a class="btn btn-inverse btn-large" style="float: right" href="/images.html">Images <i class="icon-arrow-right icon-white" style="vertical-align:baseline"> </i></a>
+
+<br/>

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/how-to-contribute.md
----------------------------------------------------------------------
diff --git a/site/content/how-to-contribute.md b/site/content/how-to-contribute.md
new file mode 100644
index 0000000..8487851
--- /dev/null
+++ b/site/content/how-to-contribute.md
@@ -0,0 +1,92 @@
+--- 
+site_name: Deltacloud API
+title: How Can I Contribute?
+---
+<br/>
+
+<h3 id="contribute">Contribute to Deltacloud</h3>
+Deltacloud project is a free open source software licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache Software Foundation</a> license. The developers community is open to anyone who wants to contribute. Contributors are required to sign an individual contributor <a href="http://www.apache.org/licenses/icla.txt">license agreement</a>. Do not hesitate to <a href="/contact.html">contact us</a> if you have any questions about contributing to the Deltacloud project. 
+
+<h4 id="how">How can I contribute?</h4>
+
+<ul class="nav nav-list">
+  <li class="nav-header"></li>
+  <li>
+    <a href="/send-patch.html">Send a patch</a>
+  </li>
+  <li>
+    <a href="/write-new-driver.html">Write a provider driver</a>
+  </li>
+  <li>
+    <a href="#bug">Report a bug</a>
+  </li>
+  <li>
+    <a href="#idea">Propose an idea</a>
+  </li>
+  <li>
+    <a href="#documentation">Write documentation</a>
+  </li>
+</ul>
+
+<br/>
+
+<h3>Overview of the Deltacloud directory structure</h3>
+
+<p>The following list contains paths to essential files and directories for developers. It is intended as a help with orientation in the project directory - for example to quickly identify where the Deltacloud cloud provider drivers are stored:</p>
+
+<div class="row">
+  <div class="span1"></div>
+  <div class="span10 offset1">
+<pre>
+deltacloud
+|-----------------------------------------------------------------------------------
+|-d-->tests                           Contains Cucumber tests
+|-----------------------------------------------------------------------------------
+|-d-->site                            Files for this website
+|-----------------------------------------------------------------------------------
+|-d-->client                          Contains the Deltacloud ruby client
+|-----------------------------------------------------------------------------------
+|-d-->clients                         Contains other Deltacloud clients (e.g. java)
+|-----------------------------------------------------------------------------------
+|-d--> server
+       |----------------------------------------------------------------------------
+       |-d-->bin                      Contains the Deltacloud executable deltacloudd
+       |----------------------------------------------------------------------------
+       |-d-->views                    Contains haml views for each collection
+       |----------------------------------------------------------------------------
+       |-d-->tests                    Contains unit tests for drivers
+       |----------------------------------------------------------------------------
+       |-d-->lib
+             |----------------------------------------------------------------------
+             |-d-->sinatra            Contains rabbit DSL and various helpers
+             |----------------------------------------------------------------------
+             |-d-->deltacloud
+                   |----------------------------------------------------------------
+                   |-d-->models       Definition of each collection model
+                   |----------------------------------------------------------------
+                   |-d-->drivers      Contains the drivers for each cloud provider
+                   |----------------------------------------------------------------
+                   |-d-->helpers      Various helper methods used by the drivers
+                   |----------------------------------------------------------------
+                   |-d-->base_driver  Contains the Deltacloud base driver
+                   |----------------------------------------------------------------
+                   |-f-->server.rb                Contains the sinatra routes
+                   |----------------------------------------------------------------
+</pre>
+
+  </div>
+</div>
+
+<br/>
+
+<h3 id="bug">Reporting a bug</h3>
+We track bugs in <a href="https://issues.apache.org/jira/browse/DTACLOUD">Apache JIRA</a>. When you discover a problem with Deltacloud functionality, check JIRA if someone has already reported the issue to the Deltacloud developers. Otherwise, <a href="https://issues.apache.org/jira/secure/CreateIssue!default.jspa">report it</a>.
+
+<h3 id="idea">Proposing an idea</h3>
+Have you found a way how to improve Deltacloud project? Do you miss a feature or a tool, which we could include into Deltacloud? Our <a href="http://teambox.com/projects/deltacloud">Teambox</a> page is a place where we keep the latest task lists and where you can add comments or suggest new features for the project.
+
+<h3 id="documentation">Writing documentation</h3>
+You can also contribute with a piece of documentation. There are still things which needs to be described. If you found one like that and you are interested in writing a couple of sentences about the particular issue, please, don't hesitate to do it and <a href="http://mail-archives.apache.org/mod_mbox/deltacloud-dev/">send us</a> your contribution. We really appreciate your help.
+
+
+

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/images.md
----------------------------------------------------------------------
diff --git a/site/content/images.md b/site/content/images.md
new file mode 100644
index 0000000..e0f41c1
--- /dev/null
+++ b/site/content/images.md
@@ -0,0 +1,285 @@
+---
+site_name: Deltacloud API
+title: Images
+---
+
+<br/>
+
+<div class="row">
+  <div class="span9">
+
+<h3 id="images">Images</h3>
+
+<p>
+Images are used to launch instances. Each image represents a virtual machine image in the back-end cloud, containing the root partition and initial storage for an instance operating system. An image has these attributes:
+</p>
+
+<ul>
+  <li>a human-readable <strong>name</strong></li>
+  <li>a <strong>description</strong></li>
+  <li>an <strong>owner_id</strong></li>
+  <li>an <strong>architecture</strong></li>
+  <li>a <strong>state</strong></li>
+</ul>
+
+<p>
+The <strong>owner_id</strong> identifies the user account to which the image belongs. The <strong>architecture</strong> attribute refers to whether the image will create an instance with 32 or 64-bit processor. The values that the Deltacloud server returns for this attribute are thus i386 and x86_64 respectively. The state attribute varies between back-end clouds (it depends on a cloud provider). For example, AWS EC2 image state can be one of AVAILABLE, PENDING or FAILED, whereas Rackspace Cloudservers image state can be one of UNKNOWN, PREPARING, ACTIVE, QUEUED or FAILED. Finally, each image also contains an <code>&lt;actions&gt;</code> attribute which specifies the URI to which a client may issue a <strong>HTTP POST</strong> for creation of an instance from the given image.
+</p>
+
+  </div>
+  <div class="span3">
+
+<ul class="nav nav-list well">
+  <li class="nav-header">
+    REST API
+  </li>
+  <li><a href="/rest-api.html">Introduction</a></li>
+  <li><a href="/api-entry-point.html">API entry point</a></li>
+  <li><a href="/compute-resources.html">Compute resources</a></li>
+  <ul class="nav nav-list">
+    <li><a href="/compute-resources.html#realms">Realms</a></li>
+    <li><a href="/hardware-profiles.html">Hardware profiles</a></li>
+    <li class="active"><a href="#images">Images</a></li>
+    <li><a href="/instance-states.html">Instance states</a></li>
+    <li><a href="/instances.html">Instances</a></li>
+    <li><a href="/keys.html">Keys</a></li>
+    <li><a href="/firewalls.html">Firewalls</a></li>
+    <li><a href="/addresses.html">Addresses</a></li>
+    <li><a href="/load-balancers.html">Load balancers</a></li>
+  </ul>
+  <li><a href="/storage-resources.html">Storage resources</a></li>
+</ul>
+
+  </div>
+</div>
+
+<br/>
+
+<ul class="nav nav-pills">
+  <li class="active"><a href="#tab1" data-toggle="tab">Get a list of all images</a></li>
+  <li><a href="#tab2" data-toggle="tab">Get the details of an image</a></li>
+  <li><a href="#tab3" data-toggle="tab">Create/delete an image</a></li>
+</ul>
+
+<hr>
+
+<div class="tab-content">
+  <div class="tab-pane active" id="tab1">
+
+<h4>Get the list of all images</h4>
+
+<p>
+To return a list of all images available in the back-end cloud use call <strong>GET /api/images</strong>. By default this call will return all images that are available to the given user account. Optionally a client may restrict the list of images returned by specifying the <strong>owner_id</strong> or <strong>architecture</strong> parameters in the request (architecture is one of x86_64 for 64-bit processors or i386 for 32-bit processors). The example below restricts the image list to 64-bit architecture images belonging to owner_id 023801271342.
+</p>
+
+<p>Example request:</p>
+
+<pre>
+GET /api/images?owner_id=023801271342&architecture=x86_64&format=xml HTTP/1.1
+Authorization: Basic AU1J3UB2121Afd1DdyQWxLaTYTmJMNF4zTXBoRGdhMDh2RUw5ZDAN9zVXVa==
+User-Agent: curl/7.20.1 (i386-redhat-linux-gnu)
+Host: localhost:3001
+Accept: */*
+</pre>
+
+<p>Server response:</p>
+
+<pre>
+HTTP/1.1 200 OK
+Content-Type: application/xml
+Content-Length: 1971
+
+&lt;?xml version='1.0' encoding='utf-8' ?&gt;
+&lt;images&gt;
+  &lt;image href='http://localhost:3001/api/images/ami-eea35787' id='ami-eea35787'&gt;
+    &lt;name&gt;sles-10-sp3-v1.00.x86_64&lt;/name&gt;
+    &lt;owner_id&gt;013907871322&lt;/owner_id&gt;
+    &lt;description&gt;SUSE Linux Enterprise Server 10 Service Pack 3 for x86_64 (v1.00)&lt;/description&gt;
+    &lt;architecture&gt;x86_64&lt;/architecture&gt;
+    &lt;state&gt;&lt;/state&gt;
+    &lt;actions&gt;
+      &lt;link href='http://localhost:3001/api/instances;image_id=ami-eea35787' method='post' rel='create_instance' /&gt;
+    &lt;/actions&gt;
+  &lt;/image&gt;
+  &lt;image href='http://localhost:3001/api/images/ami-6e649707' id='ami-6e649707'&gt;
+    &lt;name&gt;sles-11-sp1-hvm-v1.00.x86_64&lt;/name&gt;
+    &lt;owner_id&gt;013907871322&lt;/owner_id&gt;
+    &lt;description&gt;SUSE Linux Enterprise Server 11 Service Pack 1 for HVM x86_64 (v1.00)&lt;/description&gt;
+    &lt;architecture&gt;x86_64&lt;/architecture&gt;
+    &lt;state&gt;&lt;/state&gt;
+    &lt;actions&gt;
+      &lt;link href='http://localhost:3001/api/instances;image_id=ami-6e649707' method='post' rel='create_instance' /&gt;
+    &lt;/actions&gt;
+  &lt;/image&gt;
+  &lt;image href='http://localhost:3001/api/images/ami-e4a7558d' id='ami-e4a7558d'&gt;
+    &lt;name&gt;sles-11-sp1-hvm-v1.01.x86_64&lt;/name&gt;
+    &lt;owner_id&gt;013907871322&lt;/owner_id&gt;
+    &lt;description&gt;SUSE Linux Enterprise Server 11 Service Pack 1 for HVM x86_64 (v1.01)&lt;/description&gt;
+    &lt;architecture&gt;x86_64&lt;/architecture&gt;
+    &lt;state&gt;&lt;/state&gt;
+    &lt;actions&gt;
+      &lt;link href='http://localhost:3001/api/instances;image_id=ami-e4a7558d' method='post' rel='create_instance' /&gt;
+    &lt;/actions&gt;
+  &lt;/image&gt;
+  &lt;image href='http://localhost:3001/api/images/ami-e4a3578d' id='ami-e4a3578d'&gt;
+    &lt;name&gt;sles-11-sp1-v1.00.x86_64&lt;/name&gt;
+    &lt;owner_id&gt;013907871322&lt;/owner_id&gt;
+    &lt;description&gt;SUSE Linux Enterprise Server 11 Service Pack 1 for x86_64 (v1.00)&lt;/description&gt;
+    &lt;architecture&gt;x86_64&lt;/architecture&gt;
+    &lt;state&gt;&lt;/state&gt;
+    &lt;actions&gt;
+      &lt;link href='http://localhost:3001/api/instances;image_id=ami-e4a3578d' method='post' rel='create_instance' /&gt;
+    &lt;/actions&gt;
+  &lt;/image&gt;
+&lt;/images&gt;
+</pre>
+
+  </div>
+  <div class="tab-pane" id="tab2">
+
+<h4>Get details of an image</h4>
+
+<p>To retrieve the description of a specific image use call <strong>GET /api/images/:id</strong>.</p>
+
+<p>Example request:</p>
+
+<pre>
+GET /api/images/14?format=xml HTTP/1.1
+Authorization: Basic AU1J3UB2121Afd1DdyQWxLaTYTmJMNF4zTXBoRGdhMDh2RUw5ZDAN9zVXVa==
+User-Agent: curl/7.20.1 (i386-redhat-linux-gnu)
+Host: localhost:3002
+Accept: */*
+</pre>
+
+<p>Server response:</p>
+
+<pre>
+HTTP/1.1 200 OK
+Content-Type: application/xml
+Content-Length: 433
+
+&lt;?xml version='1.0' encoding='utf-8' ?&gt;
+&lt;image href='http://localhost:3002/api/images/14' id='14'&gt;
+  &lt;name&gt;Red Hat Enterprise Linux 5.4&lt;/name&gt;
+  &lt;owner_id&gt;jsmith&lt;/owner_id&gt;
+  &lt;description&gt;Red Hat Enterprise Linux 5.4&lt;/description&gt;
+  &lt;architecture&gt;x86_64&lt;/architecture&gt;
+  &lt;state&gt;ACTIVE&lt;/state&gt;
+  &lt;actions&gt;
+    &lt;link href='http://localhost:3002/api/instances;image_id=14' method='post' rel='create_instance' /&gt;
+  &lt;/actions&gt;
+&lt;/image&gt;
+</pre>
+
+  </div>
+  <div class="tab-pane" id="tab3">
+
+<h4>Create an image</h4>
+
+<p>
+To create a new image from an existing running instance use call <strong>POST /api/images</strong>. This operation is not available to all cloud providers and for some cloud providers this operation is not possible for all instances. For example, in the Amazon EC2 cloud, you can create a custom image from EBS backed instances but not from root-store instances. 
+</p>
+
+<div class="alert alert-error">
+  <a class="close" data-dismiss="alert" href="#">×</a>
+  <strong>Note: </strong> 
+  <p>
+  RHVE-M and vSphere providers allow you to create an image only from a stopped instance, not from a running instance.
+  </p>
+</div>
+
+<p>
+The Deltacloud API provides a mechanism with which clients can determine whether a given instance may be saved as a custom image. If an instance snapshot is possible, the instance XML <code>&lt;actions&gt;</code> list contains a <strong>create_image</strong> action. This action defines the client's URI which is used in creating the new image. For example:
+</p>
+
+<pre>
+...
+&lt;actions&gt;
+  &lt;link href='http://localhost:3002/api/instances/20109341/reboot' method='post' rel='reboot' /&gt;
+  &lt;link href='http://localhost:3002/api/instances/20109341/stop' method='post' rel='stop' /&gt;
+  &lt;link href='http://localhost:3002/api/instances/20109341/run;id=20109341' method='post' rel='run' /&gt;
+  &lt;link href='http://localhost:3002/api/images;instance_id=20109341' method='post' rel='create_image' /&gt;
+&lt;/actions&gt;
+...
+</pre>
+
+<p>
+To create a new image the client must specify the <strong>instance_id</strong> of the running instance. Optionally, the client may also provide a <strong>name</strong> and a <strong>description</strong>. The parameters may be defined as multipart/form-data fields in the client POST.
+</p>
+
+<p>
+Alternatively, clients may also specify parameters using a content-type of application/x-www-form-urlencoded. The Deltacloud server will respond to a successful operation with <strong>HTTP 201 Created</strong> and provide details of the newly created image.
+</p>
+
+<p>Example request:</p>
+
+<pre>
+POST /api/images?format=xml HTTP/1.1
+Authorization: Basic AU1J3UB2121Afd1DdyQWxLaTYTmJMNF4zTXBoRGdhMDh2RUw5ZDAN9zVXVa==
+User-Agent: curl/7.20.1 (i386-redhat-linux-gnu)
+Host: localhost:3002
+Accept: */*
+Content-Length: 96
+Content-Type: application/x-www-form-urlencoded
+
+instance_id=20109341&name=customisedserver&description=jsmith%20cu
+stomised%20web%20server%20July%2021%202011
+</pre>
+
+<p>Server response:</p>
+
+<pre>
+HTTP/1.1 201 Created
+Content-Type: application/xml
+Content-Length: 427
+
+&lt;?xml version='1.0' encoding='utf-8' ?&gt;
+&lt;image href='http://localhost:3002/api/images/12346145' id='12346145'&gt;
+  &lt;name&gt;customisedserver&lt;/name&gt;
+  &lt;owner_id&gt;mandreou&lt;/owner_id&gt;
+  &lt;description&gt;customisedserver&lt;/description&gt;
+  &lt;architecture&gt;x86_64&lt;/architecture&gt;
+  &lt;state&gt;QUEUED&lt;/state&gt;
+  &lt;actions&gt;
+    &lt;link href='http://localhost:3002/api/instances;image_id=12346145' method='post' rel='create_instance' /&gt;
+  &lt;/actions&gt;
+&lt;/image&gt;
+</pre>
+
+<div class="alert alert-error">
+  <a class="close" data-dismiss="alert" href="#">×</a>
+  <strong>Note: </strong> 
+  <p>When you create an image from a stopped instance in <strong>vSphere</strong> cloud, this particular instance is marked as <strong>template</strong> and it is also removed from Instances.</p>
+  
+  <p>Unlike other providers, vSphere does not support assigning a <strong>name</strong> and a <strong>description</strong> to the image when you create an image from a stopped instance. The image created in vSphere ignores these attributes passed to the API during the creation.</p>
+</div>
+
+<h4>Delete an image</h4>
+
+<p>
+To delete the specified image from the back-end cloud use call <strong>DELETE /api/images/:id</strong>. The Deltacloud server will return a <strong>HTTP 204 No Content</strong> after a succesful operation:
+</p>
+
+<p>Example request:</p>
+
+<pre>
+DELETE /api/images/12346145?format=xml HTTP/1.1
+Authorization: Basic AU1J3UB2121Afd1DdyQWxLaTYTmJMNF4zTXBoRGdhMDh2RUw5ZDAN9zVXVa==
+User-Agent: curl/7.20.1 (i386-redhat-linux-gnu)
+Host: localhost:3002
+Accept: */*
+</pre>
+
+<p>Server response:</p>
+
+<pre>
+HTTP/1.1 204 No Content
+</pre>
+
+  </div>
+</div>
+
+
+<a class="btn btn-inverse btn-large" style="float: right" href="/instance-states.html">Instance states <i class="icon-arrow-right icon-white" style="vertical-align:baseline"> </i></a>
+
+<br/>

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/index.haml
----------------------------------------------------------------------
diff --git a/site/content/index.haml b/site/content/index.haml
deleted file mode 100644
index 7d521ee..0000000
--- a/site/content/index.haml
+++ /dev/null
@@ -1,51 +0,0 @@
----
-title: Deltacloud | Many Clouds. One API. No Problem.
-extension: html
-filter: haml
----
-#frontpage
-  %p.intro
-    Start an instance on an internal cloud, then with the same code start another on EC2 or
-    Rackspace. Deltacloud protects your apps from cloud API changes and
-    incompatibilities, so you can concentrate on managing cloud instances
-    the way you want.
-  .colleft
-    %p
-      %em
-        Deltacloud
-      gives you:
-    %ul
-      %li
-        A
-        %a{ :href => "api.html" }
-          RESTful API
-        for simple, any-platform access
-      %li
-        Support for all
-        %a.providers{ :href => "#providers", :title => "Supported providers" }          major cloud service providers
-      %li
-        Backward compatibility across versions, providing long-term stability for scripts, tools and applications
-      %li
-        A separate
-        %a{ :href => "http://dmtf.org/standards/cloud" }
-          CIMI
-        frontend, as well as CIMI API compliance tests and a simple CIMI
-        client application.
-  .right
-    %img{ :src => "styles/diagram-soa.png", :height => "265", :alt => "diagram-soa", :width => "620", :style => "margin-bottom:1em;" }
-  %p.foot
-    %em Deltacloud
-    makes it easy for cloud providers to
-    %a{ :href => "developers.html" }
-      add their cloud
-    to the Deltacloud API.
-#news
-  .recent
-    %h2
-      News
-      .tweet
-%br
-%br
-#popups{ :style => "display:none;" }
-  #providers
-    = render(:partial => "providers")

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/index.md
----------------------------------------------------------------------
diff --git a/site/content/index.md b/site/content/index.md
new file mode 100644
index 0000000..b53ce38
--- /dev/null
+++ b/site/content/index.md
@@ -0,0 +1,55 @@
+--- 
+site_name: Deltacloud API
+title: Deltacloud API
+---
+
+<div class="row">
+  <div class="span12 intro">
+    <div class="article-nav news well tweet"></div>
+  </div>
+</div>
+<div class="row home-text">
+  <div class="span5 grad1 about">
+    <blockquote>
+      <h3>What does Deltacloud give you?</h3>
+      <ul>
+        <li>an opportunity to manage cloud instances the way you want</li>
+        <li>a way to protect your apps from cloud API changes and incompatitibilities</li>
+        <li>support for all major <a class="providers" href="/drivers.html#drivers" title="Supported providers">cloud service providers</a></li>
+        <li>makes it easy for cloud providers to <a href="/how-to-contribute.html">add their cloud</a></li>
+      </ul>
+
+      <a class="btn btn-large btn-primary" style="float:right" href="/about.html">Learn more</a>
+
+    </blockquote>
+  </div>
+
+  <div class="span4 grad1 about">
+    <blockquote>
+      <h3>For developers</h3>
+      <h6>Deltacloud:</h6>
+      <ul>
+        <li>is an <b>open source</b> Apache project</li>
+        <li>is a <a href="/rest-api.html" title="API Documentation">REST-based API </a>for simple any-platform access</li>
+        <li>is written in Ruby with love</li>
+        <li>comes with <a href="/usage.html#clients">client libraries</a> for your favourite programming language</li>
+      </ul>
+      <a class="btn btn-large btn-primary" style="float:right" href="/how-to-contribute.html">Contribute</a>
+
+    </blockquote>
+  </div>
+  <div class="span3 grad1 about">
+    <blockquote>
+      <p>
+      <strong>Current release:</strong><br>
+      <a class="btn btn-info" href="https://rubygems.org/gems/deltacloud-core" target="_blank"><b>deltacloud-core-0.5.0</b></a><br/>
+      <small>More about <a href="/install-deltacloud.html">installation</a>...</small>
+      </p>
+      <br/>
+      <p>
+      <a class="btn btn-danger" href="/how-to-contribute.html#bug">Found a bug?</a>
+      </p>
+    </blockquote>
+  </div>
+
+</div>

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/install-deltacloud.md
----------------------------------------------------------------------
diff --git a/site/content/install-deltacloud.md b/site/content/install-deltacloud.md
new file mode 100644
index 0000000..f6ffbaa
--- /dev/null
+++ b/site/content/install-deltacloud.md
@@ -0,0 +1,139 @@
+--- 
+site_name: Deltacloud API
+title: Install Deltacloud
+---
+<br/>
+<h3> Installation dependencies</h3>
+<p>First of all, you have to install several dependecies. The Deltacloud server relies on a number of external rubygems and other libraries. The following packages are neccessary for running the Deltacloud server. The installation of dependencies slightly differs from distribution to distribution. You will need:</p>
+
+<ul>
+  <li>
+  ruby and ruby-devel,
+  </li>
+  <li>
+  gem (RubyGems),
+  </li>
+  <li>
+  gcc-c++
+  </li>
+  <li>
+  libxml2 and libxml2-devel,
+  </li>
+  <li>
+  libxslt and libxslt-devel,
+  </li>
+  <li>
+  rake.
+  </li>
+</ul>
+
+<br/>
+
+<h3>Fedora and Red Hat Enterprise Linux</h3>
+
+<h4>Ruby and Ruby-devel</h4>
+<p>Check if you already have a <a href="http://www.ruby-lang.org/en/downloads/">Ruby installation</a> by typing the following command. You should see something that looks like:</p>
+
+<pre>
+$ ruby -v
+ruby 1.8.7 (2010-08-16 patchlevel 302) [i686-linux]
+</pre>
+
+<p>Deltacloud requires at least Ruby 1.8.7. You need to install also the development headers (ruby-devel) because Deltacloud relies on some rubygems with C extensions. According to your package manager use commands: </p>
+
+<pre>
+$ sudo yum install ruby
+$ sudo yum install ruby-devel
+</pre>
+
+<h4>RubyGems</h4>
+<p>Deltacloud relies on a number of <a href="http://docs.rubygems.org/read/chapter/3">RubyGems</a>. You can check if you already have gem executable (similarly to ruby) by typing <code>$ gem -v</code>. Otherwise use your package manager for the installation: </p>
+
+<pre>
+$ sudo yum install rubygems
+</pre>
+
+<h4>GCC-C++, Libxml2, Libxml2-devel, Libxslt, Libxslt-devel</h4>
+<p>These libraries are required to build RubyGems that have C extensions. Use commands:</p>
+
+<pre>
+$ sudo yum install gcc-c++
+$ sudo yum install libxml libxml2-devel
+$ sudo yum install libxslt libxslt-devel
+</pre>
+
+<h4>Rake</h4>
+<p><a href="http://rake.rubyforge.org/">Rake</a> is Ruby's Make and is itself a ruby gem. Once you have RubyGems installed you can get rake with:</p>
+
+<pre>$ sudo gem install rake</pre>
+
+<br/>
+
+<h3>Debian and Ubuntu</h3>
+
+<h4>Ruby and RubyGems</h4>
+The following instructions focus on installing Ruby 1.9 (Deltacloud requires at least ruby 1.8.7.). Install ruby and rubygem by typing:
+
+<pre>$ sudo apt-get install ruby1.9.1-full</pre>
+
+Use the following command to check, whether the installation was successful. You should see a similar response:
+
+<pre>
+$ ruby -v
+ruby 1.9.2p290 (2011-07-09 revision 32553) [i686-linux]
+</pre>
+
+You can check the installation of Rubygems the same way:
+
+<pre>
+$ gem -v
+1.3.7
+</pre>
+
+<h4>G++, Libxml2, Libxml2-dev, Libxslt, Libxslt-dev</h4>
+<p>These libraries are required to build RubyGems that have C extensions. Use commands:</p>
+
+<pre>
+$ sudo apt-get install g++
+$ sudo apt-get install libxml libxml2-dev
+$ sudo apt-get install libxslt libxslt-dev
+</pre>
+
+<h4 id="gem-list">Gem dependecies</h4>
+<p>Debian and Ubuntu distributions also require to install following gem dependencies:
+<pre>
+gem install thin sinatra rack-accept rest-client sinatra-content-for nokogiri
+</pre>
+Once these gems are installed, go to the directory (normally <strong>/var/lib/gems/1.9.1/gems</strong>), where gems are located and check that you have following gems listed. You may see more gems than you directly installed, because RubyGems install gem dependecies automaticly.
+</p>
+
+<br/>
+
+<div class="row">
+  <div class="span1"></div>
+  <div class="span10 offset1">
+    <blockquote>Aws-2.5.6, builder-3.0.0, bundler-1.1.3, daemons-1.1.8, eventmachine-0.12.10, haml-3.1.4, http_connection-1.4.1, json-1.6.6, mime-types-1.18, net-ssh-2.3.0, nokogiri-1.5.2, rack-1.4.1, rake-0.9.2.2, rack-accept-0.4.4, rack-protection-1.2.0, rest-client-1.6.7, sinatra-1.3.2, sinatra-content-for-0.1, thin-1.3.1, tilt-1.3.3, uuidtools-2.1.2, xml-simple-1.1.1
+    </blockquote>
+  </div>
+</div>
+
+<p>
+You may have trouble with the installation, if the Makefile is missing. Then, you need to install make:
+</p>
+
+<pre>
+$ sudo apt-get install make
+</pre>
+
+<br/>
+
+<h3>Installation of Deltacloud itself</h3>
+<p>Once you've setup all the dependencies listed above, installing Deltacloud is as easy. Type:</p>
+
+<pre>$ sudo gem install deltacloud-core</pre>
+
+<p><strong>And thats it!</strong> The gem install command will automatically fetch and install all other gems that the Deltacloud server needs. As an alternative you can get the latest releases of Deltacloud from the <a href="http://www.apache.org/dist/deltacloud/">Apache website</a>.</p>
+
+<a class="btn btn-inverse btn-large" style="float: right" href="/run-deltacloud-server.html">Run Deltacloud</a>
+
+<br/>

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/instance-states.md
----------------------------------------------------------------------
diff --git a/site/content/instance-states.md b/site/content/instance-states.md
new file mode 100644
index 0000000..8c0c966
--- /dev/null
+++ b/site/content/instance-states.md
@@ -0,0 +1,159 @@
+---
+site_name: Deltacloud API
+title: Instance states
+---
+<br/>
+
+<div class="row">
+  <div class="span9">
+
+<h3 id="instance-states">Instance states</h3>
+
+<p>
+Each cloud defines a slightly different lifecycle model for instances. In some clouds, instances start running immediately after creation, in others, they enter a pending state and you need to start them explicitly.
+</p>
+
+<p>
+Differences between clouds are modelled by expressing the lifecycle of an instance as a finite state machine and capturing it in an instance states entity.The API defines the following states for an instance:</p>
+
+<table class="table table-condensed table-striped">
+  <thead>
+    <tr>
+      <th>State</th>
+      <th>Meaning</th>
+    </tr>
+  </thead>
+  <tbody>
+    <tr>
+      <td>start</td>
+      <td>an instance state before creation of an instance</td>
+    </tr>
+    <tr>
+      <td>pending</td>
+      <td>creation of an instance is in progress</td>
+    </tr>
+    <tr>
+      <td>running</td>
+      <td>an instance is running</td>
+    </tr>
+    <tr>
+      <td>shutting-down</td>
+      <td>an instance is stopped</td>
+    </tr>
+    <tr>
+      <td>stopped</td>
+      <td>an instance is stopped</td>
+    </tr>
+    <tr>
+      <td>finished</td>
+      <td>all resources for an instance have now been freed</td>
+    </tr>
+  </tbody>
+</table>
+
+  </div>
+  <div class="span3">
+
+<ul class="nav nav-list well">
+  <li class="nav-header">
+    REST API
+  </li>
+  <li><a href="/rest-api.html">Introduction</a></li>
+  <li><a href="/api-entry-point.html">API entry point</a></li>
+  <li><a href="/compute-resources.html">Compute resources</a></li>
+  <ul class="nav nav-list">
+    <li><a href="/compute-resources.html">Realms</a></li>
+    <li><a href="/hardware-profiles.html">Hardware profiles</a></li>
+    <li><a href="/images.html">Images</a></li>
+    <li class="active"><a href="#instance-states">Instance states</a></li>
+    <li><a href="/instances.html">Instances</a></li>
+    <li><a href="/keys.html">Keys</a></li>
+    <li><a href="/firewalls.html">Firewalls</a></li>
+    <li><a href="/addresses.html">Addresses</a></li>
+    <li><a href="/load-balancers.html">Load balancers</a></li>
+  </ul>
+  <li><a href="/storage-resources.html">Storage resources</a></li>
+</ul>
+
+  </div>
+</div>
+
+<p>
+The details of a particular instance describes also the actions (state transitions) which can be performed on the instance. If the state transition is marked as <strong>auto</strong>, the transition from one state to another is done automatically. The possible instance actions are:
+</p>
+
+
+<table class="table table-condensed table-striped">
+ <thead>
+  <tr>
+   <th>Action</th>
+   <th>Meaning</th>
+  </tr>
+ </thead>
+ <tbody>
+  <tr>
+   <td>start</td>
+   <td>starts the instance</td>
+  </tr>
+  <tr>
+   <td>stop</td>
+   <td>stops (and for some providers shutdown) the instance</td>
+  </tr>
+  <tr>
+   <td>reboot</td>
+   <td>reboots the instance</td>
+  </tr>
+  <tr>
+   <td>destroy</td>
+   <td>stops the instance and completely destroys it</td>
+  </tr>
+ </tbody>
+</table>
+
+
+<h4>Get an instance states entity</h4>
+
+To retrieve the instance states entity for a back-end cloud use call <strong>GET /api/instance_states</strong>. The instance states entity defines possible transitions between various states of an instance, specific for each back-end cloud. As a result, instance states defines the finite state machine for instances from the given cloud.
+
+<p>Example request:</p>
+
+<pre>
+GET /api/instance_states?format=xml HTTP/1.1
+Authorization: Basic AU1J3UB2121Afd1DdyQWxLaTYTmJMNF4zTXBoRGdhMDh2RUw5ZDAN9zVXVa==
+User-Agent: curl/7.20.1 (i386-redhat-linux-gnu)
+Host: localhost:3002
+Accept: */*
+</pre>
+
+<p>Server response:</p>
+
+<pre>
+HTTP/1.1 200 OK
+Content-Type: application/xml
+Content-Length: 583
+
+&lt;states&gt;
+  &lt;state name='start'&gt;
+    &lt;transition action='create' to='pending'&gt;&lt;/transition&gt;
+  &lt;/state&gt;
+  &lt;state name='pending'&gt;
+    &lt;transition auto='true' to='running'&gt;&lt;/transition&gt;
+  &lt;/state&gt;
+  &lt;state name='running'&gt;
+    &lt;transition action='reboot' to='running'&gt;&lt;/transition&gt;
+    &lt;transition action='stop' to='shutting_down'&gt;&lt;/transition&gt;
+  &lt;/state&gt;
+  &lt;state name='shutting_down'&gt;
+    &lt;transition auto='true' to='stopped'&gt;&lt;/transition&gt;
+  &lt;/state&gt;
+  &lt;state name='stopped'&gt;
+    &lt;transition auto='true' to='finish'&gt;&lt;/transition&gt;
+  &lt;/state&gt;
+  &lt;state name='finish'&gt;
+  &lt;/state&gt;
+&lt;/states&gt;
+</pre>
+
+<a class="btn btn-inverse btn-large" style="float: right" href="/instances.html">Instances <i class="icon-arrow-right icon-white" style="vertical-align:baseline"> </i></a>
+
+<br/>

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/instances.md
----------------------------------------------------------------------
diff --git a/site/content/instances.md b/site/content/instances.md
new file mode 100644
index 0000000..ad97ff7
--- /dev/null
+++ b/site/content/instances.md
@@ -0,0 +1,633 @@
+---
+site_name: Deltacloud API
+title: Instances
+---
+
+<br/>
+
+<div class="row">
+  <div class="span9">
+
+<h3 id="instances">Instances</h3>
+
+<p>
+An instance represents the core of all cloud compute activity: a running virtual machine. An instance is created from an image, with a specified hardware profile and in a given realm. Each instance can have a number of other attributes, not all of which are exposed for all back-end cloud providers. The full list of possible instance attributes is:
+</p>
+
+<table class="table table-condensed table-striped">
+  <thead>
+    <tr>
+      <th>Attribute</th>
+      <th>Meaning</th>
+    </tr>
+  </thead>
+  <tbody>
+    <tr>
+     <td>owner_id</td>
+     <td>the id of the cloud provider account that launched the instance</td>
+    </tr>
+    <tr>
+      <td>image_id</td>
+      <td>the id of the image from which the instance was launched</td>
+    </tr>
+    <tr>
+      <td>name</td>
+      <td>a human readable name for the instance given at launch time</td>
+    </tr>
+    <tr>
+      <td>realm_id</td>
+      <td>realm into which the instance was launched</td>
+    </tr>
+    <tr>
+      <td>state</td>
+      <td>current state of the instance (e.g. 'running')</td>
+    </tr>
+    <tr>
+      <td>actions</td>
+      <td>actions that a client may effect on the instance, based on current state</td>
+    </tr>
+    <tr>
+      <td>public_addresses</td>
+      <td>the globally routable IP address of the instance</td>
+    </tr>
+    <tr>
+      <td>private_addresses</td>
+      <td>the private IP address of the instance, routable within its private network</td>
+    </tr>
+    <tr>
+      <td>instance_profile</td>
+      <td>the specific values of memory, cpu, storage</td>
+    </tr>
+    <tr>
+      <td>launch_time</td>
+      <td>timestamp at which the instance was launched</td>
+    </tr>
+    <tr>
+      <td>keyname</td>
+      <td>name of authentication key, if this method is used for authentication (e.g. EC2)</td>
+    </tr>
+    <tr>
+      <td>username</td>
+      <td>the username for authentication when connecting to the instance</td>
+    </tr>
+    <tr id="instance">
+      <td>password</td>
+      <td>the password used together with username above</td>
+    </tr>
+    <tr>
+      <td>firewalls</td>
+      <td>the firewalls that this instance was launched into (EC2 specific)</td>
+    </tr>
+  </tbody>
+</table>
+
+  </div>
+  <div class="span3">
+  
+<ul class="nav nav-list well">
+  <li class="nav-header">
+    REST API
+  </li>
+  <li><a href="/rest-api.html">Introduction</a></li>
+  <li><a href="/api-entry-point.html">API entry point</a></li>
+  <li><a href="/compute-resources.html">Compute resources</a></li>
+  <ul class="nav nav-list">
+    <li><a href="/compute-resources.html">Realms</a></li>
+    <li><a href="/hardware-profiles.html">Hardware profiles</a></li>
+    <li><a href="/images.html">Images</a></li>
+    <li><a href="/instance-states.html">Instance states</a></li>
+    <li class="active"><a href="#instances">Instances</a></li>
+    <li><a href="/keys.html">Keys</a></li>
+    <li><a href="/firewalls.html">Firewalls</a></li>
+    <li><a href="/addresses.html">Addresses</a></li>
+    <li><a href="/load-balancers.html">Load balancers</a></li>
+  </ul>
+  <li><a href="/storage-resources.html">Storage resources</a></li>
+</ul>
+
+  </div>
+</div>
+
+<ul class="nav nav-pills">
+  <li id="instance1" class="active"><a href="#tab1" data-toggle="tab">Get a list of all instances</a></li>
+  <li id="instance2"><a href="#tab2" data-toggle="tab">Get the details of an instance</a></li>
+  <li id="instance3"><a href="#tab3" data-toggle="tab">Launch an action</a></li>
+  <li id="instance4"><a href="#tab4" data-toggle="tab">Create an instance</a></li>
+</ul>
+
+<hr>
+
+<div class="tab-content">
+  <div class="tab-pane active" id="tab1">
+
+  <h4 id="list">Get a list of all current instances</h4>
+
+  <p>
+  To produce a list of all current instances in the given cloud (belonging to the specified account) use call <strong>GET /api/instances</strong>. The example below displays instances in the Amazon EC2 cloud.
+  </p>
+
+  <p>
+  Example request:
+  </p>
+
+<pre>
+GET /api/instances?format=xml HTTP/1.1
+Authorization: Basic AU1J3UB2121Afd1DdyQWxLaTYTmJMNF4zTXBoRGdhMDh2RUw5ZDAN9zVXVa==
+User-Agent: curl/7.20.1 (i386-redhat-linux-gnu)
+Host: localhost:3001
+Accept: */*
+</pre>
+
+  <p>Client response:</p>
+
+<pre>
+HTTP/1.1 200 OK
+Content-Type: application/xml
+Content-Length: 2790
+&lt;?xml version='1.0' encoding='utf-8' ?&gt;
+&lt;instances&gt;
+  &lt;instance href='http://localhost:3001/api/instances/i-1fbc627e' id='i-1fbc627e'&gt;
+    &lt;name&gt;ami-f51aff9c&lt;/name&gt;
+    &lt;owner_id&gt;393485797142&lt;/owner_id&gt;
+    &lt;image href='http://localhost:3001/api/images/ami-f51aff9c' id='ami-f51aff9c'&gt;&lt;/image&gt;
+    &lt;realm href='http://localhost:3001/api/realms/us-east-1c' id='us-east-1c'&gt;&lt;/realm&gt;
+    &lt;state&gt;RUNNING&lt;/state&gt;
+    &lt;hardware_profile href='http://localhost:3001/api/hardware_profiles/c1.medium' id='c1.medium'&gt;
+    &lt;/hardware_profile&gt;
+    &lt;actions&gt;
+      &lt;link href='http://localhost:3001/api/instances/i-1fbc627e/reboot' method='post' rel='reboot' /&gt;
+      &lt;link href='http://localhost:3001/api/instances/i-1fbc627e/stop' method='post' rel='stop' /&gt;
+      &lt;link href='http://localhost:3001/api/instances/i-1fbc627e/run;id=i-1fbc627e' method='post' rel='run' /&gt;
+    &lt;/actions&gt;
+    &lt;launch_time&gt;2011-07-22T11:29:48.000Z&lt;/launch_time&gt;
+    &lt;public_addresses&gt;&lt;address&gt;ec2-50-16-183-107.compute-1.amazonaws.com&lt;/address&gt;&lt;/public_addresses&gt;
+    &lt;private_addresses&gt;&lt;address&gt;domU-12-31-39-0F-79-D4.compute-1.internal&lt;/address&gt;&lt;/private_addresses&gt;
+    &lt;firewalls&gt;
+      &lt;firewall href='http://localhost:3001/api/firewalls/default' id='default'&gt;&lt;/firewall&gt;
+    &lt;/firewalls&gt;
+    &lt;authentication type='key'&gt;
+      &lt;login&gt;
+        &lt;keyname&gt;eftah&lt;/keyname&gt;
+      &lt;/login&gt;
+    &lt;/authentication&gt;
+  &lt;/instance&gt;
+  &lt;instance href='http://localhost:3001/api/instances/i-f3ba6492' id='i-f3ba6492'&gt;
+    &lt;name&gt;ami-2b5fba42&lt;/name&gt;
+    &lt;owner_id&gt;393485797142&lt;/owner_id&gt;
+    &lt;image href='http://localhost:3001/api/images/ami-2b5fba42' id='ami-2b5fba42'&gt;&lt;/image&gt;
+    &lt;realm href='http://localhost:3001/api/realms/us-east-1d' id='us-east-1d'&gt;&lt;/realm&gt;
+    &lt;state&gt;RUNNING&lt;/state&gt;
+    &lt;hardware_profile href='http://localhost:3001/api/hardware_profiles/m1.small' id='m1.small'&gt;
+    &lt;/hardware_profile&gt;
+    &lt;actions&gt;
+      &lt;link href='http://localhost:3001/api/instances/i-f3ba6492/reboot' method='post' rel='reboot' /&gt;
+      &lt;link href='http://localhost:3001/api/instances/i-f3ba6492/stop' method='post' rel='stop' /&gt;
+      &lt;link href='http://localhost:3001/api/instances/i-f3ba6492/run;id=i-f3ba6492' method='post' rel='run' /&gt;
+    &lt;/actions&gt;
+    &lt;launch_time&gt;2011-07-22T11:32:25.000Z&lt;/launch_time&gt;
+    &lt;public_addresses&gt;&lt;address&gt;ec2-184-73-78-87.compute-1.amazonaws.com&lt;/address&gt;&lt;/public_addresses&gt;
+    &lt;private_addresses&gt;&lt;address&gt;ip-10-196-89-221.ec2.internal&lt;/address&gt;&lt;/private_addresses&gt;
+    &lt;firewalls&gt;
+      &lt;firewall href='http://localhost:3001/api/firewalls/default' id='default'&gt;&lt;/firewall&gt;
+      &lt;firewall href='http://localhost:3001/api/firewalls/test' id='test'&gt;&lt;/firewall&gt;
+    &lt;/firewalls&gt;
+    &lt;authentication type='key'&gt;
+      &lt;login&gt;
+        &lt;keyname&gt;eftah&lt;/keyname&gt;
+      &lt;/login&gt;
+    &lt;/authentication&gt;
+  &lt;/instance&gt;
+&lt;/instances&gt;
+</pre>
+
+  </div>
+  <div class="tab-pane" id="tab2">
+
+  <h4 id="get-instance">Get the details of an instance</h4>
+
+  <p>
+  To get the details of a specific instance use call <strong>GET /api/instances/:id</strong>. The example below shows an instance launched in the Rackspace Cloudservers cloud. As you can see, the type of authentication is <strong>password</strong> but the username and password attributes are blank. The reason why these attributes are blank is that Rackspace only reports these values once, during instance creation and not for subsequent requests. To find an example of the response from an instance go to the <strong><em>Create an instance</em></strong> section.
+  </p>
+
+  <p>Example request:</p>
+
+<pre>
+GET /api/instances/20112212?format=xml HTTP/1.1
+Authorization: Basic AU1J3UB2121Afd1DdyQWxLaTYTmJMNF4zTXBoRGdhMDh2RUw5ZDAN9zVXVa==
+User-Agent: curl/7.20.1 (i386-redhat-linux-gnu)
+Host: localhost:3002
+Accept: */*
+</pre>
+
+  <p>Server response:</p>
+
+<pre>
+HTTP/1.1 200 OK
+Content-Type: application/xml
+Content-Length: 1167
+&lt;?xml version='1.0' encoding='utf-8' ?&gt;
+&lt;instance href='http://localhost:3002/api/instances/20112212' id='20112212'&gt;
+  &lt;name&gt;myserver&lt;/name&gt;
+  &lt;owner_id&gt;mandreou&lt;/owner_id&gt;
+  &lt;image href='http://localhost:3002/api/images/53' id='53'&gt;&lt;/image&gt;
+  &lt;realm href='http://localhost:3002/api/realms/us' id='us'&gt;&lt;/realm&gt;
+  &lt;state&gt;RUNNING&lt;/state&gt;
+  &lt;hardware_profile href='http://localhost:3002/api/hardware_profiles/1' id='1'&gt;
+  &lt;/hardware_profile&gt;
+  &lt;actions&gt;
+    &lt;link href='http://localhost:3002/api/instances/20112212/reboot' method='post' rel='reboot' /&gt;
+    &lt;link href='http://localhost:3002/api/instances/20112212/stop' method='post' rel='stop' /&gt;
+    &lt;link href='http://localhost:3002/api/instances/20112212/run;id=20112212' method='post' rel='run' /&gt;
+    &lt;link href='http://localhost:3002/api/images;instance_id=20112212' method='post' rel='create_image' /&gt;
+  &lt;/actions&gt;
+  &lt;public_addresses&gt;&lt;address&gt;50.57.116.72&lt;/address&gt;&lt;/public_addresses&gt;
+  &lt;private_addresses&gt;&lt;address&gt;10.182.143.64&lt;/address&gt;&lt;/private_addresses&gt;
+  &lt;authentication type='password'&gt;
+    &lt;login&gt;
+      &lt;username&gt;root&lt;/username&gt;
+      &lt;password&gt;&lt;/password&gt;
+    &lt;/login&gt;
+  &lt;/authentication&gt;
+&lt;/instance&gt;
+</pre>
+
+  </div>
+  <div class="tab-pane" id="tab3">
+
+  <h4 id="actions">Launch an action on an instance</h4>
+
+  <p>
+  To launch an action on an instance use call <strong>POST /api/instances/:id/:action</strong>. The valid actions for an instance are specified by the instance states entity. The set of permissible actions that a client may perform on an instance at a given time depends on the current instance state. These are reported by the <code>&lt;actions&gt;</code> attribute in the Deltacloud server response to the <strong>GET /api/instances/:id</strong> call (<strong><em>Get the details of an instance</em></strong> section). The first example below shows a <strong>reboot</strong> action on a currently running instance, followed by a <strong>stop</strong> action.
+  </p>
+
+  <p>
+  After invoking the stop operation, the instance state may still be reported as <strong>RUNNING</strong> in the Deltacloud server response. It is because it may take some time for the instance state to change in the back-end cloud provider (and this will vary between providers). You can assure yourself that the action was performed correctly by requesting a list of instances or a by requesting a specific instance.
+  </p>
+
+  <p>
+  The Deltacloud server also allows a special 'run-on-instance' action for some cloud provider instances.This enables a client to perform a command on a running instance over <strong>SSH</strong>. The Deltacloud server will return the output of that command to the client. This is reported as the <strong>run</strong> action in the list of instance actions, if it is available. The <strong>cmd</strong> parameter specifies the command, which is executed on a running instance.The <strong>private_key</strong> parameter specifies the authentication for cloud providers that expect key based authentication for connecting to instances . For those cloud providers that use <strong>username/password</strong> for authentication, the <strong>password</strong> parameter specifies the authentication. Examples below illustrate the run-on-instance feature for an Amazon EC2 instance and a Rackspace Cloudservers instance. The examples differ in how authentication is performed (private RSA Key for EC2 an
 d username/password for Rackspace).
+  </p>
+
+  <p>Example request (<strong>reboot</strong>):</p>
+
+<pre>
+POST /api/instances/i-f3ba6492/reboot?format=xml HTTP/1.1
+Authorization: Basic AU1J3UB2121Afd1DdyQWxLaTYTmJMNF4zTXBoRGdhMDh2RUw5ZDAN9zVXVa==
+User-Agent: curl/7.20.1 (i386-redhat-linux-gnu)
+Host: localhost:3001
+Accept: */*
+</pre>
+
+  <p>Server response:</p>
+
+<pre>
+HTTP/1.1 200 OK
+Content-Type: application/xml
+Content-Length: 1322
+
+&lt;?xml version='1.0' encoding='utf-8' ?&gt;
+&lt;instance href='http://localhost:3001/api/instances/i-f3ba6492' id='i-f3ba6492'&gt;
+  &lt;name&gt;ami-f51aff9c&lt;/name&gt;
+  &lt;owner_id&gt;393485797142&lt;/owner_id&gt;
+  &lt;image href='http://localhost:3001/api/images/ami-f51aff9c' id='ami-f51aff9c'&gt;&lt;/image&gt;
+  &lt;realm href='http://localhost:3001/api/realms/us-east-1c' id='us-east-1c'&gt;&lt;/realm&gt;
+  &lt;state&gt;RUNNING&lt;/state&gt;
+  &lt;hardware_profile href='http://localhost:3001/api/hardware_profiles/c1.medium' id='c1.medium'&gt;
+  &lt;/hardware_profile&gt;
+  &lt;actions&gt;
+    &lt;link href='http://localhost:3001/api/instances/i-f3ba6492/reboot' method='post' rel='reboot' /&gt;
+    &lt;link href='http://localhost:3001/api/instances/i-f3ba6492/stop' method='post' rel='stop' /&gt;
+    &lt;link href='http://localhost:3001/api/instances/i-f3ba6492/run;id=i-f3ba6492' method='post' rel='run' /&gt;
+  &lt;/actions&gt;
+  &lt;launch_time&gt;2011-07-22T11:29:48.000Z&lt;/launch_time&gt;
+  &lt;public_addresses&gt;&lt;address&gt;ec2-50-16-183-107.compute-1.amazonaws.com&lt;/address&gt;&lt;/public_addresses&gt;
+  &lt;private_addresses&gt;&lt;address&gt;domU-12-31-39-0F-79-D4.compute-1.internal&lt;/address&gt;&lt;/private_addresses&gt;
+  &lt;firewalls&gt;  &lt;firewall href='http://localhost:3001/api/firewalls/default' id='default'&gt;&lt;/firewall&gt;&lt;/firewalls&gt;
+  &lt;authentication type='key'&gt;
+    &lt;login&gt;
+      &lt;keyname&gt;eftah&lt;/keyname&gt;
+    &lt;/login&gt;
+  &lt;/authentication&gt;
+&lt;/instance&gt;
+</pre>
+
+  <p>Example request (<strong>stop</strong>):</p>
+
+<pre>
+POST /api/instances/20112212/stop?format=xml HTTP/1.1
+Authorization: Basic AU1J3UB2121Afd1DdyQWxLaTYTmJMNF4zTXBoRGdhMDh2RUw5ZDAN9zVXVa==
+User-Agent: curl/7.20.1 (i386-redhat-linux-gnu)
+Host: localhost:3002
+Accept: */*
+</pre>
+
+  <p>Server response:</p>
+
+<pre>
+HTTP/1.1 200 OK
+Content-Type: application/xml
+Content-Length: 1167
+
+&lt;?xml version='1.0' encoding='utf-8' ?&gt;
+&lt;instance href='http://localhost:3002/api/instances/20112212' id='20112212'&gt;
+  &lt;name&gt;myserver&lt;/name&gt;
+  &lt;owner_id&gt;mandreou&lt;/owner_id&gt;
+  &lt;image href='http://localhost:3002/api/images/53' id='53'&gt;&lt;/image&gt;
+  &lt;realm href='http://localhost:3002/api/realms/us' id='us'&gt;&lt;/realm&gt;
+  &lt;state&gt;STOPPED&lt;/state&gt;
+  &lt;hardware_profile href='http://localhost:3002/api/hardware_profiles/1' id='1'&gt;
+  &lt;/hardware_profile&gt;
+  &lt;actions&gt;
+    &lt;link href='http://localhost:3002/api/instances/20112212/reboot' method='post' rel='reboot' /&gt;
+    &lt;link href='http://localhost:3002/api/instances/20112212/stop' method='post' rel='stop' /&gt;
+    &lt;link href='http://localhost:3002/api/instances/20112212/run;id=20112212' method='post' rel='run' /&gt;
+    &lt;link href='http://localhost:3002/api/images;instance_id=20112212' method='post' rel='create_image' /&gt;
+  &lt;/actions&gt;
+  &lt;public_addresses&gt;&lt;address&gt;50.57.116.72&lt;/address&gt;&lt;/public_addresses&gt;
+  &lt;private_addresses&gt;&lt;address&gt;10.182.143.64&lt;/address&gt;&lt;/private_addresses&gt;
+  &lt;authentication type='password'&gt;
+    &lt;login&gt;
+      &lt;username&gt;root&lt;/username&gt;
+      &lt;password&gt;&lt;/password&gt;
+    &lt;/login&gt;
+  &lt;/authentication&gt;
+&lt;/instance&gt;
+</pre>
+
+  <p>
+  Example request (<strong>run-on-instance Amazon EC2</strong>): 
+  </p>
+
+<div class="alert alert-error">
+  <a class="close" data-dismiss="alert" href="#">×</a>
+  <strong>Note:</strong> 
+  <p>
+  Run-on-instance requests to EC2 instances will fail with <strong>502 Bad Gateway - Execution Expired</strong> if the firewall in which the instance was launched does not grant SSH access (tcp, port 22) to the requesting client's IP address. This access may be given using the <a href="/firewalls.html">firewalls</a> collection.</p>
+</div>
+
+<pre>
+POST /api/instances/i-afde73ce/run?format=xml HTTP/1.1
+Authorization: Basic AU1J3UB2121Afd1DdyQWxLaTYTmJMNF4zTXBoRGdhMDh2RUw5ZDAN9zVXVa==
+User-Agent: curl/7.20.1 (i386-redhat-linux-gnu)
+Host: localhost:3001
+Content-Length: 1927
+Content-Type: multipart/form-data; boundary=----------------------------332ed6691ab8
+
+------------------------------332ed6691ab8
+Content-Disposition: form-data; name="cmd"
+
+uname -a; ls -l
+------------------------------332ed6691ab8
+Content-Disposition: form-data; name="private_key"
+
+-----BEGIN RSA PRIVATE KEY-----.BTTEpATBAAKDAQEA4t3R/PgUo3KDDuX4
+vZZpZuXFkAA/5X2lFRY2/xsQqbPz9utPOsUoPf9Aajy+.vGRJrO2KAJ9U/JTNDzr
+3NPbG3aHYPSnwsSxkFSG4Q6ukqYlxT9TPF/+wvdxfAtp3nYw3ZGuSX/DOtToWtQ8
+F/+GvHTHKDQSB+TeEs1Sa/PFwxpspB+RqHbqOTWPsFOHL+9sZGTqd6D4B.R6DBNh
+9Dabu9BVZrl5BTOKlbAgrKnzsGKvaBST/D2.AB/HB9/GOT36OoBmEr1y9gFwu4Xf
+aKw+AXVf9y9TKxVD3TE5uB.oDZG8s4gr2e691xHG9YGzBBBbNzfFh94b3Td5JBGS
+zRDTKYBfOgv+Zu5N+WyeaZ0ab50DwK9BXYB5hsRu5zbAqObbTZkwN9qwBOZHzATX
+wVTZU+eTz.39OZPqu4fQwrBN13lDbUoZxlqT9g2+haQBB9sTDzQEZ08QKBgQDJyw
+lBBZqQKBgQDz5E2rL59lNS5pBxDO9r6B9rXtBBTZ5tZUWNFRvyNsxY5nJT03.KDw
+qo2VP5WDZeOhRWEUY96./pWN3hNFDkT44vDpeXQUh3rBHyD5DWvWxAze9Ds+UTO/
+esuLwP5vXhfoYp6gV9XG.BEBzSVq8kZ2kZtlbWHTR/SGepTkDgYEA9zwHTDhtKR2
+KS8/BSFZQ884ZqFkbwT9fTW6s0rgUSBDTUDgYEA9W5HXTOEPGFDnqBhKPLN.xD9D
+vZZpZuXFkAA/5X2lFRY2/xsQqbPz9utPOsUoPf9Aajy+.vGRJrO2KAJ9U/JTNDzr
+lBBZqQKBgQDz5E2rL59lNS5pBxDO9r6B9rXtBBTZ5tZUWNFRvyNsxY5nJT03.KDw
+F/+GvHTHKDQSB+TeEs1Sa/PFwxpspB+RqHbqOTWPsFOHL+9sZGTqd6D4B.R6DBNh
+wVTZU+eTz.39OZPqu4fQwrBN13lDbUoZxlqT9g2+haQBB9sTDzQEZ08QKBgQDJyw
+lBBZqQKBgQDz5E2rL59lNS5pBxDO9r6B9rXtBBTZ5tZUWNFRvyNsxY5nJT03.KDw
+DAAeVWKU1OyDXfN4v6Zn1nNrhSkdrd+XV0nTLExsfg==.-----END RSA PRIVAT
+E KEY-----
+------------------------------332ed6691ab8--
+</pre>
+
+  <p>Server response:</p>
+
+<pre>
+HTTP/1.1 200 OK
+Content-Type: application/xml
+Date: Mon, 25 Jul 2011 12:56:02 GMT
+Content-Length: 497
+
+&lt;instance href='http://localhost:3001/api/instances/i-afde73ce' id='i-afde73ce'&gt;
+  &lt;public_address&gt;
+    ec2-50-19-59-126.compute-1.amazonaws.com
+  &lt;/public_address&gt;
+  &lt;command&gt;
+    uname -a; ls -l
+  &lt;/command&gt;
+  &lt;output&gt;Linux domU-12-31-39-0F-E1-78 2.6.21.7-2.fc8xen #1 SMP Fri Feb 15 12:39:36 EST 2008 i686 i686 i386 GNU/Linux
+  total 140
+  -rw-r--r-- 1 root root 137263 Mar 26  2008 ec2-ami-tools-1.3-19974.noarch.rpm
+  -rw-r--r-- 1 root root      0 Mar 26  2008 firstlogin
+  &lt;/output&gt;
+&lt;/instance&gt;
+</pre>
+
+  <p>Example request (<strong>run-on-instance Rackspace Cloudservers</strong>):</p>
+
+<pre>
+POST /api/instances/20117112/run?format=xml HTTP/1.1
+Authorization: Basic AU1J3UB2121Afd1DdyQWxLaTYTmJMNF4zTXBoRGdhMDh2RUw5ZDAN9zVXVa==
+User-Agent: curl/7.20.1 (i386-redhat-linux-gnu)
+Host: localhost:3002
+Accept: */*
+Content-Length: 275
+Expect: 100-continue
+Content-Type: multipart/form-data; boundary=----------------------------9b05ece66f4d
+------------------------------9b05ece66f4d
+Content-Disposition: form-data; name="cmd"
+
+uname -a; ifconfig; pwd
+------------------------------9b05ece66f4d
+Content-Disposition: form-data; name="password"
+
+myserverqB2Uwk21I
+------------------------------9b05ece66f4d--
+</pre>
+
+  <p>Server response:</p>
+
+<pre>
+HTTP/1.1 200 OK
+Content-Type: application/xml
+Date: Mon, 25 Jul 2011 13:02:15 GMT
+Content-Length: 1781
+
+&lt;instance href='http://localhost:3002/api/instances/20117112' id='20117112'&gt;
+  &lt;public_address&gt;
+    50.57.117.249
+  &lt;/public_address&gt;
+  &lt;command&gt;
+    uname -a; ifconfig; pwd
+  &lt;/command&gt;
+  &lt;output&gt;Linux myserver 2.6.35.4-rscloud #8 SMP Mon Sep 20 15:54:33 UTC 2010 x86_64 x86_64 x86_64 GNU/Linux
+  eth0      Link encap:Ethernet  HWaddr 40:40:B1:7A:52:7E
+            inet addr:50.57.117.249  Bcast:50.57.117.255  Mask:255.255.255.0
+            inet6 addr: fe80::4240:b1ff:fe7a:527e/64 Scope:Link
+            UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
+            RX packets:54 errors:0 dropped:0 overruns:0 frame:0
+            TX packets:62 errors:0 dropped:0 overruns:0 carrier:0
+            collisions:0 txqueuelen:1000
+            RX bytes:5880 (5.7 KiB)  TX bytes:6331 (6.1 KiB)
+            Interrupt:24
+
+  eth1      Link encap:Ethernet  HWaddr 40:40:8E:4B:52:23
+            inet addr:10.182.131.159  Bcast:10.182.159.255  Mask:255.255.224.0
+            inet6 addr: fe80::4240:8eff:fe4b:5223/64 Scope:Link
+            UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
+            RX packets:3 errors:0 dropped:0 overruns:0 frame:0
+            TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
+            collisions:0 txqueuelen:1000
+            RX bytes:188 (188.0 b)  TX bytes:720 (720.0 b)
+            Interrupt:25
+
+  lo        Link encap:Local Loopback
+            inet addr:127.0.0.1  Mask:255.0.0.0
+            inet6 addr: ::1/128 Scope:Host
+            UP LOOPBACK RUNNING  MTU:16436  Metric:1
+            RX packets:0 errors:0 dropped:0 overruns:0 frame:0
+            TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
+            collisions:0 txqueuelen:0
+            RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
+
+  /root&lt;/output&gt;
+&lt;/instance&gt;
+</pre>
+
+  </div>
+  <div class="tab-pane" id="tab4">
+
+  <h4 id="post">Create a new instance</h4>
+
+  <p>
+  To create a new instance use call <strong>POST /api/instances</strong>. At least, clients must specify the image from which the virtual machine instance is created. Optionally, a client may also specify a hardware profile and a realm (with default values used otherwise). Clients can also provide a name for the new instance though this is not supported by all back-end cloud providers. You can check whether a given feature is available in the response to the Deltacloud server API entry point. The details of the new instance are returned in response to this operation.
+  </p>
+
+  <p>
+  To create an instance in the Amazon EC2 cloud a client can also specify the name of the used EC2 keypair as well as the firewalls (EC2 security groups) that the instance should be launched into. The EC2 keypair is specified with the parameter keyname while firewalls are specified sequentially as firewalls1 ... firewalls2 ... etc. 
+  </p>
+
+  <p>
+  See the example below. The values for public and private addresses are blank in the server response, because they have not yet been assigned by the cloud provider. Subsequent requests for the instance details will provide these values.
+  </p>
+
+  <p>
+  As with other POST operations in the Deltacloud API, clients may specify parameters as multipart/form-data or as x-www-url-form-urlencoded content type, as you can see in examples below.
+  </p>
+
+  <p>Client request (<strong>AWS EC2</strong>):</p>
+
+<pre>
+POST /api/instances?format=xml HTTP/1.1
+Authorization: Basic AU1J3UB2121Afd1DdyQWxLaTYTmJMNF4zTXBoRGdhMDh2RUw5ZDAN9zVXVa==
+User-Agent: curl/7.20.1 (i386-redhat-linux-gnu)
+Host: localhost:3001
+Accept: */*
+Content-Length: 107
+Content-Type: application/x-www-form-urlencoded
+
+keyname=eftah&image_id=ami-f51aff9c&realm_id=us-east-1c&hwp_id=c1.medium&
+firewalls1=default&firewalls2=test
+</pre>
+
+  <p>Server response:</p>
+
+<pre>
+HTTP/1.1 201 Created
+Content-Type: application/xml
+Content-Length: 1183
+
+&lt;?xml version='1.0' encoding='utf-8' ?&gt;
+&lt;instance href='http://localhost:3001/api/instances/i-cbb861aa' id='i-cbb861aa'&gt;
+  &lt;name&gt;ami-f51aff9c&lt;/name&gt;
+  &lt;owner_id&gt;393485797142&lt;/owner_id&gt;
+  &lt;image href='http://localhost:3001/api/images/ami-f51aff9c' id='ami-f51aff9c'&gt;&lt;/image&gt;
+  &lt;realm href='http://localhost:3001/api/realms/us-east-1c' id='us-east-1c'&gt;&lt;/realm&gt;
+  &lt;state&gt;PENDING&lt;/state&gt;
+  &lt;hardware_profile href='http://localhost:3001/api/hardware_profiles/c1.medium' id='c1.medium'&gt;
+  &lt;/hardware_profile&gt;
+  &lt;actions&gt;
+    &lt;link href='http://localhost:3001/api/instances/i-cbb861aa/stop' method='post' rel='stop' /&gt;
+    &lt;link href='http://localhost:3001/api/instances/i-cbb861aa/run;id=i-cbb861aa' method='post' rel='run' /&gt;
+  &lt;/actions&gt;
+  &lt;launch_time&gt;2011-07-22T16:09:45.000Z&lt;/launch_time&gt;
+  &lt;public_addresses&gt;&lt;/public_addresses&gt;
+  &lt;private_addresses&gt;&lt;/private_addresses&gt;
+  &lt;firewalls&gt;
+    &lt;firewall href='http://localhost:3001/api/firewalls/test' id='test'&gt;&lt;/firewall&gt;
+    &lt;firewall href='http://localhost:3001/api/firewalls/default' id='default'&gt;&lt;/firewall&gt;
+  &lt;/firewalls&gt;
+  &lt;authentication type='key'&gt;
+    &lt;login&gt;
+      &lt;keyname&gt;eftah&lt;/keyname&gt;
+    &lt;/login&gt;
+  &lt;/authentication&gt;
+&lt;/instance&gt;
+</pre>
+
+  <p>
+  In the following example you can see that the client provides the optional name parameter and that the created instance uses <strong>password</strong> type of authentication. Furthermore, the client uses a content-type of application/x-www-form-urlencoded. The username and password are returned with the details of the new instance:
+  </p>
+
+  <p>Example request: (<strong>Rackspace Cloudservers</strong>)</p>
+
+<pre>
+POST /api/instances?format=xml HTTP/1.1
+Authorization: Basic AU1J3UB2121Afd1DdyQWxLaTYTmJMNF4zTXBoRGdhMDh2RUw5ZDAN9zVXVa==
+User-Agent: curl/7.20.1 (i386-redhat-linux-gnu)
+Host: localhost:3002
+Accept: */*
+Content-Length: 34
+Content-Type: application/x-www-form-urlencoded
+
+image_id=53&hwp_id=1&name=myserver
+</pre>
+
+  <p>Server response:</p>
+
+<pre>
+HTTP/1.1 201 Created
+Content-Type: application/xml
+Content-Length: 883
+
+&lt;?xml version='1.0' encoding='utf-8' ?&gt;
+&lt;instance href='http://localhost:3002/api/instances/20112212' id='20112212'&gt;
+  &lt;name&gt;myserver&lt;/name&gt;
+  &lt;owner_id&gt;mandreou&lt;/owner_id&gt;
+  &lt;image href='http://localhost:3002/api/images/53' id='53'&gt;&lt;/image&gt;
+  &lt;realm href='http://localhost:3002/api/realms/us' id='us'&gt;&lt;/realm&gt;
+  &lt;state&gt;PENDING&lt;/state&gt;
+  &lt;hardware_profile href='http://localhost:3002/api/hardware_profiles/1' id='1'&gt;
+  &lt;/hardware_profile&gt;
+  &lt;actions&gt;
+    &lt;link href='http://localhost:3002/api/instances/20112212/run;id=20112212' method='post' rel='run' /&gt;
+  &lt;/actions&gt;
+  &lt;public_addresses&gt;&lt;address&gt;50.57.116.72&lt;/address&gt;&lt;/public_addresses&gt;
+  &lt;private_addresses&gt;&lt;address&gt;10.182.143.64&lt;/address&gt;&lt;/private_addresses&gt;
+  &lt;authentication type='password'&gt;
+    &lt;login&gt;
+      &lt;username&gt;root&lt;/username&gt;
+      &lt;password&gt;myserver4OvKh7Ak3&lt;/password&gt;
+    &lt;/login&gt;
+  &lt;/authentication&gt;
+&lt;/instance&gt;
+</pre>
+
+<div class="alert alert-error">
+  <a class="close" data-dismiss="alert" href="#">×</a>
+  <h4 class="alert-heading">Note:</h4>
+  <p>
+  The Deltacloud does not report potential errors, if you are creating an instance in <strong>vSphere</strong>. When you launch an instance, Deltacloud does not wait until the task is finished. Instead of that, Deltacloud creates a YAML representation of the instance in vSphere datastore. The YAML instance is in a 'PENDING' state until the 'real' instance is created. If the real instance fails to create, the YAML representation is removed. However, Deltacloud does not send you any error message.
+  </p>
+</div>
+
+  </div>
+</div>
+
+<a class="btn btn-inverse btn-large" style="float: right" href="/keys.html">Keys <i class="icon-arrow-right icon-white" style="vertical-align:baseline"> </i></a>
+
+<br/>
+
+

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/join-deltacloud.md
----------------------------------------------------------------------
diff --git a/site/content/join-deltacloud.md b/site/content/join-deltacloud.md
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/site/content/join-deltacloud.md
@@ -0,0 +1 @@
+

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/blank.gif
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/blank.gif b/site/content/jquery.fancybox/blank.gif
deleted file mode 100644
index 35d42e8..0000000
Binary files a/site/content/jquery.fancybox/blank.gif and /dev/null differ

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/fancy_close.png
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/fancy_close.png b/site/content/jquery.fancybox/fancy_close.png
deleted file mode 100644
index 0703530..0000000
Binary files a/site/content/jquery.fancybox/fancy_close.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/fancy_loading.png
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/fancy_loading.png b/site/content/jquery.fancybox/fancy_loading.png
deleted file mode 100644
index 2503017..0000000
Binary files a/site/content/jquery.fancybox/fancy_loading.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/fancy_nav_left.png
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/fancy_nav_left.png b/site/content/jquery.fancybox/fancy_nav_left.png
deleted file mode 100644
index ebaa6a4..0000000
Binary files a/site/content/jquery.fancybox/fancy_nav_left.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/fancy_nav_right.png
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/fancy_nav_right.png b/site/content/jquery.fancybox/fancy_nav_right.png
deleted file mode 100644
index 873294e..0000000
Binary files a/site/content/jquery.fancybox/fancy_nav_right.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/fancy_shadow_e.png
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/fancy_shadow_e.png b/site/content/jquery.fancybox/fancy_shadow_e.png
deleted file mode 100644
index 2eda089..0000000
Binary files a/site/content/jquery.fancybox/fancy_shadow_e.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/fancy_shadow_n.png
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/fancy_shadow_n.png b/site/content/jquery.fancybox/fancy_shadow_n.png
deleted file mode 100644
index 69aa10e..0000000
Binary files a/site/content/jquery.fancybox/fancy_shadow_n.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/fancy_shadow_ne.png
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/fancy_shadow_ne.png b/site/content/jquery.fancybox/fancy_shadow_ne.png
deleted file mode 100644
index 79f6980..0000000
Binary files a/site/content/jquery.fancybox/fancy_shadow_ne.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/fancy_shadow_nw.png
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/fancy_shadow_nw.png b/site/content/jquery.fancybox/fancy_shadow_nw.png
deleted file mode 100644
index 7182cd9..0000000
Binary files a/site/content/jquery.fancybox/fancy_shadow_nw.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/fancy_shadow_s.png
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/fancy_shadow_s.png b/site/content/jquery.fancybox/fancy_shadow_s.png
deleted file mode 100644
index d8858bf..0000000
Binary files a/site/content/jquery.fancybox/fancy_shadow_s.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/fancy_shadow_se.png
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/fancy_shadow_se.png b/site/content/jquery.fancybox/fancy_shadow_se.png
deleted file mode 100644
index 541e3ff..0000000
Binary files a/site/content/jquery.fancybox/fancy_shadow_se.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/fancy_shadow_sw.png
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/fancy_shadow_sw.png b/site/content/jquery.fancybox/fancy_shadow_sw.png
deleted file mode 100644
index b451689..0000000
Binary files a/site/content/jquery.fancybox/fancy_shadow_sw.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/fancy_shadow_w.png
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/fancy_shadow_w.png b/site/content/jquery.fancybox/fancy_shadow_w.png
deleted file mode 100644
index 8a4e4a8..0000000
Binary files a/site/content/jquery.fancybox/fancy_shadow_w.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/fancy_title_left.png
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/fancy_title_left.png b/site/content/jquery.fancybox/fancy_title_left.png
deleted file mode 100644
index 6049223..0000000
Binary files a/site/content/jquery.fancybox/fancy_title_left.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/fancy_title_main.png
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/fancy_title_main.png b/site/content/jquery.fancybox/fancy_title_main.png
deleted file mode 100644
index 8044271..0000000
Binary files a/site/content/jquery.fancybox/fancy_title_main.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/fancy_title_over.png
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/fancy_title_over.png b/site/content/jquery.fancybox/fancy_title_over.png
deleted file mode 100644
index d9f458f..0000000
Binary files a/site/content/jquery.fancybox/fancy_title_over.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/fancy_title_right.png
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/fancy_title_right.png b/site/content/jquery.fancybox/fancy_title_right.png
deleted file mode 100644
index e36d9db..0000000
Binary files a/site/content/jquery.fancybox/fancy_title_right.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/fancybox-x.png
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/fancybox-x.png b/site/content/jquery.fancybox/fancybox-x.png
deleted file mode 100644
index c2130f8..0000000
Binary files a/site/content/jquery.fancybox/fancybox-x.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/fancybox-y.png
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/fancybox-y.png b/site/content/jquery.fancybox/fancybox-y.png
deleted file mode 100644
index 7ef399b..0000000
Binary files a/site/content/jquery.fancybox/fancybox-y.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/d3232da0/site/content/jquery.fancybox/fancybox.png
----------------------------------------------------------------------
diff --git a/site/content/jquery.fancybox/fancybox.png b/site/content/jquery.fancybox/fancybox.png
deleted file mode 100644
index 65e14f6..0000000
Binary files a/site/content/jquery.fancybox/fancybox.png and /dev/null differ


Mime
View raw message