202
									
								
								LICENSE
									
									
									
									
									
								
							
							
						
						
									
										202
									
								
								LICENSE
									
									
									
									
									
								
							@@ -1,201 +1,3 @@
 | 
			
		||||
Apache License
 | 
			
		||||
                           Version 2.0, January 2004
 | 
			
		||||
                        http://www.apache.org/licenses/
 | 
			
		||||
This work is licensed under a Creative Commons Attribution 3.0 Unported License.
 | 
			
		||||
 | 
			
		||||
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
 | 
			
		||||
 | 
			
		||||
   1. Definitions.
 | 
			
		||||
 | 
			
		||||
      "License" shall mean the terms and conditions for use, reproduction,
 | 
			
		||||
      and distribution as defined by Sections 1 through 9 of this document.
 | 
			
		||||
 | 
			
		||||
      "Licensor" shall mean the copyright owner or entity authorized by
 | 
			
		||||
      the copyright owner that is granting the License.
 | 
			
		||||
 | 
			
		||||
      "Legal Entity" shall mean the union of the acting entity and all
 | 
			
		||||
      other entities that control, are controlled by, or are under common
 | 
			
		||||
      control with that entity. For the purposes of this definition,
 | 
			
		||||
      "control" means (i) the power, direct or indirect, to cause the
 | 
			
		||||
      direction or management of such entity, whether by contract or
 | 
			
		||||
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
 | 
			
		||||
      outstanding shares, or (iii) beneficial ownership of such entity.
 | 
			
		||||
 | 
			
		||||
      "You" (or "Your") shall mean an individual or Legal Entity
 | 
			
		||||
      exercising permissions granted by this License.
 | 
			
		||||
 | 
			
		||||
      "Source" form shall mean the preferred form for making modifications,
 | 
			
		||||
      including but not limited to software source code, documentation
 | 
			
		||||
      source, and configuration files.
 | 
			
		||||
 | 
			
		||||
      "Object" form shall mean any form resulting from mechanical
 | 
			
		||||
      transformation or translation of a Source form, including but
 | 
			
		||||
      not limited to compiled object code, generated documentation,
 | 
			
		||||
      and conversions to other media types.
 | 
			
		||||
 | 
			
		||||
      "Work" shall mean the work of authorship, whether in Source or
 | 
			
		||||
      Object form, made available under the License, as indicated by a
 | 
			
		||||
      copyright notice that is included in or attached to the work
 | 
			
		||||
      (an example is provided in the Appendix below).
 | 
			
		||||
 | 
			
		||||
      "Derivative Works" shall mean any work, whether in Source or Object
 | 
			
		||||
      form, that is based on (or derived from) the Work and for which the
 | 
			
		||||
      editorial revisions, annotations, elaborations, or other modifications
 | 
			
		||||
      represent, as a whole, an original work of authorship. For the purposes
 | 
			
		||||
      of this License, Derivative Works shall not include works that remain
 | 
			
		||||
      separable from, or merely link (or bind by name) to the interfaces of,
 | 
			
		||||
      the Work and Derivative Works thereof.
 | 
			
		||||
 | 
			
		||||
      "Contribution" shall mean any work of authorship, including
 | 
			
		||||
      the original version of the Work and any modifications or additions
 | 
			
		||||
      to that Work or Derivative Works thereof, that is intentionally
 | 
			
		||||
      submitted to Licensor for inclusion in the Work by the copyright owner
 | 
			
		||||
      or by an individual or Legal Entity authorized to submit on behalf of
 | 
			
		||||
      the copyright owner. For the purposes of this definition, "submitted"
 | 
			
		||||
      means any form of electronic, verbal, or written communication sent
 | 
			
		||||
      to the Licensor or its representatives, including but not limited to
 | 
			
		||||
      communication on electronic mailing lists, source code control systems,
 | 
			
		||||
      and issue tracking systems that are managed by, or on behalf of, the
 | 
			
		||||
      Licensor for the purpose of discussing and improving the Work, but
 | 
			
		||||
      excluding communication that is conspicuously marked or otherwise
 | 
			
		||||
      designated in writing by the copyright owner as "Not a Contribution."
 | 
			
		||||
 | 
			
		||||
      "Contributor" shall mean Licensor and any individual or Legal Entity
 | 
			
		||||
      on behalf of whom a Contribution has been received by Licensor and
 | 
			
		||||
      subsequently incorporated within the Work.
 | 
			
		||||
 | 
			
		||||
   2. Grant of Copyright License. Subject to the terms and conditions of
 | 
			
		||||
      this License, each Contributor hereby grants to You a perpetual,
 | 
			
		||||
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
 | 
			
		||||
      copyright license to reproduce, prepare Derivative Works of,
 | 
			
		||||
      publicly display, publicly perform, sublicense, and distribute the
 | 
			
		||||
      Work and such Derivative Works in Source or Object form.
 | 
			
		||||
 | 
			
		||||
   3. Grant of Patent License. Subject to the terms and conditions of
 | 
			
		||||
      this License, each Contributor hereby grants to You a perpetual,
 | 
			
		||||
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
 | 
			
		||||
      (except as stated in this section) patent license to make, have made,
 | 
			
		||||
      use, offer to sell, sell, import, and otherwise transfer the Work,
 | 
			
		||||
      where such license applies only to those patent claims licensable
 | 
			
		||||
      by such Contributor that are necessarily infringed by their
 | 
			
		||||
      Contribution(s) alone or by combination of their Contribution(s)
 | 
			
		||||
      with the Work to which such Contribution(s) was submitted. If You
 | 
			
		||||
      institute patent litigation against any entity (including a
 | 
			
		||||
      cross-claim or counterclaim in a lawsuit) alleging that the Work
 | 
			
		||||
      or a Contribution incorporated within the Work constitutes direct
 | 
			
		||||
      or contributory patent infringement, then any patent licenses
 | 
			
		||||
      granted to You under this License for that Work shall terminate
 | 
			
		||||
      as of the date such litigation is filed.
 | 
			
		||||
 | 
			
		||||
   4. Redistribution. You may reproduce and distribute copies of the
 | 
			
		||||
      Work or Derivative Works thereof in any medium, with or without
 | 
			
		||||
      modifications, and in Source or Object form, provided that You
 | 
			
		||||
      meet the following conditions:
 | 
			
		||||
 | 
			
		||||
      (a) You must give any other recipients of the Work or
 | 
			
		||||
          Derivative Works a copy of this License; and
 | 
			
		||||
 | 
			
		||||
      (b) You must cause any modified files to carry prominent notices
 | 
			
		||||
          stating that You changed the files; and
 | 
			
		||||
 | 
			
		||||
      (c) You must retain, in the Source form of any Derivative Works
 | 
			
		||||
          that You distribute, all copyright, patent, trademark, and
 | 
			
		||||
          attribution notices from the Source form of the Work,
 | 
			
		||||
          excluding those notices that do not pertain to any part of
 | 
			
		||||
          the Derivative Works; and
 | 
			
		||||
 | 
			
		||||
      (d) If the Work includes a "NOTICE" text file as part of its
 | 
			
		||||
          distribution, then any Derivative Works that You distribute must
 | 
			
		||||
          include a readable copy of the attribution notices contained
 | 
			
		||||
          within such NOTICE file, excluding those notices that do not
 | 
			
		||||
          pertain to any part of the Derivative Works, in at least one
 | 
			
		||||
          of the following places: within a NOTICE text file distributed
 | 
			
		||||
          as part of the Derivative Works; within the Source form or
 | 
			
		||||
          documentation, if provided along with the Derivative Works; or,
 | 
			
		||||
          within a display generated by the Derivative Works, if and
 | 
			
		||||
          wherever such third-party notices normally appear. The contents
 | 
			
		||||
          of the NOTICE file are for informational purposes only and
 | 
			
		||||
          do not modify the License. You may add Your own attribution
 | 
			
		||||
          notices within Derivative Works that You distribute, alongside
 | 
			
		||||
          or as an addendum to the NOTICE text from the Work, provided
 | 
			
		||||
          that such additional attribution notices cannot be construed
 | 
			
		||||
          as modifying the License.
 | 
			
		||||
 | 
			
		||||
      You may add Your own copyright statement to Your modifications and
 | 
			
		||||
      may provide additional or different license terms and conditions
 | 
			
		||||
      for use, reproduction, or distribution of Your modifications, or
 | 
			
		||||
      for any such Derivative Works as a whole, provided Your use,
 | 
			
		||||
      reproduction, and distribution of the Work otherwise complies with
 | 
			
		||||
      the conditions stated in this License.
 | 
			
		||||
 | 
			
		||||
   5. Submission of Contributions. Unless You explicitly state otherwise,
 | 
			
		||||
      any Contribution intentionally submitted for inclusion in the Work
 | 
			
		||||
      by You to the Licensor shall be under the terms and conditions of
 | 
			
		||||
      this License, without any additional terms or conditions.
 | 
			
		||||
      Notwithstanding the above, nothing herein shall supersede or modify
 | 
			
		||||
      the terms of any separate license agreement you may have executed
 | 
			
		||||
      with Licensor regarding such Contributions.
 | 
			
		||||
 | 
			
		||||
   6. Trademarks. This License does not grant permission to use the trade
 | 
			
		||||
      names, trademarks, service marks, or product names of the Licensor,
 | 
			
		||||
      except as required for reasonable and customary use in describing the
 | 
			
		||||
      origin of the Work and reproducing the content of the NOTICE file.
 | 
			
		||||
 | 
			
		||||
   7. Disclaimer of Warranty. Unless required by applicable law or
 | 
			
		||||
      agreed to in writing, Licensor provides the Work (and each
 | 
			
		||||
      Contributor provides its Contributions) on an "AS IS" BASIS,
 | 
			
		||||
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
 | 
			
		||||
      implied, including, without limitation, any warranties or conditions
 | 
			
		||||
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
 | 
			
		||||
      PARTICULAR PURPOSE. You are solely responsible for determining the
 | 
			
		||||
      appropriateness of using or redistributing the Work and assume any
 | 
			
		||||
      risks associated with Your exercise of permissions under this License.
 | 
			
		||||
 | 
			
		||||
   8. Limitation of Liability. In no event and under no legal theory,
 | 
			
		||||
      whether in tort (including negligence), contract, or otherwise,
 | 
			
		||||
      unless required by applicable law (such as deliberate and grossly
 | 
			
		||||
      negligent acts) or agreed to in writing, shall any Contributor be
 | 
			
		||||
      liable to You for damages, including any direct, indirect, special,
 | 
			
		||||
      incidental, or consequential damages of any character arising as a
 | 
			
		||||
      result of this License or out of the use or inability to use the
 | 
			
		||||
      Work (including but not limited to damages for loss of goodwill,
 | 
			
		||||
      work stoppage, computer failure or malfunction, or any and all
 | 
			
		||||
      other commercial damages or losses), even if such Contributor
 | 
			
		||||
      has been advised of the possibility of such damages.
 | 
			
		||||
 | 
			
		||||
   9. Accepting Warranty or Additional Liability. While redistributing
 | 
			
		||||
      the Work or Derivative Works thereof, You may choose to offer,
 | 
			
		||||
      and charge a fee for, acceptance of support, warranty, indemnity,
 | 
			
		||||
      or other liability obligations and/or rights consistent with this
 | 
			
		||||
      License. However, in accepting such obligations, You may act only
 | 
			
		||||
      on Your own behalf and on Your sole responsibility, not on behalf
 | 
			
		||||
      of any other Contributor, and only if You agree to indemnify,
 | 
			
		||||
      defend, and hold each Contributor harmless for any liability
 | 
			
		||||
      incurred by, or claims asserted against, such Contributor by reason
 | 
			
		||||
      of your accepting any such warranty or additional liability.
 | 
			
		||||
 | 
			
		||||
   END OF TERMS AND CONDITIONS
 | 
			
		||||
 | 
			
		||||
   APPENDIX: How to apply the Apache License to your work.
 | 
			
		||||
 | 
			
		||||
      To apply the Apache License to your work, attach the following
 | 
			
		||||
      boilerplate notice, with the fields enclosed by brackets "{}"
 | 
			
		||||
      replaced with your own identifying information. (Don't include
 | 
			
		||||
      the brackets!)  The text should be enclosed in the appropriate
 | 
			
		||||
      comment syntax for the file format. We also recommend that a
 | 
			
		||||
      file or class name and description of purpose be included on the
 | 
			
		||||
      same "printed page" as the copyright notice for easier
 | 
			
		||||
      identification within third-party archives.
 | 
			
		||||
 | 
			
		||||
   Copyright {yyyy} {name of copyright owner}
 | 
			
		||||
 | 
			
		||||
   Licensed 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.
 | 
			
		||||
