You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by se...@apache.org on 2013/06/17 08:20:52 UTC

[1/3] git commit: updated refs/heads/ACS101 to 5278777

Updated Branches:
  refs/heads/ACS101 c7243d4da -> 52787777e
  refs/heads/master fcafe28d7 -> a3d585ea4


more knife-cs docs


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/52787777
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/52787777
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/52787777

Branch: refs/heads/ACS101
Commit: 52787777e21ec29a063bfe19197fa5a2c280e87c
Parents: c7243d4
Author: Sebastien Goasguen <ru...@gmail.com>
Authored: Sun Jun 16 17:08:58 2013 -0400
Committer: Sebastien Goasguen <ru...@gmail.com>
Committed: Sun Jun 16 17:08:58 2013 -0400

----------------------------------------------------------------------
 docs/acs101/en-US/knife-cloudstack.xml | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/52787777/docs/acs101/en-US/knife-cloudstack.xml
----------------------------------------------------------------------
diff --git a/docs/acs101/en-US/knife-cloudstack.xml b/docs/acs101/en-US/knife-cloudstack.xml
index a859311..61e79f2 100644
--- a/docs/acs101/en-US/knife-cloudstack.xml
+++ b/docs/acs101/en-US/knife-cloudstack.xml
@@ -314,6 +314,33 @@ Bootstrapping Chef on 178.xx.yy.zz
             <para>
                 You will want to review the security implications of doing the boostrap as root and using the default password to do so.
             </para>
+            <para>
+                In Advanced Zone, your cloud provider may also have decided to block all egress traffic to the public internet, which means that contacting the hosted Chef server would fail. To configure the egress rules properly, CloudMonkey can be used. List the networks to find the id of your guest network, then create an egress firewall rule. Review the CloudMonkey section to find the proper API calls and their arguments.
+                <programlisting>
+> list networks filter=id,name,netmask
+count = 1
+network:
++--------------------------------------+------+---------------+
+|                  id                  | name |    netmask    |
++--------------------------------------+------+---------------+
+| df2288bb-26d7-4b2f-bf41-e0fae1c6d198 | test | 255.255.255.0 |
++--------------------------------------+------+---------------+
+
+> create egressfirewallrule networkid=df2288bb-26d7-4b2f-bf41-e0fae1c6d198 startport=80 endport=80 protocol=TCP cidrlist=10.1.1.0/24
+id = b775f1cb-a0b3-4977-90b0-643b01198367
+jobid = 8a5b735c-6aab-45f8-b687-0a1150a66e0f
+
+> list egressfirewallrules
+count = 1
+firewallrule:
++-----------+-----------+---------+------+-------------+--------+----------+--------------------------------------+
+| networkid | startport | endport | tags |   cidrlist  | state  | protocol |                  id                  |
++-----------+-----------+---------+------+-------------+--------+----------+--------------------------------------+
+|    326    |     80    |    80   |  []  | 10.1.1.0/24 | Active |   tcp    | baf8d072-7814-4b75-bc8e-a47bfc306eb1 |
++-----------+-----------+---------+------+-------------+--------+----------+--------------------------------------+
+
+                </programlisting>
+            </para>
         </warning>
 
         <para>


[2/3] git commit: updated refs/heads/master to a3d585e

Posted by se...@apache.org.
Add proposal to CloudStack_GSoC_Guide.xml


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/ac48e5dc
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/ac48e5dc
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/ac48e5dc

Branch: refs/heads/master
Commit: ac48e5dc67e6ae93545ab188500070b3ef3da290
Parents: fcafe28
Author: Shiva Teja <sh...@gmail.com>
Authored: Thu Jun 13 23:02:12 2013 +0530
Committer: Sebastien Goasguen <ru...@gmail.com>
Committed: Mon Jun 17 02:20:36 2013 -0400

----------------------------------------------------------------------
 docs/en-US/CloudStack_GSoC_Guide.xml | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ac48e5dc/docs/en-US/CloudStack_GSoC_Guide.xml
----------------------------------------------------------------------
diff --git a/docs/en-US/CloudStack_GSoC_Guide.xml b/docs/en-US/CloudStack_GSoC_Guide.xml
index 1f43593..cd8205d 100644
--- a/docs/en-US/CloudStack_GSoC_Guide.xml
+++ b/docs/en-US/CloudStack_GSoC_Guide.xml
@@ -50,5 +50,6 @@
     <xi:include href="gsoc-imduffy15.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
     <xi:include href="gsoc-dharmesh.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
     <xi:include href="gsoc-meng.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+    <xi:include href="gsoc-shiva.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
 </book>
 


[3/3] git commit: updated refs/heads/master to a3d585e

Posted by se...@apache.org.
Add Shiva Teja's proposal to GSoC docbook


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/a3d585ea
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/a3d585ea
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/a3d585ea

Branch: refs/heads/master
Commit: a3d585ea4effc3a326858e777a7f785ddf44dfe2
Parents: ac48e5d
Author: Shiva Teja <sh...@gmail.com>
Authored: Fri Jun 14 00:54:03 2013 +0530
Committer: Sebastien Goasguen <ru...@gmail.com>
Committed: Mon Jun 17 02:20:37 2013 -0400

----------------------------------------------------------------------
 docs/en-US/gsoc-shiva.xml | 70 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 70 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a3d585ea/docs/en-US/gsoc-shiva.xml
