stratos-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From im...@apache.org
Subject [05/12] stratos git commit: Migrating Kubernetes API client to Fabric8
Date Mon, 15 Jun 2015 12:43:10 GMT
http://git-wip-us.apache.org/repos/asf/stratos/blob/3414e7ce/dependencies/fabric8/kubernetes-api/src/main/kubernetes/api/kubernetes.html
----------------------------------------------------------------------
diff --git a/dependencies/fabric8/kubernetes-api/src/main/kubernetes/api/kubernetes.html b/dependencies/fabric8/kubernetes-api/src/main/kubernetes/api/kubernetes.html
new file mode 100644
index 0000000..d7b2668
--- /dev/null
+++ b/dependencies/fabric8/kubernetes-api/src/main/kubernetes/api/kubernetes.html
@@ -0,0 +1,1636 @@
+<!DOCTYPE HTML>
+<html>
+<head><title>Kubernetes API documentation</title>
+  <meta http-equiv=X-UA-Compatible content="IE=edge">
+  <meta http-equiv=Content-Type content="text/html; charset=utf-8">
+  <meta name=generator content="https://github.com/kevinrenskers/raml2html 0.30.0">
+  <link rel=stylesheet href=http://netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css>
+  <link rel=stylesheet href=http://cdnjs.cloudflare.com/ajax/libs/highlight.js/8.1/styles/default.min.css>
+  <script type=text/javascript src=http://code.jquery.com/jquery-1.11.0.min.js></script>
+  <script type=text/javascript src=http://netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js></script>
+  <script type=text/javascript src=http://cdnjs.cloudflare.com/ajax/libs/highlight.js/8.1/highlight.min.js></script>
+  <script type=text/javascript>
+    $(document).ready(function () {
+      $('.page-header pre code, .top-resource-description pre code').each(function (i, block) {
+        hljs.highlightBlock(block);
+      });
+
+      $('[data-toggle]').click(function () {
+        var selector = $(this).data('target') + ' pre code';
+        $(selector).each(function (i, block) {
+          hljs.highlightBlock(block);
+        });
+      });
+    });
+  </script>
+  <style>
+    .hljs {
+      background: transparent;
+    }
+
+    .parent {
+      color: #999;
+    }
+
+    .list-group-item > .badge {
+      float: none;
+      margin-right: 6px;
+    }
+
+    .panel-title > .methods {
+      float: right;
+    }
+
+    .badge {
+      border-radius: 0;
+      text-transform: uppercase;
+      width: 70px;
+      font-weight: normal;
+      color: #f3f3f6;
+      line-height: normal;
+    }
+
+    .badge_get {
+      background-color: #63a8e2;
+    }
+
+    .badge_post {
+      background-color: #6cbd7d;
+    }
+
+    .badge_put {
+      background-color: #22bac4;
+    }
+
+    .badge_delete {
+      background-color: #d26460;
+    }
+
+    .list-group, .panel-group {
+      margin-bottom: 0;
+    }
+
+    .panel-group .panel + .panel-white {
+      margin-top: 0;
+    }
+
+    .panel-group .panel-white {
+      border-bottom: 1px solid #F5F5F5;
+      border-radius: 0;
+    }
+
+    .panel-white:last-child {
+      border-bottom-color: white;
+      -webkit-box-shadow: none;
+      box-shadow: none;
+    }
+
+    .panel-white .panel-heading {
+      background: white;
+    }
+
+    .tab-pane ul {
+      padding-left: 2em;
+    }
+
+    .tab-pane h2 {
+      font-size: 1.2em;
+      padding-bottom: 4px;
+      border-bottom: 1px solid #ddd;
+    }
+
+    .tab-pane h3 {
+      font-size: 1.1em;
+    }
+
+    .tab-content {
+      border-left: 1px solid #ddd;
+      border-right: 1px solid #ddd;
+      border-bottom: 1px solid #ddd;
+      padding: 10px;
+    }
+
+    #sidebar {
+      margin-top: 30px;
+    }
+
+    .top-resource-description {
+      border-bottom: 1px solid #ddd;
+      background: #fcfcfc;
+      padding: 15px 15px 0 15px;
+      margin: -15px -15px 10px -15px;
+    }
+
+    .resource-description {
+      border-bottom: 1px solid #fcfcfc;
+      background: #fcfcfc;
+      padding: 15px 15px 0 15px;
+      margin: -15px -15px 10px -15px;
+    }
+
+    .panel > .panel-body > .panel-group > .panel:first-child .resource-description {
+      display: none;
+    }
+
+    .list-group .badge {
+      float: left;
+    }
+
+    .method_description {
+      margin-left: 85px;
+    }
+
+    .method_description p:last-child {
+      margin: 0;
+    }
+  </style>
+</head>
+<body data-spy=scroll data-target=#sidebar>
+<div class=container>
+  <div class=row>
+    <div class=col-md-9 role=main>
+      <div class=page-header>
+        <h1>Kubernetes API documentation
+          <small>version v1beta1</small>
+        </h1>
+        <p>http://server/api/v1beta1</p>
+
+        <h3 id=Overview><a href=#Overview>Overview</a></h3>
+
+        <p>The Kubernetes API currently manages 3 main resources: <code>pods</code>, <code>replicationControllers</code>,
+          and <code>services</code>. Pods correspond to colocated groups of <a href=http://docker.io>Docker
+            containers</a> with shared volumes, as supported by <a
+                  href=https://developers.google.com/compute/docs/containers>Google Cloud Platform&#39;s container-vm
+            images</a>. Singleton pods can be created directly via the <code>/pods</code> endpoint. Sets of pods may
+          created, maintained, and scaled using replicationControllers. Services create load-balanced targets for sets
+          of pods.</p>
+
+        <h3 id=Resource-identifiers><a href=#Resource-identifiers>Resource identifiers</a></h3>
+
+        <p>Each resource has a string <code>id</code> and list of key-value <code>labels</code>. The <code>id</code> is
+          generated by the system and is guaranteed to be unique in space and time across all resources.
+          <code>labels</code> is a map of string (key) to string (value). Each resource may have at most one label with
+          a particular key. Individual labels are used to specify identifying metadata that can be used to define sets
+          of resources by specifying required labels. Examples of typical pod label keys include <code>stage</code>,
+          <code>service</code>, <code>name</code>, <code>tier</code>, <code>partition</code>, and <code>track</code>,
+          but you are free to develop your own conventions.</p>
+
+        <h3 id=Creation-semantics><a href=#Creation-semantics>Creation semantics</a></h3>
+
+        <p>Creation is currently not idempotent. We plan to add a modification token to each resource. A unique value
+          for the token should be provided by the user during creation. If the user specifies a duplicate token at
+          creation time, the system should return an error with a pointer to the existing resource with that token. In
+          this way a user can deterministically recover from a dropped connection during a resource creation
+          request.</p>
+
+        <h3 id=Update-semantics><a href=#Update-semantics>Update semantics</a></h3>
+
+        <p>Custom verbs are minimized and are used only for &#39;edge triggered&#39; actions such as a reboot. Resource
+          descriptions are generally set up with <code>desiredState</code> for the user provided parameters and <code>currentState</code>
+          for the actual system state. While consistent terminology is used across these two stanzas they do not match
+          member for member.</p>
+
+        <p>When a new version of a resource is PUT the <code>desiredState</code> is updated and available immediately.
+          Over time the system will work to bring the <code>currentState</code> into line with the
+          <code>desiredState</code>. The system will drive toward the most recent <code>desiredState</code> regardless
+          of previous versions of that stanza. In other words, if a value is changed from 2 to 5 in one PUT and then
+          back down to 3 in another PUT the system isn&#39;t required to &#39;touch base&#39; at 5 before making 3 the
+          <code>currentState</code>.</p>
+
+        <p>When doing an update, we assume that the entire <code>desiredState</code> stanza is specified. If a field is
+          omitted it is assumed that the user is looking to delete that field. It is viable for a user to GET the
+          resource, modify what they like in the <code>desiredState</code> or labels stanzas and then PUT it back. If
+          the <code>currentState</code> is included in the PUT it will be silently ignored.</p>
+
+        <p>While currently unspecified, it is intended that concurrent modification should be accomplished with
+          optimistic locking of resources. We plan to add a modification token to each resource. If this is included
+          with the PUT operation the system will verify that there haven&#39;t been other successful mutations to the
+          resource during a read/modify/write cycle. The correct client action at this point is to GET the resource
+          again, apply the changes afresh and try submitting again.</p>
+
+        <p>Note that updates currently only work for replicationControllers and services, but not for pods. Label
+          updates have not yet been implemented, either.</p></div>
+      <div class="panel panel-default">
+        <div class=panel-heading><h3 id=_pods class=panel-title>/pods</h3></div>
+        <div class=panel-body>
+          <div class=panel-group>
+            <div class="panel panel-white">
+              <div class=panel-heading><h4 class=panel-title><a class=collapsed data-toggle=collapse
+                                                                href=#panel__pods><span class=parent></span>/pods</a>
+                <span class=methods><a href=# data-toggle=modal data-target=#_pods_get><span
+                        class="badge badge_get">get</span></a> <a href=# data-toggle=modal data-target=#_pods_post><span
+                        class="badge badge_post">post</span></a></span></h4></div>
+              <div id=panel__pods class="panel-collapse collapse">
+                <div class=panel-body>
+                  <div class=list-group><a href=# data-toggle=modal data-target=#_pods_get class=list-group-item><span
+                          class="badge badge_get">get</span>
+
+                    <div class=method_description><p>List all pods on this cluster</p></div>
+                    <div class=clearfix></div>
+                  </a> <a href=# data-toggle=modal data-target=#_pods_post class=list-group-item><span
+                          class="badge badge_post">post</span>
+
+                    <div class=method_description><p>Create a new pod. currentState is ignored if present.</p></div>
+                    <div class=clearfix></div>
+                  </a></div>
+                </div>
+              </div>
+              <div class="modal fade" tabindex=0 id=_pods_get>
+                <div class=modal-dialog>
+                  <div class=modal-content>
+                    <div class=modal-header>
+                      <button type=button class=close data-dismiss=modal aria-hidden=true>&times;</button>
+                      <h4 class=modal-title id=myModalLabel><span class="badge badge_get">get</span> <span
+                              class=parent></span>/pods</h4></div>
+                    <div class=modal-body>
+                      <div class="alert alert-info"><p>List all pods on this cluster</p></div>
+                      <ul class="nav nav-tabs">
+                        <li class=active><a href=#_pods_get_request data-toggle=tab>Request</a></li>
+                        <li><a href=#_pods_get_response data-toggle=tab>Response</a></li>
+                      </ul>
+                      <div class=tab-content>
+                        <div class="tab-pane active" id=_pods_get_request></div>
+                        <div class=tab-pane id=_pods_get_response><h2>HTTP status code <a href=http://httpstatus.es/200
+                                                                                          target=_blank>200</a></h2>
+
+                          <h3>Body</h3>
+
+                          <p><strong>Type: application/json</strong></p>
+
+                          <p>
+                            <small><strong>Example</strong>:<pre><code>{
+                              "kind": "PodList",
+                              "apiVersion": "v1beta1",
+                              "items": [
+                              {
+                              "id": "my-pod-1",
+                              "labels": {
+                              "name": "testRun",
+                              "replicationController": "testRun"
+                              },
+                              "desiredState": {
+                              "manifest": {
+                              "version": "v1beta1",
+                              "id": "my-pod-1",
+                              "containers": [{
+                              "name": "nginx",
+                              "image": "dockerfile/nginx",
+                              "ports": [{
+                              "hostPort": 8080,
+                              "containerPort": 80
+                              }]
+                              }]
+                              }
+                              },
+                              "currentState": {
+                              "host": "host-1"
+                              }
+                              },
+                              {
+                              "id": "my-pod-2",
+                              "labels": {
+                              "name": "testRun",
+                              "replicationController": "testRun"
+                              },
+                              "desiredState": {
+                              "manifest": {
+                              "version": "v1beta1",
+                              "id": "my-pod-2",
+                              "containers": [{
+                              "name": "nginx",
+                              "image": "dockerfile/nginx",
+                              "ports": [{
+                              "hostPort": 8080,
+                              "containerPort": 80
+                              }]
+                              }]
+                              }
+                              },
+                              "currentState": {
+                              "host": "host-2"
+                              }
+                              }
+                              ]
+                              }
+                            </code></pre>
+                            </small>
+                          </p>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </div>
+              <div class="modal fade" tabindex=0 id=_pods_post>
+                <div class=modal-dialog>
+                  <div class=modal-content>
+                    <div class=modal-header>
+                      <button type=button class=close data-dismiss=modal aria-hidden=true>&times;</button>
+                      <h4 class=modal-title id=myModalLabel><span class="badge badge_post">post</span> <span
+                              class=parent></span>/pods</h4></div>
+                    <div class=modal-body>
+                      <div class="alert alert-info"><p>Create a new pod. currentState is ignored if present.</p></div>
+                      <ul class="nav nav-tabs">
+                        <li class=active><a href=#_pods_post_request data-toggle=tab>Request</a></li>
+                      </ul>
+                      <div class=tab-content>
+                        <div class="tab-pane active" id=_pods_post_request><h3>Body</h3>
+
+                          <p><strong>Type: application/json</strong></p>
+
+                          <p>
+                            <small><strong>Schema</strong>:<pre><code>{
+                              "$schema": "http://json-schema.org/draft-03/schema",
+                              "type": "object",
+                              "required": false,
+                              "description": "Pod resource. A pod corresponds to a co-located group of [Docker
+                              containers](http://docker.io).",
+                              "properties": {
+                              "kind": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "id": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "creationTimestamp": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "selfLink": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "desiredState": {
+                              "type": "object",
+                              "required": false,
+                              "description": "The desired configuration of the pod",
+                              "properties": {
+                              "manifest": {
+                              "type": "object",
+                              "required": false,
+                              "description": "Manifest describing group of [Docker containers](http://docker.io);
+                              compatible with format used by [Google Cloud Platform&#x27;s container-vm
+                              images](https://developers.google.com/compute/docs/containers)"
+                              },
+                              "status": {
+                              "type": "string",
+                              "required": false,
+                              "description": ""
+                              },
+                              "host": {
+                              "type": "string",
+                              "required": false,
+                              "description": ""
+                              },
+                              "hostIP": {
+                              "type": "string",
+                              "required": false,
+                              "description": ""
+                              },
+                              "info": {
+                              "type": "object",
+                              "required": false,
+                              "description": ""
+                              }
+                              }
+                              },
+                              "currentState": {
+                              "type": "object",
+                              "required": false,
+                              "description": "The current configuration and status of the pod. Fields in common with
+                              desiredState have the same meaning.",
+                              "properties": {
+                              "manifest": {
+                              "type": "object",
+                              "required": false
+                              },
+                              "status": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "host": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "hostIP": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "info": {
+                              "type": "object",
+                              "required": false
+                              }
+                              }
+                              },
+                              "labels": {
+                              "type": "object",
+                              "required": false
+                              }
+                              }
+                              }
+                            </code></pre>
+                            </small>
+                          </p>
+                          <p>
+                            <small><strong>Example</strong>:<pre><code>{
+                              "kind": "Pod",
+                              "apiVersion": "v1beta1",
+                              "id": "php",
+                              "desiredState": {
+                              "manifest": {
+                              "version": "v1beta1",
+                              "id": "php",
+                              "containers": [{
+                              "name": "nginx",
+                              "image": "dockerfile/nginx",
+                              "ports": [{
+                              "containerPort": 80,
+                              "hostPort": 8080
+                              }],
+                              "livenessProbe": {
+                              "enabled": true,
+                              "type": "http",
+                              "initialDelaySeconds": 30,
+                              "httpGet": {
+                              "path": "/index.html",
+                              "port": "8080"
+                              }
+                              }
+                              }]
+                              }
+                              },
+                              "labels": {
+                              "name": "foo"
+                              }
+                              }
+
+                            </code></pre>
+                            </small>
+                          </p>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </div>
+            </div>
+            <div class="panel panel-white">
+              <div class=panel-heading><h4 class=panel-title><a class=collapsed data-toggle=collapse
+                                                                href=#panel__pods__podId_><span
+                      class=parent>/pods</span>/{podId}</a> <span class=methods><a href=# data-toggle=modal
+                                                                                   data-target=#_pods__podId__get><span
+                      class="badge badge_get">get</span></a> <a href=# data-toggle=modal data-target=#_pods__podId__put><span
+                      class="badge badge_put">put</span></a> <a href=# data-toggle=modal
+                                                                data-target=#_pods__podId__delete><span
+                      class="badge badge_delete">delete</span></a></span></h4></div>
+              <div id=panel__pods__podId_ class="panel-collapse collapse">
+                <div class=panel-body>
+                  <div class=list-group><a href=# data-toggle=modal data-target=#_pods__podId__get
+                                           class=list-group-item><span class="badge badge_get">get</span>
+
+                    <div class=method_description><p>Get a specific pod</p></div>
+                    <div class=clearfix></div>
+                  </a> <a href=# data-toggle=modal data-target=#_pods__podId__put class=list-group-item><span
+                          class="badge badge_put">put</span>
+
+                    <div class=method_description><p>Update a pod</p></div>
+                    <div class=clearfix></div>
+                  </a> <a href=# data-toggle=modal data-target=#_pods__podId__delete class=list-group-item><span
+                          class="badge badge_delete">delete</span>
+
+                    <div class=method_description><p>Delete a specific pod</p></div>
+                    <div class=clearfix></div>
+                  </a></div>
+                </div>
+              </div>
+              <div class="modal fade" tabindex=0 id=_pods__podId__get>
+                <div class=modal-dialog>
+                  <div class=modal-content>
+                    <div class=modal-header>
+                      <button type=button class=close data-dismiss=modal aria-hidden=true>&times;</button>
+                      <h4 class=modal-title id=myModalLabel><span class="badge badge_get">get</span> <span class=parent>/pods</span>/{podId}
+                      </h4></div>
+                    <div class=modal-body>
+                      <div class="alert alert-info"><p>Get a specific pod</p></div>
+                      <ul class="nav nav-tabs">
+                        <li class=active><a href=#_pods__podId__get_request data-toggle=tab>Request</a></li>
+                        <li><a href=#_pods__podId__get_response data-toggle=tab>Response</a></li>
+                      </ul>
+                      <div class=tab-content>
+                        <div class="tab-pane active" id=_pods__podId__get_request><h3>URI Parameters</h3>
+                          <ul>
+                            <li><strong>podId</strong>: <em>required (string)</em></li>
+                          </ul>
+                        </div>
+                        <div class=tab-pane id=_pods__podId__get_response><h2>HTTP status code <a
+                                href=http://httpstatus.es/200 target=_blank>200</a></h2>
+
+                          <h3>Body</h3>
+
+                          <p><strong>Type: application/json</strong></p>
+
+                          <p>
+                            <small><strong>Example</strong>:<pre><code>{
+                              "kind": "Pod",
+                              "apiVersion": "v1beta1",
+                              "id": "php",
+                              "desiredState": {
+                              "manifest": {
+                              "version": "v1beta1",
+                              "id": "php",
+                              "containers": [{
+                              "name": "nginx",
+                              "image": "dockerfile/nginx",
+                              "ports": [{
+                              "containerPort": 80,
+                              "hostPort": 8080
+                              }],
+                              "livenessProbe": {
+                              "enabled": true,
+                              "type": "http",
+                              "initialDelaySeconds": 30,
+                              "httpGet": {
+                              "path": "/index.html",
+                              "port": "8080"
+                              }
+                              }
+                              }]
+                              }
+                              },
+                              "labels": {
+                              "name": "foo"
+                              }
+                              }
+
+                            </code></pre>
+                            </small>
+                          </p>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </div>
+              <div class="modal fade" tabindex=0 id=_pods__podId__put>
+                <div class=modal-dialog>
+                  <div class=modal-content>
+                    <div class=modal-header>
+                      <button type=button class=close data-dismiss=modal aria-hidden=true>&times;</button>
+                      <h4 class=modal-title id=myModalLabel><span class="badge badge_put">put</span> <span class=parent>/pods</span>/{podId}
+                      </h4></div>
+                    <div class=modal-body>
+                      <div class="alert alert-info"><p>Update a pod</p></div>
+                      <ul class="nav nav-tabs">
+                        <li class=active><a href=#_pods__podId__put_request data-toggle=tab>Request</a></li>
+                      </ul>
+                      <div class=tab-content>
+                        <div class="tab-pane active" id=_pods__podId__put_request><h3>URI Parameters</h3>
+                          <ul>
+                            <li><strong>podId</strong>: <em>required (string)</em></li>
+                          </ul>
+                          <h3>Body</h3>
+
+                          <p><strong>Type: application/json</strong></p>
+
+                          <p>
+                            <small><strong>Schema</strong>:<pre><code>{
+                              "$schema": "http://json-schema.org/draft-03/schema",
+                              "type": "object",
+                              "required": false,
+                              "description": "Pod resource. A pod corresponds to a co-located group of [Docker
+                              containers](http://docker.io).",
+                              "properties": {
+                              "kind": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "id": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "creationTimestamp": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "selfLink": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "desiredState": {
+                              "type": "object",
+                              "required": false,
+                              "description": "The desired configuration of the pod",
+                              "properties": {
+                              "manifest": {
+                              "type": "object",
+                              "required": false,
+                              "description": "Manifest describing group of [Docker containers](http://docker.io);
+                              compatible with format used by [Google Cloud Platform&#x27;s container-vm
+                              images](https://developers.google.com/compute/docs/containers)"
+                              },
+                              "status": {
+                              "type": "string",
+                              "required": false,
+                              "description": ""
+                              },
+                              "host": {
+                              "type": "string",
+                              "required": false,
+                              "description": ""
+                              },
+                              "hostIP": {
+                              "type": "string",
+                              "required": false,
+                              "description": ""
+                              },
+                              "info": {
+                              "type": "object",
+                              "required": false,
+                              "description": ""
+                              }
+                              }
+                              },
+                              "currentState": {
+                              "type": "object",
+                              "required": false,
+                              "description": "The current configuration and status of the pod. Fields in common with
+                              desiredState have the same meaning.",
+                              "properties": {
+                              "manifest": {
+                              "type": "object",
+                              "required": false
+                              },
+                              "status": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "host": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "hostIP": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "info": {
+                              "type": "object",
+                              "required": false
+                              }
+                              }
+                              },
+                              "labels": {
+                              "type": "object",
+                              "required": false
+                              }
+                              }
+                              }
+                            </code></pre>
+                            </small>
+                          </p>
+                          <p>
+                            <small><strong>Example</strong>:<pre><code>{
+                              "kind": "Pod",
+                              "apiVersion": "v1beta1",
+                              "id": "php",
+                              "desiredState": {
+                              "manifest": {
+                              "version": "v1beta1",
+                              "id": "php",
+                              "containers": [{
+                              "name": "nginx",
+                              "image": "dockerfile/nginx",
+                              "ports": [{
+                              "containerPort": 80,
+                              "hostPort": 8080
+                              }],
+                              "livenessProbe": {
+                              "enabled": true,
+                              "type": "http",
+                              "initialDelaySeconds": 30,
+                              "httpGet": {
+                              "path": "/index.html",
+                              "port": "8080"
+                              }
+                              }
+                              }]
+                              }
+                              },
+                              "labels": {
+                              "name": "foo"
+                              }
+                              }
+
+                            </code></pre>
+                            </small>
+                          </p>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </div>
+              <div class="modal fade" tabindex=0 id=_pods__podId__delete>
+                <div class=modal-dialog>
+                  <div class=modal-content>
+                    <div class=modal-header>
+                      <button type=button class=close data-dismiss=modal aria-hidden=true>&times;</button>
+                      <h4 class=modal-title id=myModalLabel><span class="badge badge_delete">delete</span> <span
+                              class=parent>/pods</span>/{podId}</h4></div>
+                    <div class=modal-body>
+                      <div class="alert alert-info"><p>Delete a specific pod</p></div>
+                      <ul class="nav nav-tabs">
+                        <li class=active><a href=#_pods__podId__delete_request data-toggle=tab>Request</a></li>
+                        <li><a href=#_pods__podId__delete_response data-toggle=tab>Response</a></li>
+                      </ul>
+                      <div class=tab-content>
+                        <div class="tab-pane active" id=_pods__podId__delete_request><h3>URI Parameters</h3>
+                          <ul>
+                            <li><strong>podId</strong>: <em>required (string)</em></li>
+                          </ul>
+                        </div>
+                        <div class=tab-pane id=_pods__podId__delete_response><h2>HTTP status code <a
+                                href=http://httpstatus.es/200 target=_blank>200</a></h2>
+
+                          <h3>Body</h3>
+
+                          <p><strong>Type: application/json</strong></p>
+
+                          <p>
+                            <small><strong>Example</strong>:<pre><code>{
+                              "success": true
+                              }
+                            </code></pre>
+                            </small>
+                          </p>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </div>
+            </div>
+          </div>
+        </div>
+      </div>
+      <div class="panel panel-default">
+        <div class=panel-heading><h3 id=_replicationControllers class=panel-title>/replicationControllers</h3></div>
+        <div class=panel-body>
+          <div class=panel-group>
+            <div class="panel panel-white">
+              <div class=panel-heading><h4 class=panel-title><a class=collapsed data-toggle=collapse
+                                                                href=#panel__replicationControllers><span
+                      class=parent></span>/replicationControllers</a> <span class=methods><a href=# data-toggle=modal
+                                                                                             data-target=#_replicationControllers_get><span
+                      class="badge badge_get">get</span></a> <a href=# data-toggle=modal
+                                                                data-target=#_replicationControllers_post><span
+                      class="badge badge_post">post</span></a></span></h4></div>
+              <div id=panel__replicationControllers class="panel-collapse collapse">
+                <div class=panel-body>
+                  <div class=list-group><a href=# data-toggle=modal data-target=#_replicationControllers_get
+                                           class=list-group-item><span class="badge badge_get">get</span>
+
+                    <div class=method_description><p>List all replicationControllers on this cluster</p></div>
+                    <div class=clearfix></div>
+                  </a> <a href=# data-toggle=modal data-target=#_replicationControllers_post class=list-group-item><span
+                          class="badge badge_post">post</span>
+
+                    <div class=method_description><p>Create a new controller. currentState is ignored if present.</p>
+                    </div>
+                    <div class=clearfix></div>
+                  </a></div>
+                </div>
+              </div>
+              <div class="modal fade" tabindex=0 id=_replicationControllers_get>
+                <div class=modal-dialog>
+                  <div class=modal-content>
+                    <div class=modal-header>
+                      <button type=button class=close data-dismiss=modal aria-hidden=true>&times;</button>
+                      <h4 class=modal-title id=myModalLabel><span class="badge badge_get">get</span> <span
+                              class=parent></span>/replicationControllers</h4></div>
+                    <div class=modal-body>
+                      <div class="alert alert-info"><p>List all replicationControllers on this cluster</p></div>
+                      <ul class="nav nav-tabs">
+                        <li class=active><a href=#_replicationControllers_get_request data-toggle=tab>Request</a></li>
+                        <li><a href=#_replicationControllers_get_response data-toggle=tab>Response</a></li>
+                      </ul>
+                      <div class=tab-content>
+                        <div class="tab-pane active" id=_replicationControllers_get_request></div>
+                        <div class=tab-pane id=_replicationControllers_get_response><h2>HTTP status code <a
+                                href=http://httpstatus.es/200 target=_blank>200</a></h2>
+
+                          <h3>Body</h3>
+
+                          <p><strong>Type: application/json</strong></p>
+
+                          <p>
+                            <small><strong>Example</strong>:<pre><code>{
+                              "kind": "ReplicationControllerList",
+                              "apiVersion": "v1beta1",
+                              "items": [
+                              {
+                              "id": "testRun",
+                              "desiredState": {
+                              "replicas": 2,
+                              "replicaSelector": {
+                              "name": "testRun"
+                              },
+                              "podTemplate": {
+                              "desiredState": {
+                              "manifest": {
+                              "version": "v1beta1",
+                              "image": "dockerfile/nginx",
+                              "networkPorts": [
+                              {
+                              "hostPort": 8080,
+                              "containerPort": 80
+                              }
+                              ]
+                              }
+                              },
+                              "labels": {
+                              "name": "testRun"
+                              }
+                              }
+                              },
+                              "labels": {
+                              "name": "testRun"
+                              }
+                              }
+                              ]
+                              }
+                            </code></pre>
+                            </small>
+                          </p>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </div>
+              <div class="modal fade" tabindex=0 id=_replicationControllers_post>
+                <div class=modal-dialog>
+                  <div class=modal-content>
+                    <div class=modal-header>
+                      <button type=button class=close data-dismiss=modal aria-hidden=true>&times;</button>
+                      <h4 class=modal-title id=myModalLabel><span class="badge badge_post">post</span> <span
+                              class=parent></span>/replicationControllers</h4></div>
+                    <div class=modal-body>
+                      <div class="alert alert-info"><p>Create a new controller. currentState is ignored if present.</p>
+                      </div>
+                      <ul class="nav nav-tabs">
+                        <li class=active><a href=#_replicationControllers_post_request data-toggle=tab>Request</a></li>
+                      </ul>
+                      <div class=tab-content>
+                        <div class="tab-pane active" id=_replicationControllers_post_request><h3>Body</h3>
+
+                          <p><strong>Type: application/json</strong></p>
+
+                          <p>
+                            <small><strong>Schema</strong>:<pre><code>{
+                              "$schema": "http://json-schema.org/draft-03/schema",
+                              "type": "object",
+                              "required": false,
+                              "description": "A replicationController resource. A replicationController helps to create
+                              and manage a set of pods. It acts as a factory to create new pods based on a template. It
+                              ensures that there are a specific number of pods running. If fewer pods are running than
+                              &#x60;replicas&#x60; then the needed pods are generated using &#x60;podTemplate&#x60;. If
+                              more pods are running than &#x60;replicas&#x60;, then excess pods are deleted.",
+                              "properties": {
+                              "kind": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "id": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "creationTimestamp": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "selfLink": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "desiredState": {
+                              "type": "object",
+                              "required": false,
+                              "description": "The desired configuration of the replicationController",
+                              "properties": {
+                              "replicas": {
+                              "type": "number",
+                              "required": false,
+                              "description": "Number of pods desired in the set"
+                              },
+                              "replicaSelector": {
+                              "type": "object",
+                              "required": false,
+                              "description": "Required labels used to identify pods in the set"
+                              },
+                              "podTemplate": {
+                              "type": "object",
+                              "required": false,
+                              "description": "Template from which to create new pods, as necessary. Identical to pod
+                              schema."
+                              }
+                              }
+                              },
+                              "labels": {
+                              "type": "object",
+                              "required": false
+                              }
+                              }
+                              }
+                            </code></pre>
+                            </small>
+                          </p>
+                          <p>
+                            <small><strong>Example</strong>:<pre><code> {
+                              "id": "nginxController",
+                              "apiVersion": "v1beta1",
+                              "kind": "ReplicationController",
+                              "desiredState": {
+                              "replicas": 2,
+                              "replicaSelector": {"name": "nginx"},
+                              "podTemplate": {
+                              "desiredState": {
+                              "manifest": {
+                              "version": "v1beta1",
+                              "id": "nginxController",
+                              "containers": [{
+                              "name": "nginx",
+                              "image": "dockerfile/nginx",
+                              "ports": [{"containerPort": 80, "hostPort": 8080}]
+                              }]
+                              }
+                              },
+                              "labels": {"name": "nginx"}
+                              }},
+                              "labels": {"name": "nginx"}
+                              }
+                            </code></pre>
+                            </small>
+                          </p>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </div>
+            </div>
+            <div class="panel panel-white">
+              <div class=panel-heading><h4 class=panel-title><a class=collapsed data-toggle=collapse
+                                                                href=#panel__replicationControllers__controllerId_><span
+                      class=parent>/replicationControllers</span>/{controllerId}</a> <span class=methods><a href=#
+                                                                                                            data-toggle=modal
+                                                                                                            data-target=#_replicationControllers__controllerId__get><span
+                      class="badge badge_get">get</span></a> <a href=# data-toggle=modal
+                                                                data-target=#_replicationControllers__controllerId__put><span
+                      class="badge badge_put">put</span></a> <a href=# data-toggle=modal
+                                                                data-target=#_replicationControllers__controllerId__delete><span
+                      class="badge badge_delete">delete</span></a></span></h4></div>
+              <div id=panel__replicationControllers__controllerId_ class="panel-collapse collapse">
+                <div class=panel-body>
+                  <div class=list-group><a href=# data-toggle=modal
+                                           data-target=#_replicationControllers__controllerId__get
+                                           class=list-group-item><span class="badge badge_get">get</span>
+
+                    <div class=method_description><p>Get a specific controller</p></div>
+                    <div class=clearfix></div>
+                  </a> <a href=# data-toggle=modal data-target=#_replicationControllers__controllerId__put
+                          class=list-group-item><span class="badge badge_put">put</span>
+
+                    <div class=method_description><p>Update a controller</p></div>
+                    <div class=clearfix></div>
+                  </a> <a href=# data-toggle=modal data-target=#_replicationControllers__controllerId__delete
+                          class=list-group-item><span class="badge badge_delete">delete</span>
+
+                    <div class=method_description><p>Delete a specific controller</p></div>
+                    <div class=clearfix></div>
+                  </a></div>
+                </div>
+              </div>
+              <div class="modal fade" tabindex=0 id=_replicationControllers__controllerId__get>
+                <div class=modal-dialog>
+                  <div class=modal-content>
+                    <div class=modal-header>
+                      <button type=button class=close data-dismiss=modal aria-hidden=true>&times;</button>
+                      <h4 class=modal-title id=myModalLabel><span class="badge badge_get">get</span> <span class=parent>/replicationControllers</span>/{controllerId}
+                      </h4></div>
+                    <div class=modal-body>
+                      <div class="alert alert-info"><p>Get a specific controller</p></div>
+                      <ul class="nav nav-tabs">
+                        <li class=active><a href=#_replicationControllers__controllerId__get_request data-toggle=tab>Request</a>
+                        </li>
+                        <li><a href=#_replicationControllers__controllerId__get_response data-toggle=tab>Response</a>
+                        </li>
+                      </ul>
+                      <div class=tab-content>
+                        <div class="tab-pane active" id=_replicationControllers__controllerId__get_request><h3>URI
+                          Parameters</h3>
+                          <ul>
+                            <li><strong>controllerId</strong>: <em>required (string)</em></li>
+                          </ul>
+                        </div>
+                        <div class=tab-pane id=_replicationControllers__controllerId__get_response><h2>HTTP status code
+                          <a href=http://httpstatus.es/200 target=_blank>200</a></h2>
+
+                          <h3>Body</h3>
+
+                          <p><strong>Type: application/json</strong></p>
+
+                          <p>
+                            <small><strong>Example</strong>:<pre><code> {
+                              "id": "nginxController",
+                              "apiVersion": "v1beta1",
+                              "kind": "ReplicationController",
+                              "desiredState": {
+                              "replicas": 2,
+                              "replicaSelector": {"name": "nginx"},
+                              "podTemplate": {
+                              "desiredState": {
+                              "manifest": {
+                              "version": "v1beta1",
+                              "id": "nginxController",
+                              "containers": [{
+                              "name": "nginx",
+                              "image": "dockerfile/nginx",
+                              "ports": [{"containerPort": 80, "hostPort": 8080}]
+                              }]
+                              }
+                              },
+                              "labels": {"name": "nginx"}
+                              }},
+                              "labels": {"name": "nginx"}
+                              }
+                            </code></pre>
+                            </small>
+                          </p>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </div>
+              <div class="modal fade" tabindex=0 id=_replicationControllers__controllerId__put>
+                <div class=modal-dialog>
+                  <div class=modal-content>
+                    <div class=modal-header>
+                      <button type=button class=close data-dismiss=modal aria-hidden=true>&times;</button>
+                      <h4 class=modal-title id=myModalLabel><span class="badge badge_put">put</span> <span class=parent>/replicationControllers</span>/{controllerId}
+                      </h4></div>
+                    <div class=modal-body>
+                      <div class="alert alert-info"><p>Update a controller</p></div>
+                      <ul class="nav nav-tabs">
+                        <li class=active><a href=#_replicationControllers__controllerId__put_request data-toggle=tab>Request</a>
+                        </li>
+                      </ul>
+                      <div class=tab-content>
+                        <div class="tab-pane active" id=_replicationControllers__controllerId__put_request><h3>URI
+                          Parameters</h3>
+                          <ul>
+                            <li><strong>controllerId</strong>: <em>required (string)</em></li>
+                          </ul>
+                          <h3>Body</h3>
+
+                          <p><strong>Type: application/json</strong></p>
+
+                          <p>
+                            <small><strong>Schema</strong>:<pre><code>{
+                              "$schema": "http://json-schema.org/draft-03/schema",
+                              "type": "object",
+                              "required": false,
+                              "description": "A replicationController resource. A replicationController helps to create
+                              and manage a set of pods. It acts as a factory to create new pods based on a template. It
+                              ensures that there are a specific number of pods running. If fewer pods are running than
+                              &#x60;replicas&#x60; then the needed pods are generated using &#x60;podTemplate&#x60;. If
+                              more pods are running than &#x60;replicas&#x60;, then excess pods are deleted.",
+                              "properties": {
+                              "kind": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "id": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "creationTimestamp": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "selfLink": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "desiredState": {
+                              "type": "object",
+                              "required": false,
+                              "description": "The desired configuration of the replicationController",
+                              "properties": {
+                              "replicas": {
+                              "type": "number",
+                              "required": false,
+                              "description": "Number of pods desired in the set"
+                              },
+                              "replicaSelector": {
+                              "type": "object",
+                              "required": false,
+                              "description": "Required labels used to identify pods in the set"
+                              },
+                              "podTemplate": {
+                              "type": "object",
+                              "required": false,
+                              "description": "Template from which to create new pods, as necessary. Identical to pod
+                              schema."
+                              }
+                              }
+                              },
+                              "labels": {
+                              "type": "object",
+                              "required": false
+                              }
+                              }
+                              }
+                            </code></pre>
+                            </small>
+                          </p>
+                          <p>
+                            <small><strong>Example</strong>:<pre><code> {
+                              "id": "nginxController",
+                              "apiVersion": "v1beta1",
+                              "kind": "ReplicationController",
+                              "desiredState": {
+                              "replicas": 2,
+                              "replicaSelector": {"name": "nginx"},
+                              "podTemplate": {
+                              "desiredState": {
+                              "manifest": {
+                              "version": "v1beta1",
+                              "id": "nginxController",
+                              "containers": [{
+                              "name": "nginx",
+                              "image": "dockerfile/nginx",
+                              "ports": [{"containerPort": 80, "hostPort": 8080}]
+                              }]
+                              }
+                              },
+                              "labels": {"name": "nginx"}
+                              }},
+                              "labels": {"name": "nginx"}
+                              }
+                            </code></pre>
+                            </small>
+                          </p>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </div>
+              <div class="modal fade" tabindex=0 id=_replicationControllers__controllerId__delete>
+                <div class=modal-dialog>
+                  <div class=modal-content>
+                    <div class=modal-header>
+                      <button type=button class=close data-dismiss=modal aria-hidden=true>&times;</button>
+                      <h4 class=modal-title id=myModalLabel><span class="badge badge_delete">delete</span> <span
+                              class=parent>/replicationControllers</span>/{controllerId}</h4></div>
+                    <div class=modal-body>
+                      <div class="alert alert-info"><p>Delete a specific controller</p></div>
+                      <ul class="nav nav-tabs">
+                        <li class=active><a href=#_replicationControllers__controllerId__delete_request data-toggle=tab>Request</a>
+                        </li>
+                        <li><a href=#_replicationControllers__controllerId__delete_response data-toggle=tab>Response</a>
+                        </li>
+                      </ul>
+                      <div class=tab-content>
+                        <div class="tab-pane active" id=_replicationControllers__controllerId__delete_request><h3>URI
+                          Parameters</h3>
+                          <ul>
+                            <li><strong>controllerId</strong>: <em>required (string)</em></li>
+                          </ul>
+                        </div>
+                        <div class=tab-pane id=_replicationControllers__controllerId__delete_response><h2>HTTP status
+                          code <a href=http://httpstatus.es/200 target=_blank>200</a></h2>
+
+                          <h3>Body</h3>
+
+                          <p><strong>Type: application/json</strong></p>
+
+                          <p>
+                            <small><strong>Example</strong>:<pre><code>{
+                              "success": true
+                              }
+                            </code></pre>
+                            </small>
+                          </p>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </div>
+            </div>
+          </div>
+        </div>
+      </div>
+      <div class="panel panel-default">
+        <div class=panel-heading><h3 id=_services class=panel-title>/services</h3></div>
+        <div class=panel-body>
+          <div class=panel-group>
+            <div class="panel panel-white">
+              <div class=panel-heading><h4 class=panel-title><a class=collapsed data-toggle=collapse
+                                                                href=#panel__services><span class=parent></span>/services</a>
+                <span class=methods><a href=# data-toggle=modal data-target=#_services_get><span
+                        class="badge badge_get">get</span></a> <a href=# data-toggle=modal
+                                                                  data-target=#_services_post><span
+                        class="badge badge_post">post</span></a></span></h4></div>
+              <div id=panel__services class="panel-collapse collapse">
+                <div class=panel-body>
+                  <div class=list-group><a href=# data-toggle=modal data-target=#_services_get
+                                           class=list-group-item><span class="badge badge_get">get</span>
+
+                    <div class=method_description><p>List all services on this cluster</p></div>
+                    <div class=clearfix></div>
+                  </a> <a href=# data-toggle=modal data-target=#_services_post class=list-group-item><span
+                          class="badge badge_post">post</span>
+
+                    <div class=method_description><p>Create a new service</p></div>
+                    <div class=clearfix></div>
+                  </a></div>
+                </div>
+              </div>
+              <div class="modal fade" tabindex=0 id=_services_get>
+                <div class=modal-dialog>
+                  <div class=modal-content>
+                    <div class=modal-header>
+                      <button type=button class=close data-dismiss=modal aria-hidden=true>&times;</button>
+                      <h4 class=modal-title id=myModalLabel><span class="badge badge_get">get</span> <span
+                              class=parent></span>/services</h4></div>
+                    <div class=modal-body>
+                      <div class="alert alert-info"><p>List all services on this cluster</p></div>
+                      <ul class="nav nav-tabs">
+                        <li class=active><a href=#_services_get_request data-toggle=tab>Request</a></li>
+                        <li><a href=#_services_get_response data-toggle=tab>Response</a></li>
+                      </ul>
+                      <div class=tab-content>
+                        <div class="tab-pane active" id=_services_get_request></div>
+                        <div class=tab-pane id=_services_get_response><h2>HTTP status code <a
+                                href=http://httpstatus.es/200 target=_blank>200</a></h2>
+
+                          <h3>Body</h3>
+
+                          <p><strong>Type: application/json</strong></p>
+
+                          <p>
+                            <small><strong>Example</strong>:<pre><code>{
+                              "kind": "ServiceList",
+                              "apiVersion": "v1beta1",
+                              "items": [
+                              {
+                              "id": "example1",
+                              "port": 8000,
+                              "labels": {
+                              "name": "nginx"
+                              },
+                              "selector": {
+                              "name": "nginx"
+                              }
+                              },
+                              {
+                              "id": "example2",
+                              "port": 8080,
+                              "labels": {
+                              "env": "prod",
+                              "name": "jetty"
+                              },
+                              "selector": {
+                              "env": "prod",
+                              "name": "jetty"
+                              }
+                              }
+                              ]
+                              }
+                            </code></pre>
+                            </small>
+                          </p>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </div>
+              <div class="modal fade" tabindex=0 id=_services_post>
+                <div class=modal-dialog>
+                  <div class=modal-content>
+                    <div class=modal-header>
+                      <button type=button class=close data-dismiss=modal aria-hidden=true>&times;</button>
+                      <h4 class=modal-title id=myModalLabel><span class="badge badge_post">post</span> <span
+                              class=parent></span>/services</h4></div>
+                    <div class=modal-body>
+                      <div class="alert alert-info"><p>Create a new service</p></div>
+                      <ul class="nav nav-tabs">
+                        <li class=active><a href=#_services_post_request data-toggle=tab>Request</a></li>
+                      </ul>
+                      <div class=tab-content>
+                        <div class="tab-pane active" id=_services_post_request><h3>Body</h3>
+
+                          <p><strong>Type: application/json</strong></p>
+
+                          <p>
+                            <small><strong>Schema</strong>:<pre><code>{
+                              "$schema": "http://json-schema.org/draft-03/schema",
+                              "type": "object",
+                              "required": false,
+                              "description": "A service resource.",
+                              "properties": {
+                              "kind": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "id": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "creationTimestamp": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "selfLink": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "name": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "port": {
+                              "type": "number",
+                              "required": false
+                              },
+                              "containerPort": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "labels": {
+                              "type": "object",
+                              "required": false
+                              },
+                              "selector": {
+                              "type": "object",
+                              "required": false
+                              }
+                              }
+                              }
+                            </code></pre>
+                            </small>
+                          </p>
+                          <p>
+                            <small><strong>Example</strong>:<pre><code>{
+                              "kind": "Service",
+                              "apiVersion": "v1beta1",
+                              "id": "example",
+                              "port": 8000,
+                              "labels": {
+                              "name": "nginx"
+                              },
+                              "selector": {
+                              "name": "nginx"
+                              }
+                              }
+                            </code></pre>
+                            </small>
+                          </p>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </div>
+            </div>
+            <div class="panel panel-white">
+              <div class=panel-heading><h4 class=panel-title><a class=collapsed data-toggle=collapse
+                                                                href=#panel__services__serviceId_><span class=parent>/services</span>/{serviceId}</a>
+                <span class=methods><a href=# data-toggle=modal data-target=#_services__serviceId__get><span
+                        class="badge badge_get">get</span></a> <a href=# data-toggle=modal
+                                                                  data-target=#_services__serviceId__put><span
+                        class="badge badge_put">put</span></a> <a href=# data-toggle=modal
+                                                                  data-target=#_services__serviceId__delete><span
+                        class="badge badge_delete">delete</span></a></span></h4></div>
+              <div id=panel__services__serviceId_ class="panel-collapse collapse">
+                <div class=panel-body>
+                  <div class=list-group><a href=# data-toggle=modal data-target=#_services__serviceId__get
+                                           class=list-group-item><span class="badge badge_get">get</span>
+
+                    <div class=method_description><p>Get a specific service</p></div>
+                    <div class=clearfix></div>
+                  </a> <a href=# data-toggle=modal data-target=#_services__serviceId__put class=list-group-item><span
+                          class="badge badge_put">put</span>
+
+                    <div class=method_description><p>Update a service</p></div>
+                    <div class=clearfix></div>
+                  </a> <a href=# data-toggle=modal data-target=#_services__serviceId__delete class=list-group-item><span
+                          class="badge badge_delete">delete</span>
+
+                    <div class=method_description><p>Delete a specific service</p></div>
+                    <div class=clearfix></div>
+                  </a></div>
+                </div>
+              </div>
+              <div class="modal fade" tabindex=0 id=_services__serviceId__get>
+                <div class=modal-dialog>
+                  <div class=modal-content>
+                    <div class=modal-header>
+                      <button type=button class=close data-dismiss=modal aria-hidden=true>&times;</button>
+                      <h4 class=modal-title id=myModalLabel><span class="badge badge_get">get</span> <span class=parent>/services</span>/{serviceId}
+                      </h4></div>
+                    <div class=modal-body>
+                      <div class="alert alert-info"><p>Get a specific service</p></div>
+                      <ul class="nav nav-tabs">
+                        <li class=active><a href=#_services__serviceId__get_request data-toggle=tab>Request</a></li>
+                        <li><a href=#_services__serviceId__get_response data-toggle=tab>Response</a></li>
+                      </ul>
+                      <div class=tab-content>
+                        <div class="tab-pane active" id=_services__serviceId__get_request><h3>URI Parameters</h3>
+                          <ul>
+                            <li><strong>serviceId</strong>: <em>required (string)</em></li>
+                          </ul>
+                        </div>
+                        <div class=tab-pane id=_services__serviceId__get_response><h2>HTTP status code <a
+                                href=http://httpstatus.es/200 target=_blank>200</a></h2>
+
+                          <h3>Body</h3>
+
+                          <p><strong>Type: application/json</strong></p>
+
+                          <p>
+                            <small><strong>Example</strong>:<pre><code>{
+                              "kind": "Service",
+                              "apiVersion": "v1beta1",
+                              "id": "example",
+                              "port": 8000,
+                              "labels": {
+                              "name": "nginx"
+                              },
+                              "selector": {
+                              "name": "nginx"
+                              }
+                              }
+                            </code></pre>
+                            </small>
+                          </p>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </div>
+              <div class="modal fade" tabindex=0 id=_services__serviceId__put>
+                <div class=modal-dialog>
+                  <div class=modal-content>
+                    <div class=modal-header>
+                      <button type=button class=close data-dismiss=modal aria-hidden=true>&times;</button>
+                      <h4 class=modal-title id=myModalLabel><span class="badge badge_put">put</span> <span class=parent>/services</span>/{serviceId}
+                      </h4></div>
+                    <div class=modal-body>
+                      <div class="alert alert-info"><p>Update a service</p></div>
+                      <ul class="nav nav-tabs">
+                        <li class=active><a href=#_services__serviceId__put_request data-toggle=tab>Request</a></li>
+                      </ul>
+                      <div class=tab-content>
+                        <div class="tab-pane active" id=_services__serviceId__put_request><h3>URI Parameters</h3>
+                          <ul>
+                            <li><strong>serviceId</strong>: <em>required (string)</em></li>
+                          </ul>
+                          <h3>Body</h3>
+
+                          <p><strong>Type: application/json</strong></p>
+
+                          <p>
+                            <small><strong>Schema</strong>:<pre><code>{
+                              "$schema": "http://json-schema.org/draft-03/schema",
+                              "type": "object",
+                              "required": false,
+                              "description": "A service resource.",
+                              "properties": {
+                              "kind": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "id": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "creationTimestamp": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "selfLink": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "name": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "port": {
+                              "type": "number",
+                              "required": false
+                              },
+                              "containerPort": {
+                              "type": "string",
+                              "required": false
+                              },
+                              "labels": {
+                              "type": "object",
+                              "required": false
+                              },
+                              "selector": {
+                              "type": "object",
+                              "required": false
+                              }
+                              }
+                              }
+                            </code></pre>
+                            </small>
+                          </p>
+                          <p>
+                            <small><strong>Example</strong>:<pre><code>{
+                              "kind": "Service",
+                              "apiVersion": "v1beta1",
+                              "id": "example",
+                              "port": 8000,
+                              "labels": {
+                              "name": "nginx"
+                              },
+                              "selector": {
+                              "name": "nginx"
+                              }
+                              }
+                            </code></pre>
+                            </small>
+                          </p>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </div>
+              <div class="modal fade" tabindex=0 id=_services__serviceId__delete>
+                <div class=modal-dialog>
+                  <div class=modal-content>
+                    <div class=modal-header>
+                      <button type=button class=close data-dismiss=modal aria-hidden=true>&times;</button>
+                      <h4 class=modal-title id=myModalLabel><span class="badge badge_delete">delete</span> <span
+                              class=parent>/services</span>/{serviceId}</h4></div>
+                    <div class=modal-body>
+                      <div class="alert alert-info"><p>Delete a specific service</p></div>
+                      <ul class="nav nav-tabs">
+                        <li class=active><a href=#_services__serviceId__delete_request data-toggle=tab>Request</a></li>
+                        <li><a href=#_services__serviceId__delete_response data-toggle=tab>Response</a></li>
+                      </ul>
+                      <div class=tab-content>
+                        <div class="tab-pane active" id=_services__serviceId__delete_request><h3>URI Parameters</h3>
+                          <ul>
+                            <li><strong>serviceId</strong>: <em>required (string)</em></li>
+                          </ul>
+                        </div>
+                        <div class=tab-pane id=_services__serviceId__delete_response><h2>HTTP status code <a
+                                href=http://httpstatus.es/200 target=_blank>200</a></h2>
+
+                          <h3>Body</h3>
+
+                          <p><strong>Type: application/json</strong></p>
+
+                          <p>
+                            <small><strong>Example</strong>:<pre><code>{
+                              "success": true
+                              }
+                            </code></pre>
+                            </small>
+                          </p>
+                        </div>
+                      </div>
+                    </div>
+                  </div>
+                </div>
+              </div>
+            </div>
+          </div>
+        </div>
+      </div>
+    </div>
+    <div class=col-md-3>
+      <div id=sidebar class="hidden-print affix" role=complementary>
+        <ul class="nav nav-pills nav-stacked">
+          <li><a href=#_pods>/pods</a></li>
+          <li><a href=#_replicationControllers>/replicationControllers</a></li>
+          <li><a href=#_services>/services</a></li>
+        </ul>
+      </div>
+    </div>
+  </div>
+</div>
+</body>
+</html>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/stratos/blob/3414e7ce/dependencies/fabric8/kubernetes-api/src/main/kubernetes/api/kubernetes.raml
----------------------------------------------------------------------
diff --git a/dependencies/fabric8/kubernetes-api/src/main/kubernetes/api/kubernetes.raml b/dependencies/fabric8/kubernetes-api/src/main/kubernetes/api/kubernetes.raml
new file mode 100644
index 0000000..6cf25c4
--- /dev/null
+++ b/dependencies/fabric8/kubernetes-api/src/main/kubernetes/api/kubernetes.raml
@@ -0,0 +1,185 @@
+#%RAML 0.8
+baseUri: http://server/api/{version}
+title: Kubernetes
+version: v1beta1
+mediaType: application/json
+documentation:
+ - title: Overview
+   content: |
+     The Kubernetes API currently manages 3 main resources: `pods`,
+     `replicationControllers`, and `services`. Pods correspond to
+     colocated groups of [Docker containers](http://docker.io) with
+     shared volumes, as supported by [Google Cloud Platform's
+     container-vm
+     images](https://developers.google.com/compute/docs/containers).
+     Singleton pods can be created directly via the `/pods`
+     endpoint. Sets of pods may created, maintained, and scaled using
+     replicationControllers.  Services create load-balanced targets
+     for sets of pods.
+
+ - title: Resource identifiers
+   content: |
+     Each resource has a string `id` and list of key-value
+     `labels`. The `id` is generated by the system and is guaranteed
+     to be unique in space and time across all resources.  `labels`
+     is a map of string (key) to string (value). Each resource may
+     have at most one label with a particular key. Individual labels
+     are used to specify identifying metadata that can be used to
+     define sets of resources by specifying required labels. Examples
+     of typical pod label keys include `stage`, `service`, `name`,
+     `tier`, `partition`, and `track`, but you are free to develop
+     your own conventions.
+
+ - title: Creation semantics
+   content: |
+     Creation is currently not idempotent. We plan to add a
+     modification token to each resource. A unique value for the token
+     should be provided by the user during creation. If the user
+     specifies a duplicate token at creation time, the system should
+     return an error with a pointer to the existing resource with that
+     token. In this way a user can deterministically recover from a
+     dropped connection during a resource creation request.
+
+ - title: Update semantics
+   content: |
+     Custom verbs are minimized and are used only for 'edge triggered'
+     actions such as a reboot. Resource descriptions are generally set
+     up with `desiredState` for the user provided parameters and
+     `currentState` for the actual system state. While consistent
+     terminology is used across these two stanzas they do not match
+     member for member.
+
+     When a new version of a resource is PUT the `desiredState` is
+     updated and available immediately. Over time the system will work
+     to bring the `currentState` into line with the `desiredState`. The
+     system will drive toward the most recent `desiredState` regardless
+     of previous versions of that stanza. In other words, if a value
+     is changed from 2 to 5 in one PUT and then back down to 3 in
+     another PUT the system isn't required to 'touch base' at 5 before
+     making 3 the `currentState`.
+
+     When doing an update, we assume that the entire `desiredState`
+     stanza is specified. If a field is omitted it is assumed that the
+     user is looking to delete that field. It is viable for a user to
+     GET the resource, modify what they like in the `desiredState` or
+     labels stanzas and then PUT it back. If the `currentState` is
+     included in the PUT it will be silently ignored.
+
+     While currently unspecified, it is intended that concurrent
+     modification should be accomplished with optimistic locking of
+     resources. We plan to add a modification token to each resource. If
+     this is included with the PUT operation the system will verify
+     that there haven't been other successful mutations to the
+     resource during a read/modify/write cycle. The correct client
+     action at this point is to GET the resource again, apply the
+     changes afresh and try submitting again.
+
+     Note that updates currently only work for replicationControllers
+     and services, but not for pods. Label updates have not yet been
+     implemented, either.
+
+/pods:
+  get:
+    description: List all pods on this cluster
+    responses:
+      200:
+        body:
+          example: !include examples/pod-list.json
+  post:
+    description: Create a new pod. currentState is ignored if present.
+    body:
+      schema: !include doc/pod-schema.json
+      example: !include examples/pod.json
+  
+  /{podId}:
+    get:
+      description: Get a specific pod
+      responses:
+        200:
+          body:
+            example: !include examples/pod.json
+    put:
+      description: Update a pod
+      body:
+        schema: !include doc/pod-schema.json
+        example: !include examples/pod.json
+    delete:
+      description: Delete a specific pod
+      responses:
+        200:
+          body:
+            example: |
+              { 
+                "success": true
+              }
+
+/replicationControllers:
+  get:
+    description: List all replicationControllers on this cluster
+    responses:
+      200:
+        body:
+          example: !include examples/controller-list.json
+  post:
+    description: Create a new controller. currentState is ignored if present.
+    body:
+      schema: !include doc/controller-schema.json
+      example: !include examples/controller.json
+  
+  /{controllerId}:
+    get:
+      description: Get a specific controller
+      responses:
+        200:
+          body:
+            example: !include examples/controller.json
+    put:
+      description: Update a controller
+      body:
+        schema: !include doc/controller-schema.json
+        example: !include examples/controller.json
+    delete:
+      description: Delete a specific controller
+      responses:
+        200:
+          body:
+            example: |
+              { 
+                "success": true
+              }
+
+/services:
+  get:
+    description: List all services on this cluster
+    responses:
+      200:
+        body:
+          example: !include examples/service-list.json
+  post:
+    description: Create a new service
+    body:
+      schema: !include doc/service-schema.json
+      example: !include examples/service.json
+  
+  /{serviceId}:
+    get:
+      description: Get a specific service
+      responses:
+        200:
+          body:
+            example: !include examples/service.json
+    put:
+      description: Update a service
+      body:
+        schema: !include doc/service-schema.json
+        example: !include examples/service.json
+    delete:
+      description: Delete a specific service
+      responses:
+        200:
+          body:
+            example: |
+              { 
+                "success": true
+              }
+


Mime
View raw message