http://creativecommons.org/licenses/by/3.0/legalcode
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										35
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										35
									
								
								README.md
									
									
									
									
									
								
							@@ -1,4 +1,33 @@
 | 
			
		||||
puppet-openstack-specs
 | 
			
		||||
======================
 | 
			
		||||
Puppet Openstack Specifications
 | 
			
		||||
===============================
 | 
			
		||||
 | 
			
		||||
puppet-openstack design documents
 | 
			
		||||
This git repository is used to hold approved design specifications for additions
 | 
			
		||||
to the Puppet Openstack projects.  Reviews of the specs are done in gerrit, using
 | 
			
		||||
a similar workflow to how we review and merge changes to the code itself.
 | 
			
		||||
 | 
			
		||||
The layout of this repository is::
 | 
			
		||||
 | 
			
		||||
  specs/<release>/
 | 
			
		||||
 | 
			
		||||
You can find a template spec in `specs/template.rst`.
 | 
			
		||||
 | 
			
		||||
Specifications are proposed for a given release by adding them to the
 | 
			
		||||
`specs/<release>` directory and posting it for review.  The implementation
 | 
			
		||||
status of a blueprint for a given release can be found by looking at the
 | 
			
		||||
blueprint in launchpad.  Not all approved blueprints will get fully implemented.
 | 
			
		||||
 | 
			
		||||
