<!DOCTYPE html>
<html>  
  <head>
    <title>Apache CloudStack: Open Source Cloud Computing</title>

    <meta name="description" content="CloudStack is open source cloud computing software for creating, managing, and deploying infrastructure cloud services">

    <meta itemprop="name" content="Apache Cloudstack">
    <meta itemprop="description" content="CloudStack is open source cloud computing software for creating, managing, and deploying infrastructure cloud services">
    <meta itemprop="image" content="https://cloudstack.apache.org/images/monkey-144.png">

    <meta property="og:title" content="Apache Cloudstack">
    <meta property="og:description" content="CloudStack is open source cloud computing software for creating, managing, and deploying infrastructure cloud services">
    <meta property="og:site_name" content="Apache Cloudstack"/>
    <meta property="og:image" content="https://cloudstack.apache.org/images/monkey-144.png">

    <meta name="twitter:card" content="summary">
    <meta name="twitter:title" content="Apache Cloudstack">
    <meta name="twitter:description" content="CloudStack is open source cloud computing software for creating, managing, and deploying infrastructure cloud services">
    <meta name="twitter:image:src" content="https://cloudstack.apache.org/images/monkey-144.png">

    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=1">

    <link href="stylesheets/bootstrap.css" rel="stylesheet" media="screen">
    <link href="stylesheets/font-awesome.css" rel="stylesheet">
    <link href="stylesheets/bootswatch.min.css" rel="stylesheet">
    <link href="stylesheets/custom.css" rel="stylesheet">

    <link rel="shortcut icon" href="images/favicon.ico">
    <link rel="icon" href="images/favicon.ico">
    
