blob: 3a0571f5a6f47f3ecfb95a7dc137433944c1b8fb [file] [log] [blame]
---
site_name: Deltacloud API
title: How Can I Contribute?
---
<br/>
<h2 id="contribute">Contribute to Deltacloud</h2>
Deltacloud project is a free open source software licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache Software Foundation</a> license. The developers community is open to anyone who wants to contribute. Contributors are required to sign an individual contributor <a href="http://www.apache.org/licenses/icla.txt">license agreement</a>. Do not hesitate to <a href="/contact.html">contact us</a> if you have any questions about contributing to the Deltacloud project.
<h3>How can I contribute?</h3>
<ul class="nav nav-list">
<li class="nav-header"></li>
<li>
<a href="/send-patch.html">Send a patch</a>
</li>
<li>
<a href="/write-new-driver.html">Write a provider driver</a>
</li>
<li>
<a href="#bug">Report a bug</a>
</li>
<li>
<a href="#idea">Propose an idea</a>
</li>
<li>
<a href="#documentation">Write a documentation</a>
</li>
</ul>
<br/>
<h3>Overview of the Deltacloud directory structure</h3>
<p>The following list contains paths to the most interesting files and directories for developers. It is intended as an aid to orientation in the project files for developers - for example to quickly identify where the Deltacloud cloud provider drivers are stored:</p>
<div class="row">
<div class="span1"></div>
<div class="span10 offset1">
<pre>
deltacloud
|-----------------------------------------------------------------------------------
|-d-->tests Contains Cucumber tests
|-----------------------------------------------------------------------------------
|-d-->site Files for this website
|-----------------------------------------------------------------------------------
|-d-->client Contains the Deltacloud ruby client
|-----------------------------------------------------------------------------------
|-d-->clients Contains other Deltacloud clients (e.g. java)
|-----------------------------------------------------------------------------------
|-d--> server
|----------------------------------------------------------------------------
|-d-->bin Contains the Deltacloud executable deltacloudd
|----------------------------------------------------------------------------
|-d-->views Contains haml views for each collection
|----------------------------------------------------------------------------
|-d-->tests Contains unit tests for drivers
|----------------------------------------------------------------------------
|-d-->lib
|----------------------------------------------------------------------
|-d-->sinatra Contains rabbit DSL and various helpers
|----------------------------------------------------------------------
|-d-->deltacloud
|----------------------------------------------------------------
|-d-->models Definition of each collection model
|----------------------------------------------------------------
|-d-->drivers Contains the drivers for each cloud provider
|----------------------------------------------------------------
|-d-->helpers Various helper methods used by the drivers
|----------------------------------------------------------------
|-d-->base_driver Contains the Deltacloud base driver
|----------------------------------------------------------------
|-f-->server.rb Contains the sinatra routes
|----------------------------------------------------------------
</pre>
</div>
</div>
<br/>
<h3 id="bug">Reporting a bug</h3>
We track bugs in <a href="https://issues.apache.org/jira/browse/DTACLOUD">Apache JIRA</a>. If you find a problem with Deltacloud, check if it is already known to the Deltacloud developers or <a href="https://issues.apache.org/jira/secure/CreateIssue!default.jspa">report it</a>.
<h3 id="idea">Propose an idea</h3>
<p>
Our <a href="http://teambox.com/projects/deltacloud">Teambox</a> page is a place where we keep the latest task lists and where you can add comments or suggest new features for the project.
</p>
<h3 id="documentation">Writing a documentation</h3>