Specifications have to be re-proposed for every release. The review may be
 | 
			
		||||
quick, but even if something was previously approved, it should be re-reviewed
 | 
			
		||||
to make sure it still makes sense as written.
 | 
			
		||||
 | 
			
		||||
Prior to the Juno development cycle, this repository was not used for spec
 | 
			
		||||
reviews. However, backporting proposals to Icehouse may be made here.
 | 
			
		||||
 | 
			
		||||
Please note, Launchpad blueprints are still used for tracking the
 | 
			
		||||
current status of blueprints. For more information, see::
 | 
			
		||||
 | 
			
		||||
  https://wiki.openstack.org/wiki/Blueprints
 | 
			
		||||
 | 
			
		||||
For more information about working with gerrit, see::
 | 
			
		||||
 | 
			
		||||
  https://wiki.openstack.org/wiki/Gerrit_Workflow
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										272
									
								
								specs/template.rst
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										272
									
								
								specs/template.rst
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,272 @@
 | 
			
		||||
..
 | 
			
		||||
 This work is licensed under a Creative Commons Attribution 3.0 Unported
 | 
			
		||||
 License.
 | 
			
		||||
 | 
			
		||||
 http://creativecommons.org/licenses/by/3.0/legalcode
 | 
			
		||||
 | 
			
		||||