<!--    {% if headers.notice %}{{ headers.notice }}{% endif %} -->
        <!-- Twitter Bootstrap and jQuery after this line. -->
        <script src="https://code.jquery.com/jquery-latest.js"></script>
        <script src="https://netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
        <script>
            $('.dropdown-toggle').dropdown();
            $('.nav-collapse').collapse();
        </script>
  </head>
  <body>
    <div class="navbar navbar-default navbar-fixed-top">
        <div class="container">
            <div class="navbar-header">
                <a href="index.html" class="navbar-brand"><img class="" src="images/new-logo-sm.png" style="width: 200px" alt="Apache Cloudstack"></a>
                <button class="navbar-toggle collapsed" type="button" data-toggle="collapse" data-target="#navbar-main">
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>
            </div>
            <div class="navbar-collapse collapse" id="navbar-main">
                <ul class="nav navbar-nav">
            <li class="dropdown">
              <a class="dropdown-toggle" data-toggle="dropdown" href="#" id="about">About <span class="caret"></span></a>
              <ul class="dropdown-menu" aria-labelledby="about">
                <li><a tabindex="-1" href="about.html">About</a></li>
                <li class="divider"></li>
                <li><a tabindex="-1" href="https://blogs.apache.org/cloudstack/" target="_blank">Blog<span class="glyphicon glyphicon-share-alt pull-right"></span></a></li>
                <li><a tabindex="-1" href="history.html">History</a></li>
                <li><a tabindex="-1" href="features.html">Features</a></li>
                <li><a tabindex="-1" href="cloudstack-faq.html">FAQ</a></li>
                <li><a tabindex="-1" href="who.html">Who We Are</a></li>
                <li><a tabindex="-1" href="security.html">Security</a></li>
              </ul>
            </li>
            <li class="dropdown">
              <a class="dropdown-toggle" data-toggle="dropdown" href="#" id="community">Community <span class="caret"></span></a>
              <ul class="dropdown-menu" aria-labelledby="community">
                <li><a tabindex="-1" href="contribute.html">Get Involved</a></li>
                <li><a tabindex="-1" href="developers.html">Developers</a></li>
                <li><a tabindex="-1" href="mailing-lists.html">Mailing Lists</a></li>
                <li><a tabindex="-1" href="http://cloudstackcollab.org/" target="_blank">Events &amp; Meetups <span class="glyphicon glyphicon-share-alt pull-right"></span></a></li>
              </ul>
            </li>
            <li class="dropdown">
              <a class="dropdown-toggle" data-toggle="dropdown" href="#" id="users">Users <span class="caret"></span></a>
              <ul class="dropdown-menu" aria-labelledby="users">
                <li><a tabindex="-1" href="users.html">Known Users</a></li>
                <li><a tabindex="-1" href="https://cwiki.apache.org/confluence/display/CLOUDSTACK/Case+Studies" target="_blank">Case Studies <span class="glyphicon glyphicon-share-alt pull-right"></span></a></li>
                <li><a tabindex="-1" href="survey.html">Take Survey</a></li>
              </ul>
            </li>
            <li class="dropdown">
              <a class="dropdown-toggle" data-toggle="dropdown" href="#" id="docs">Documentation <span class="caret"></span></a>
              <ul class="dropdown-menu" aria-labelledby="docs">
                <li><a tabindex="-1" href="http://docs.cloudstack.apache.org" target="_blank">CloudStack Documentation</span></a></li>
                <li><a tabindex="-1" href="https://cwiki.apache.org/confluence/display/CLOUDSTACK/Home" target="_blank">Wiki</a></li>
                <li><a tabindex="-1" href="https://cwiki.apache.org/confluence/display/CLOUDSTACK/CloudStack+Books" target="_blank">Books</a></li>
                <li><a tabindex="-1" href="api.html">API Documentation</a></li>
                <li class="divider"></li>
                <li><a tabindex="-1">Archived Documentation</a></li>
                <li><a tabindex="-1" href="http://docs.cloudstack.apache.org/projects/archived-cloudstack-getting-started" target="_blank">&nbsp;&nbsp;&nbsp;Getting Started Docs</span></a></li>
                <li><a tabindex="-1" href="http://docs.cloudstack.apache.org/projects/archived-cloudstack-installation" target="_blank">&nbsp;&nbsp;&nbsp;Installation Docs</a></li> 
                <li><a tabindex="-1" href="http://docs.cloudstack.apache.org/projects/archived-cloudstack-administration" target="_blank">&nbsp;&nbsp;&nbsp;Administration Docs</a></li>
                <li><a tabindex="-1" href="http://docs.cloudstack.apache.org/projects/archived-cloudstack-release-notes" target="_blank">&nbsp;&nbsp;&nbsp;Release Notes</a></li>
              </ul>
            </li>
            <li class="dropdown">
              <a class="dropdown-toggle" data-toggle="dropdown" href="#" id="download">Download <span class="caret"></span></a>
              <ul class="dropdown-menu" aria-labelledby="download">
                <li><a tabindex="-1" href="downloads.html">CloudStack Releases</a></li>
                <li><a tabindex="-1" href="downloads.html#cloudmonkey">CloudMonkey</a></li>
                <li><a tabindex="-1" href="archives.html">Release Archive</a></li>
              </ul>
            </li>
			<li class="dropdown">
              <a class="dropdown-toggle" data-toggle="dropdown" href="#" id="apache">Apache <span class="caret"></span></a>
              <ul class="dropdown-menu" aria-labelledby="apache">
				<li><a tabindex="-1" href="http://apache.org">Apache Software Foundation</a></li>
                <li><a tabindex="-1" href="http://www.apache.org/licenses/">License</a></li>
                <li><a tabindex="-1" href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
                <li><a tabindex="-1" href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
              </ul>
            </li>
          </ul>
            </div>
        </div>
    </div>
    <div class="container">
        <div class="bs-docs-section">
            <div class="row">

<div class="col-lg-12">

<div class="page-header">

<h1 id="indicators">Apache CloudStack: Project Bylaws</h1>

</div>

</div>

</div>

<h1 id="introduction">1. Introduction</h1>

<p>1.1. This document defines the bylaws under which the Apache CloudStack project
operates. It defines the roles and responsibilities of the project, who may
vote, how voting works, how conflicts are resolved and specifies the rules for
specific project actions.</p>

<p>1.2. CloudStack is a project of the Apache Software Foundation. The foundation
holds the trademark on the name "CloudStack" and copyright on Apache code
including the code in the CloudStack codebase. The foundation FAQ explains the
operation and background of the foundation.</p>

<p>1.3. CloudStack operates under a set of principles known collectively as the
"Apache Way". Those principles are: Transparency, consensus, non-affiliation,
respect for fellow developers, and meritocracy, in no specific order.</p>

<h1 id="roles-and-responsibilities">2. Roles and Responsibilities</h1>

<p>Apache projects define a set of roles with associated rights and
responsibilities. These roles govern what tasks an individual may perform
within the project. The roles are defined in the following sections:</p>

<p>2.1. Users</p>

<p>The most important participants in the project are people who use our software.
Users can contribute to the Apache projects by providing feedback to developers
in the form of bug reports and feature suggestions. As well, users can
participate in the Apache community by helping other users on mailing lists and
user support forums. Users who participate in the project through any mechanism
are considered to be Contributors.</p>

<p>2.2. Contributors</p>