----------------------------------------------------------------------
diff --git a/docs/en-US/gsoc-shiva.xml b/docs/en-US/gsoc-shiva.xml
new file mode 100644
index 0000000..400af3c
--- /dev/null
+++ b/docs/en-US/gsoc-shiva.xml
@@ -0,0 +1,70 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+<!ENTITY % BOOK_ENTITIES SYSTEM "CloudStack_GSoC_Guide.ent">
+%BOOK_ENTITIES;
+]>
+
+<!-- Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+ 
+   http://www.apache.org/licenses/LICENSE-2.0
+ 
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied.  See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+
+<chapter id="gsoc-shiva">
+        <title>Shiva Teja's 2013 GSoC Proposal</title>
+        <para>This chapter describes Shiva Teja's 2013 Google Summer of Code project within the &PRODUCT; ASF project. It is a copy paste of the submitted proposal.</para>
+	<section id="gsoc-abstract-shiva">
+		<title>Abstract</title>
+		<para>
+			The aim of this project is to create a new modular UI for Apache CloudStack using Bootstrap by Twitter and Backbone.js. To achieve this easily, I'll be creating a RESTful wrapper API on top of the current CloudStack API. I hope this project will make custom UIs for CloudStack very easy.</para>
+
+		<para>Why does CloudStack need a new UI?</para>
+
+		<para>The current UI cannot be reused easliy to make a custom UI. The UI I will be making using backbone.js can be reused very easily to make custom UIs. The models, views, routers etc can remain the same in all the UIs. The user interface can be changed just by changing the templates. Check the implementation details below for further details.</para>
+
+		<para>Why does it need a RESTful wrapper API ?</para>
+
+		<para>Backbone.js heavily depends on RESTful architecture. Making a new UI with backbone.js using a query based API might not be easy.</para>
+	</section>
+	<section id="gsoc-deliverables-shiva">
+		<title>List of deliverables</title>
+		<orderedlist>
+			<listitem><para>A new UI for CloudStack(with almost all features in the current UI and new ones, if any).</para></listitem>
+			<listitem><para>A RESTful wrapper API on top of the CloudStack API</para></listitem>
+			<listitem><para>Some documentation about using this UI to make a custom UI.</para></listitem>
+		</orderedlist>
+	</section>
+	<section id="gsoc-approach-shiva">
+		<title>Approach</title>
+		<para>Wrapper API: Backbone.js, by default, uses four HTTP methods(GET, PUT, POST, DELETE) for communicating with the server. It uses GET to fetch a resource from the server, POST to create a resource, PUT to update the resource and DELETE to delete the resource. A query based API can probably be used to make the UI by overriding backbone's<ulink url="http://backbonejs.org/#Sync"><citetitle> default sync function</citetitle></ulink>. But it makes more sense to have an API which supports the above mentioned method and is resource based. This RESTful API works on top of the CloudStack API. The main task is to map the combinations of these HTTP methods and the resources to appropriate CloudStack API command. The other task is to decide on how the URLs should look like. Say for starting a virtual machine, for it to be RESTful, we have to use POST as we are creating a resource, or a PUT as we are changing the state of a virtual machine. So the possible options on the URL could be to do
  a POST /runningvirtualmachines and respond with 201 Created code or a PUT on /virtualmachines/id and respond with 200 OK. If these are decided, the wrapper can be generated or be written manually, which can use defined patters to map to appropriate CloudStack API commands(Similar to what cloudmonkey does. See this <ulink url="https://github.com/shivateja/cloudstack-restful-api"><citetitle>prototype</citetitle></ulink>. I can use cloudmonkey's code to generate the required API entity verb relationships. Each verb will have a set of rules saying what method should be used in the RESTful API and how should it look like in the URL. Another possible way could be to group entities first manually and write the wrapper manually(something like zone/pods/cluster). Some possibilities have been discussed in <ulink url="http://mail-archives.apache.org/mod_mbox/cloudstack-dev/201304.mbox/%3CCAJrLSbaqa08uHw_xETt7Q59Nex%3DThQzvqEJyoXK8Q-OwN04Suw%40mail.gmail.com%3E"><citetitle>this thread</citetit
 le></ulink>.</para>
+
+		<para>UI: It will be a single page app. It'll use <ulink url="http://underscorejs.org/#template">client side templating</ulink> for rendering. This makes it very easy to make a custom UI because it can be achieved just by changing the templates. Backbone views will make use of these templates to render the appropriate models/collections. A completely new interface can be written just by changing the templates. Javascript code can completely remain the same. The views will take care of appropriate DOM events. Such event will correspond to appropriate model/collection chages, thus causing appropriate API calls.</para>
+	</section>
+	<section id="gsoc-schedule-shiva">
+		<title>Approximate Schedle</title>
+		<para>Till June 17 - Decide on how the RESTful API should look like and design algorithms to generate the wrapper.</para>
+		<para>July 5(soft deadline), July 10(hard deadline) : Wrapper API will be ready.</para>
+		<para>July 12(soft) - July 15(hard): Make basic wireframes and designs for the website and get them approved.</para>
+		<para>July 29(mid term evaluation) : All the basic models, views, routes of the UI should be ready along with a few templates.</para>
+		<para>August 15(hard deadline, shouldn't take much time actually) - A basic usable UI where users can just list all the entities which are present in the current UI's main navigation( Like Instances, Templates, Accounts etc)</para>
+		<para>September 1(hard) - From this UI, users should be able to launch instances, edit settings of most of the entities.</para>
+		<para>September 16(Pencil down!) - Fix some design tweaks and finish a completely usable interface with functions similar to current UI.</para>
+		<para>September 23 - Finish the documentation on how to use this UI to make custom UIs.</para>
+	</section>
+	<section id="gsoc-aboutme-shiva">
+		<title>About Me</title>
+		<para> I am a 2nd year computer science undergrad studying at IIT Mandi, India. I've been using Python for an year and a half now. I've used Django, Flask and Tornado for my small projects. Along with Python, I use C++ for competitive programming. Recently, I fell in love with Haskell. I've always been fascinated about web technologies.</para>
+	</section>
+</chapter>