==========================================
 | 
			
		||||
Example Spec - The title of your blueprint
 | 
			
		||||
==========================================
 | 
			
		||||
 | 
			
		||||
Include the URL of your launchpad blueprint:
 | 
			
		||||
 | 
			
		||||
https://blueprints.launchpad.net/puppet-[projectname]/+spec/example
 | 
			
		||||
 | 
			
		||||
Introduction paragraph -- why are we doing anything? A single paragraph of
 | 
			
		||||
prose that operators can understand.
 | 
			
		||||
 | 
			
		||||
Some notes about using this template:
 | 
			
		||||
 | 
			
		||||
* Your spec should be in ReSTructured text, like this template.
 | 
			
		||||
 | 
			
		||||
* Please wrap text at 79 columns.
 | 
			
		||||
 | 
			
		||||
* The filename in the git repository should match the launchpad URL, for
 | 
			
		||||
  example a URL of: https://blueprints.launchpad.net/nova/+spec/awesome-thing
 | 
			
		||||
  should be named awesome-thing.rst
 | 
			
		||||
 | 
			
		||||
* Please do not delete any of the sections in this template.  If you have
 | 
			
		||||
  nothing to say for a whole section, just write: None
 | 
			
		||||
 | 
			
		||||
* For help with syntax, see http://sphinx-doc.org/rest.html
 | 
			
		||||
 | 
			
		||||