<p>Contributors are all of the volunteers who are contributing time, code,
documentation, or resources to the CloudStack Project. Contributions are not
just code, but can be any combination of documentation, testing, user support,
code, code reviews, bug reporting, community organizing, project marketing, or
numerous other activities that help promote and improve the Apache CloudStack
project and community.</p>

<p>A Contributor that makes sustained, welcome contributions to the project may be
invited to become a Committer by the PMC. The invitation will be at the
discretion of a supporting PMC member.</p>

<p>2.3. Committers</p>

<p>The project's Committers are responsible for the project's technical
management. Committers have access to all project source control repositories.
Committers may cast binding votes on any technical discussion regarding the
project (or any sub-project).</p>

<p>2.3.1. Committer access is by invitation only and must be approved by a lazy
consensus of the active PMC members.</p>

<p>2.3.2. All Apache Committers are required to have a signed Individual
Contributor License Agreement (ICLA) on file with the Apache Software
Foundation. There is a Committer FAQ which provides more details on the
requirements for Committers at Apache.</p>

<p>2.3.3. A Committer who makes a sustained contribution to the project may be
invited by the PMC to become a member of the PMC, after approval of the PMC.</p>

<p>2.4. Project Management Committee</p>

<p>The Project Management Committee (PMC) for Apache CloudStack is responsible to
the board and the ASF for the management and oversight of the Apache CloudStack
codebase.</p>

<p>2.4.1. The responsibilities of the PMC include:</p>

<p>2.4.1.1. Fostering, supporting and growing the project's community.</p>

<p>2.4.1.2. Deciding what is distributed as products of the Apache CloudStack
project. In particular all releases must be approved by the PMC.</p>

<p>2.4.1.3. Maintaining the project's shared resources, including the codebase
repository, mailing lists, websites.</p>

<p>2.4.1.4. Speaking on behalf of the project.</p>

<p>2.4.1.5. Resolving license disputes regarding products of the project.</p>

<p>2.4.1.6. Nominating new PMC members and committers.</p>

<p>2.4.1.7. Maintaining these bylaws and other guidelines of the project.</p>

<p>2.4.1.8. Managing and protecting the project's trademarks and brand.</p>

<p>2.4.2. Membership of the PMC is by invitation only and must be approved by a
lazy consensus of active PMC members.</p>

<p>2.4.3. A PMC member is considered "emeritus" by their own declaration. An
emeritus member may request reinstatement to the PMC. Such reinstatement is
subject to lazy consensus of the active PMC members.</p>

<p>2.4.4. "Active PMC members" are all non-emeritus PMC members.</p>

<p>2.4.4. The chair of the PMC is appointed by the ASF board. The chair is an
office holder of the Apache Software Foundation (Vice President, Apache
CloudStack) and has primary responsibility to the board for the management of
the projects within the scope of the CloudStack PMC. The chair reports to the
board quarterly on developments within the CloudStack project. The chair must
be an active PMC member.</p>

<p>2.4.5. If the current chair of the PMC resigns, or the term of the current
chair expires, the PMC will attempt to reach consensus on a new chair through
discussion, confirming that consensus via a vote to recommend a new chair using
a lazy 2/3 majority voting method. In the case that consensus is not achieved,
the PMC will vote for a chair using Single Transferable Vote (STV) voting. Due
to the fact that the discussions are about specific individuals, this vote
would be held on the cloudstack-private mailing list. The decision must be
ratified by the Apache board.</p>

<p>2.4.6. The role of PMC chair will have a one year term.  The intention of this
term is to allow for a rotation of the role amongst the PMC members.  This
intention does not prohibit the PMC from selecting the same chair to serve
consecutive terms.</p>

<h1 id="decision-making">3. Decision Making</h1>

<p>This section defines how voting is performed, the types of approvals, and which
types of decision require which type of approval.</p>

<p>3.1. Voting</p>

<p>3.1.1. Decisions regarding the project are made by votes on the primary project
development mailing list (dev@cloudstack.apache.org). Where necessary, PMC
voting may take place on the private CloudStack PMC mailing list. Votes are
clearly indicated by subject line starting with [VOTE]. Votes may contain
multiple items for approval and these should be clearly separated. Voting is
carried out by replying to the vote mail.</p>

<p>3.1.2. Voting may take four flavors:</p>

<p>3.1.2.1. +1 "Yes," "Agree," or "the action should be performed." In general,
this vote also indicates a willingness on the behalf of the voter in "making it
happen"</p>

