150 likes | 322 Views
Cloudstack - Way to contribute. June 2014 Girish Chaudhari. In next 45 minutes …. Apache Software Foundation Development at Apache Different Apache Roles How do I start ? Dev cloud revisited Simulator What I am doing, recently Process walkthrough. Apache Software Foundation .
E N D
Cloudstack - Way to contribute June 2014 GirishChaudhari
In next 45 minutes … • Apache Software Foundation • Development at Apache • Different Apache Roles • How do I start ? • Dev cloud revisited • Simulator • What I am doing, recently • Process walkthrough
Apache Software Foundation • Non-profit organization, Provides support for the Apache community of open-source software projects • ASF Incubator • responsible to help new efforts to join the foundation • Every project first go to incubation and then graduates to TLP • Cloudstack history • Donated to Apache incubator ( April 2012) by Citrix • Made its first major release - 4.0.0-incubating on November 2012 • Graduated from the incubator on March 2013 • Now the one of the Top level project at ASF Footer – Apply across document
Development at Apache • Main characteristics of Apache development process • Open & Transparent Decision making To Reduce barriers to project participation • All decisions should happen on the project mailing lists • More opportunities to receive feedback on design and implementation • Scoped/Patch Contributions • One bug one patch • Decompose large function changes into multiple logically related commits • Voting Process • Permissive Apache License version 2.0 Footer – Apply across document
Apache Roles • User A user is someone that uses Apache software • Developer A user who contributes to a project in the form of code or documentation • Committer • A developer that was given write access to the code repository and has a signed Contributor License Agreement (CLA) on file • PMC Member A developer or a committer that was elected due to merit for the evolution of the project and demonstration of commitment Footer – Apply across document
How do I start ? Footer – Apply across document
How do I start ? • Join the Mailing lists or forums "If it didn't happen on a mailing list, it didn't happen.“ Important ones- • users@cloudstack.apache.org subscribe using users-subscribe@cloudstack.apache.org • dev@cloudstack.apache.org subscribe using dev-subscribe@cloudstack.apache.org • Others - ammounce, commits, issues, marketing • Checkout the code & setup the enviornment • Find the issues/Jiras https://issues.apache.org/jira/browse/CLOUDSTACK Footer – Apply across document
How do I start? • Make the code changes • Propose the new feature or changes • Get the feedback on the mailing list • Test the code changes • Submit the patch for review https://reviews.apache.org/groups/cloudstack/ Footer – Apply across document
Dev cloud revisited • A virtualbox appliance packaged to provide a working cloudstackenviornment • based on Ubuntu 12.04 and running a Xen Kernel. • Using the nested virtualization capability • Use cases • Acts a development environment - enabling to deploy the cloud testbed on single contained box • To run the smoke tests • Removes the barrier to explore the cloudstack Footer – Apply across document
DevCloud revisited Self Contained Cloudstack runs in to the appliance DevCloudas Host Run the Cloudstack on local machine & use the dev-cloud as host Footer – Apply across document
Simulator • Another way to setup the cloudstackenvironment • An effective tool that mocks the entire set of hypervisor (agent) commands • Use cases • Testing the performance metric of the CloudStack management server • For validating the nightly build check-in • UI bug fix, it could be the ideal approach Footer – Apply across document
Simulator – setup Footer – Apply across document • Checkout the cloudstack code from git repo • set upCloudstack development environment • If you already have cloudstack, build the cloudstack using the below commands # mvn -Pdeveloper -Dsimulator clean install# mvn -Pdeveloper -pl developer -Ddeploydb# mvn -Pdeveloper -pl developer -Ddeploydb-simulator • start the cloudstackMS #mvn -pl client jetty:run -Dsimulator • Set up zone using the simulator. #mvn -Pdeveloper,marvin.setup -Dmarvin.config=setup/dev/advanced.cfg -pl :cloud-marvin integration-test
What am I doing recently on Cloudstack? Footer – Apply across document • Validating the CS first class object hiding capability This feature enable ROOT admin user to hide the resources from the normal user • Design details– • Resource specific tables has been updated with extra column – Display flag • Default value - True • Update/create commands can update this flag to ‘False” • List command executed by normal user can’t list the marked resources • Call the API commands – • Cloudstack monkey • Python/Ruby client • UI
Demo/Process walkthrough with example Footer – Apply across document