* To test out your formatting, build the docs using tox, or see:
 | 
			
		||||
  http://rst.ninjs.org
 | 
			
		||||
 | 
			
		||||
* If you would like to provide a diagram with your spec, ascii diagrams are
 | 
			
		||||
  required.  http://asciiflow.com/ is a very nice tool to assist with making
 | 
			
		||||
  ascii diagrams.  The reason for this is that the tool used to review specs is
 | 
			
		||||
  based purely on plain text.  Plain text will allow review to proceed without
 | 
			
		||||
  having to look at additional files which can not be viewed in gerrit.  It
 | 
			
		||||
  will also allow inline feedback on the diagram itself.
 | 
			
		||||
 | 
			
		||||
Problem description
 | 
			
		||||
===================
 | 
			
		||||
 | 
			
		||||
A detailed description of the problem:
 | 
			
		||||
 | 
			
		||||
* For a new feature this might be use cases. Ensure you are clear about the
 | 
			
		||||
  actors in each use case: End User vs Deployer
 | 
			
		||||
 | 
			
		||||
* For a major reworking of something existing it would describe the
 | 
			
		||||
  problems in that feature that are being addressed.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Proposed change
 | 
			
		||||
===============
 | 
			
		||||
 | 
			
		||||
Here is where you cover the change you propose to make in detail. How do you
 | 
			
		||||
propose to solve this problem?
 | 
			
		||||
 | 
			
		||||
If this is one part of a larger effort make it clear where this piece ends. In
 | 
			
		||||
other words, what's the scope of this effort?
 | 
			
		||||
 | 
			
		||||
Alternatives
 | 
			
		||||
------------
 | 
			
		||||
 | 
			
		||||
What other ways could we do this thing? Why aren't we using those? This doesn't
 | 
			
		||||
have to be a full literature review, but it should demonstrate that thought has
 | 
			
		||||
been put into why the proposed solution is an appropriate one.
 | 
			
		||||
 | 
			
		||||
Data model impact
 | 
			
		||||
-----------------
 | 
			
		||||
 | 
			
		||||
Changes which require modifications to the data model often have a wider impact
 | 
			
		||||
on the system.  The community often has strong opinions on how the data model
 | 
			
		||||
should be evolved, from both a functional and performance perspective. It is
 | 
			
		||||
therefore important to capture and gain agreement as early as possible on any
 | 
			
		||||
proposed changes to the data model.
 | 
			
		||||
 | 
			
		||||
Questions which need to be addressed by this section include:
 | 
			
		||||
 | 
			
		||||
* What new data objects and/or database schema changes is this going to
 | 
			
		||||
  require?
 | 
			
		||||
 | 
			
		||||
* What database migrations will accompany this change.
 | 
			
		||||
 | 
			
		||||
* How will the initial set of new data objects be generated, for example if you
 | 
			
		||||
  need to take into account existing instances, or modify other existing data
 | 
			
		||||
  describe how that will work.
 | 
			
		||||
 | 
			
		||||
Module API impact
 | 
			
		||||
-----------------
 | 
			
		||||
 | 
			
		||||
Each API method which is either added or changed should have the following,
 | 
			
		||||
depending upon if it is a new class or an addition to an existing class.
 | 
			
		||||
 | 
			
		||||
* For new classes:
 | 
			
		||||
 | 
			
		||||
  * Specification for the class.
 | 
			
		||||
 | 
			
		||||
  * A description of what the class does suitable for use in
 | 
			
		||||
    user documentation.
 | 
			
		||||
 | 
			
		||||
  * Documentation of all parameters, including default values.
 | 
			
		||||
 | 
			
		||||