<p>3.1.2.2. +0 This vote indicates a willingness for the action under
consideration to go ahead. The voter, however will not be able to help.</p>

<p>3.1.2.3. -0 This vote indicates that the voter does not, in general, agree
with the proposed action but is not concerned enough to prevent the action
going ahead.</p>

<p>3.1.2.4. -1 This is a negative vote. On issues where consensus is required,
this vote counts as a veto if binding. All vetoes must contain an explanation
of why the veto is appropriate. Vetoes with no explanation are void. It may
also be appropriate for a -1 vote to include an alternative course of action.</p>

<p>3.1.3. All participants in the CloudStack project are encouraged to show their
agreement with or against a particular action by voting. For technical
decisions, only the votes of active committers are binding. Non-binding votes
are still useful for those with binding votes to understand the perception of
an action in the wider CloudStack community. For PMC decisions, only the votes
of PMC members are binding.</p>

<p>3.1.4. Voting can also be applied to changes made to the CloudStack codebase.
These typically take the form of a veto (-1) in reply to the commit message
sent when the commit is made.</p>

<p>3.1.5. Non-binding -1 votes are not considered to be vetos for any decision.</p>

<p>3.2. Approvals</p>

<p>There are three types of approvals that can be sought. Section 3.4 describes
actions and types of approvals needed for each action.</p>

<p>3.2.1. Lazy Consensus - Lazy consensus requires 3 binding +1 votes and no
binding -1 votes.</p>

<p>3.2.2. Lazy Majority - A lazy majority vote requires 3 binding +1 votes and
more binding +1 votes than binding -1 votes.</p>

<p>3.2.3. Lazy 2/3 Majority - Lazy 2/3 majority votes requires at least 3 binding
votes and twice as many binding +1 votes as binding -1 votes.</p>

<p>3.3. Vetoes</p>

<p>3.3.1. Vetoes are only possible in a lazy consensus vote.</p>

<p>3.3.2. A valid, binding veto cannot be overruled. If a veto is cast, it must be
accompanied by a valid reason explaining the reasons for the veto. The validity
of a veto, if challenged, can be confirmed by anyone who has a binding vote.
This does not necessarily signify agreement with the veto - merely that the
veto is valid.</p>

<p>3.3.3. If you disagree with a valid veto, you must lobby the person casting the
veto to withdraw their veto. If a veto is not withdrawn, any action that has
been vetoed must be reversed in a timely manner.</p>

<p>3.4. Actions</p>

<p>This section describes the various actions which are undertaken within the
project, the roles that have the right to start a vote on the action, the
corresponding approval required for that action and those who have binding
votes over the action.</p>

<p>3.4.1. Technical Decisions</p>

<p>A technical decision is any decision that involves changes to the source code
that we distribute in our official releases.</p>

<p>Technical decisions should normally be made by the entire community using
discussion-lead consensus gathering, and not through formal voting.</p>

<p>Technical decisions must be made on the project development mailing list.</p>

<p>During the consensus gathering process, technical decisions may be vetoed by
any Committer with a valid reason.</p>

<p>If a formal vote is started for a technical decision, the vote will be held as
a lazy consensus of active committers.</p>

<p>Any user, contributor, committer, or PMC member can initiate a technical
decision making process.</p>

<p>3.4.2. Non-Technical Decisions</p>

<p>A non-technical decisions is any decision that does not involve changes to the
source code that we distribute in our official releases (excluding questions of 
trademark usage).</p>

<p>Non-technical decisions should normally be made by the entire community using
discussion-lead consensus-building, and not through formal voting.</p>

<p>Non-technical decisions can be made on whichever project mailing list is most
appropriate.</p>

<p>Non-technical decisions cannot be vetoed, but if there is strong opposition
a formal vote can be used to resolve the dispute.</p>

<p>If a formal vote is started for a non-technical decision, the vote will be held
as a lazy 2/3 majority of active committers.</p>

<p>Any user, contributor, committer, or PMC member can initiate a non-technical
decision making process.</p>

<p>3.4.3. Release Plan</p>

<p>Defines the timetable and work items for a release. The plan also nominates a
Release Manager.</p>

<p>A lazy majority of active committers is required for approval.</p>

<p>Any active committer or PMC member may call a vote. The vote must occur on the
project development mailing list.</p>

<p>3.4.4. Product Release</p>

<p>When a release of one of the project's products is ready, a vote is required to
accept the release as an official release of the project.</p>

<p>Lazy Majority of active PMC members is required for approval.</p>

<p>Any active committer or PMC member may call a vote. The vote must occur on the
project development mailing list.</p>

<p>3.4.5. Adoption of New Codebase</p>

<p>When the codebase for an existing, released product is to be replaced with an
alternative codebase. If such a vote fails to gain approval, the existing code
base will continue.</p>

<p>This also covers the creation of new sub-projects within the project.</p>

<p>Lazy 2/3 majority of active PMC members.</p>

<p>Any active committer or PMC member may call a vote. The vote must occur on the
project development mailing list.</p>

<p>3.4.6. New Committer</p>

<p>When a new committer is proposed for the project.</p>

<p>Lazy consensus of active PMC members.</p>

<p>Any active PMC member may call a vote. The vote must occur on the PMC private
mailing list.</p>

<p>3.4.7. New PMC Member</p>

<p>When a committer is proposed for the PMC.</p>

<p>Lazy consensus of active PMC members.</p>

<p>Any active PMC member may call a vote. The vote must occur on the PMC private
mailing list.</p>

<p>3.4.8. Committer Removal</p>

<p>When removal of commit privileges is sought. Note: Such actions will also be
referred to the ASF board by the PMC chair</p>

<p>Lazy 2/3 majority of active PMC members (excluding the committer in question if
a member of the PMC).</p>

<p>Any active PMC member may call a vote. The vote must occur on the PMC private
mailing list.</p>

<p>3.4.9. PMC Member Removal</p>

<p>When removal of a PMC member is sought. Note: Such actions will also be
referred to the ASF board by the PMC chair.</p>

<p>Lazy 2/3 majority of active PMC members (excluding the member in question)</p>

<p>Any active PMC member may call a vote. The vote must occur on the PMC private
mailing list.</p>

<p>3.4.10. Modifying Bylaws</p>

<p>Modifying this document.</p>

<p>Lazy majority of active PMC members</p>

<p>Any active committer or PMC member may call a vote. The vote must occur on the
project development mailing list.</p>

<p>3.4.11. Trademark Usage Approvals</p>

<p>Our project maintains a formal Trademark Usage Guidelines document, which
serves as a additive reference to the Apache Software Foundation's trademark
policies. The Apache CloudStack PMC has had approval authority delegated to it
for requests from third parties to use our trademarks. It is the PMC's
responsibility to provide these approvals, and to ensure that any requests
are in compliance with both the project and the foundation's trademark
usage policies.</p>

<p>The CloudStack Trademark Guidelines specify how a requestor is expected to
request permission for usage of the trademarks.</p>

<p>The process of approval will typically be as follows:</p>

<ul>
  <li>A request is made that includes the required information for the PMC to make 
a decision.</li>
  <li>A PMC member reviews the request and provides an initial acknowledgement 
response to the requester.</li>
  <li>If no PMC member raises a concern after 72 hours, the requester can assume 
approval.</li>
</ul>

<p>In situations where a concern is raised, the PMC member is expected inform the
requster that there is some discussion that needs to be had prior to approval
from the PMC.  This notice serves to end the assumed approval after 72 hours.</p>

<p>After raising a concern, the PMC member in question is required to forward the
concern to private@cloudstack.apache.org, explaining the issue that they have
with the request.  The use of private@cloudstack.apache.org for discussing the
request is to allow the PMC to deliberate without confusing the requester, and
to ensure that a formal approval or denial is clear at the end of the
discusion.</p>

<p>The PMC will then attempt to achieve consensus on how the request for approval
will be answered.  The requester may be asked for more information to help the
PMC make a decision, may be asked to make a change to the proposal in order to
gain approval, or may have their request be denied.</p>

<p>If consensus is not achieved within the PMC by discussion, then a formal VOTE
can be called as a Lazy 2/3 majority of voting PMC members.</p>

<p>Votes related to trademark usage approvals may be performed on the
private@cloudstack.apache.org mailing list.</p>

<p>3.5. Voting Timeframes</p>

<p>Formal votes are open for a period of at least 72 hours to allow all active
voters time to consider the vote.</p>


            <footer>
                <p>Copyright © 2017 The Apache Software Foundation, Licensed under the Apache License, Version 2.0. <br/>
                "Apache", "CloudStack", "Apache CloudStack", the Apache CloudStack logo, the Apache CloudStack Cloud Monkey logo and the Apache feather logos are registered trademarks or trademarks of The Apache Software Foundation.</p>
                <p><a href="/trademark-guidelines.html">Apache CloudStack Trademark Usage</a> - <a href="/bylaws.html">Apache CloudStack Community ByLaws</a></p>
            </footer>

        </div>
    </div>
</div>
  </body>
</html>