* For new parameters:
 | 
			
		||||
 | 
			
		||||
  * Documentation, including parameters.
 | 
			
		||||
 | 
			
		||||
  * Reason for addition (rather than using config classes).
 | 
			
		||||
 | 
			
		||||
* For deprecations:
 | 
			
		||||
 | 
			
		||||
  * Reason for deprecation.
 | 
			
		||||
 | 
			
		||||
  * Alternative to deprecated parameters.
 | 
			
		||||
 | 
			
		||||
  * Scheduled release for deprecated parameter removal.
 | 
			
		||||
 | 
			
		||||
* Example use case including typical API samples.
 | 
			
		||||
 | 
			
		||||
* Discuss any policy changes, and discuss what things a deployer needs to
 | 
			
		||||
  think about when defining their policy.
 | 
			
		||||
 | 
			
		||||
Note that the schema should be defined as restrictively as
 | 
			
		||||
possible. Parameters which are required should be marked as such and
 | 
			
		||||
only under exceptional circumstances should additional parameters
 | 
			
		||||
which are not defined in the schema be permitted .
 | 
			
		||||
 | 
			
		||||
End user impact
 | 
			
		||||
---------------------
 | 
			
		||||
 | 
			
		||||
Aside from the API, are there other ways a user will interact with this
 | 
			
		||||
feature?
 | 
			
		||||
 | 
			
		||||
* Does this change have an impact on python-novaclient? What does the user
 | 
			
		||||
  interface there look like?
 | 
			
		||||
 | 
			
		||||
Performance Impact
 | 
			
		||||
------------------
 | 
			
		||||
 | 
			
		||||
Describe any potential performance impact on the system, for example
 | 
			
		||||
how often will new code be called, and is there a major change to the calling
 | 
			
		||||
pattern of existing code.
 | 
			
		||||
 | 
			
		||||
Examples of things to consider here include:
 | 
			
		||||
 | 
			
		||||
* A periodic task might look like a small addition but if it calls conductor or
 | 
			
		||||
  another service the load is multiplied by the number of nodes in the system.
 | 
			
		||||
 | 
			
		||||
* Scheduler filters get called once per host for every instance being created,
 | 
			
		||||
  so any latency they introduce is linear with the size of the system.
 | 
			
		||||
 | 
			
		||||
* A small change in a utility function or a commonly used decorator can have a
 | 
			
		||||
  large impacts on performance.
 | 
			
		||||
 | 
			
		||||
* Calls which result in a database queries (whether direct or via conductor)
 | 
			
		||||
  can have a profound impact on performance when called in critical sections of
 | 
			
		||||
  the code.
 | 
			
		||||
 | 
			
		||||
* Will the change include any locking, and if so what considerations are there
 | 
			
		||||
  on holding the lock?
 | 
			
		||||
 | 
			
		||||
Deployer impact
 | 
			
		||||
---------------------
 | 
			
		||||
 | 
			
		||||
Discuss things that will affect how you deploy and configure OpenStack
 | 
			
		||||
that have not already been mentioned, such as:
 | 
			
		||||
 | 
			
		||||
* What config options are being added? Should they be more generic than
 | 
			
		||||
  proposed (for example a flag that other hypervisor drivers might want to
 | 
			
		||||
  implement as well)? Are the default values ones which will work well in
 | 
			
		||||
  real deployments?
 | 
			
		||||
 | 
			
		||||
* Is this a change that takes immediate effect after its merged, or is it
 | 
			
		||||
  something that has to be explicitly enabled?
 | 
			
		||||
 | 
			
		||||
* If this change is a new binary, how would it be deployed?
 | 
			
		||||
 | 
			
		||||
* Please state anything that those doing continuous deployment, or those
 | 
			
		||||
  upgrading from the previous release, need to be aware of. Also describe
 | 
			
		||||
  any plans to deprecate configuration values or features.  For example, if we
 | 
			
		||||
  change the directory name that instances are stored in, how do we handle
 | 
			
		||||
  instance directories created before the change landed?  Do we move them?  Do
 | 
			
		||||
  we have a special case in the code? Do we assume that the operator will
 | 
			
		||||
  recreate all the instances in their cloud?
 | 
			
		||||
 | 
			
		||||
Developer impact
 | 
			
		||||
----------------
 | 
			
		||||
 | 
			
		||||
Discuss things that will affect other developers working on Puppet OpenStack,
 | 
			
		||||
such as.
 | 
			
		||||
 | 
			
		||||
Implementation
 | 
			
		||||
==============
 | 
			
		||||
 | 
			
		||||
Assignee(s)
 | 
			
		||||
-----------
 | 
			
		||||
 | 
			
		||||
Who is leading the writing of the code? Or is this a blueprint where you're
 | 
			
		||||
throwing it out there to see who picks it up?
 | 
			
		||||
 | 
			
		||||
If more than one person is working on the implementation, please designate the
 | 
			
		||||
primary author and contact.
 | 
			
		||||
 | 
			
		||||
Primary assignee:
 | 
			
		||||
  <launchpad-id or None>
 | 
			
		||||
 | 
			
		||||
Other contributors:
 | 
			
		||||
  <launchpad-id or None>
 | 
			
		||||
 | 
			
		||||
Work Items
 | 
			
		||||
----------
 | 
			
		||||
 | 
			
		||||
Work items or tasks -- break the feature up into the things that need to be
 | 
			
		||||
done to implement it. Those parts might end up being done by different people,
 | 
			
		||||
but we're mostly trying to understand the timeline for implementation.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Dependencies
 | 
			
		||||
============
 | 
			
		||||
 | 
			
		||||
* Include specific references to specs and/or blueprints in nova, or in other
 | 
			
		||||
  projects, that this one either depends on or is related to.
 | 
			
		||||
 | 
			
		||||
* If this requires functionality of another project that is not currently used
 | 
			
		||||
  by Nova (such as the glance v2 API when we previously only required v1),
 | 
			
		||||
  document that fact.
 | 
			
		||||
 | 
			
		||||
* Does this feature require any new library dependencies or code otherwise not
 | 
			
		||||
  included in OpenStack? Or does it depend on a specific version of library?
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Testing
 | 
			
		||||
=======
 | 
			
		||||
 | 
			
		||||
Please discuss how the change will be tested. We especially want to know what
 | 
			
		||||
tempest tests will be added. It is assumed that unit test coverage will be
 | 
			
		||||
added so that doesn't need to be mentioned explicitly, but discussion of why
 | 
			
		||||
you think unit tests are sufficient and we don't need to add more tempest
 | 
			
		||||
tests would need to be included.
 | 
			
		||||
 | 
			
		||||
Is this untestable in gate given current limitations (specific hardware /
 | 
			
		||||
software configurations available)? If so, are there mitigation plans (3rd
 | 
			
		||||
party testing, gate enhancements, etc).
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Documentation Impact
 | 
			
		||||
====================
 | 
			
		||||
 | 
			
		||||
What is the impact on the docs team of this change? Some changes might require
 | 
			
		||||
donating resources to the docs team to have the documentation updated. Don't
 | 
			
		||||
repeat details discussed above, but please reference them here.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
References
 | 
			
		||||
==========
 | 
			
		||||
 | 
			
		||||
Please add any useful references here. You are not required to have any
 | 
			
		||||
reference. Moreover, this specification should still make sense when your
 | 
			
		||||
references are unavailable. Examples of what you could include are:
 | 
			
		||||
 | 
			
		||||
* Links to mailing list or IRC discussions
 | 
			
		||||
 | 
			
		||||
* Links to notes from a summit session
 | 
			
		||||
 | 
			
		||||
* Links to relevant research, if appropriate
 | 
			
		||||
 | 
			
		||||
* Related specifications as appropriate (e.g.  if it's an EC2 thing, link the
 | 
			
		||||
  EC2 docs)
 | 
			
		||||
 | 
			
		||||
* Anything else you feel it is worthwhile to refer to
 | 
			
		||||
		Reference in New Issue
	
	Block a user