Design Specifications for Masakari
Go to file
Doug Hellmann b600eba7b7 fix tox python3 overrides
We want to default to running all tox environments under python 3, so
set the basepython value in each environment.

We do not want to specify a minor version number, because we do not
want to have to update the file every time we upgrade python.

We do not want to set the override once in testenv, because that
breaks the more specific versions used in default environments like
py35 and py36.

Change-Id: I466ef0b323140c936d8c83b5c206b15030a683c7
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
2019-02-13 09:30:50 +00:00
doc/source Add Stein specs repo 2019-01-28 13:57:58 +00:00
specs Add Stein specs repo 2019-01-28 13:57:58 +00:00
.gitignore Add spec repo structure 2017-01-16 13:44:30 +09:00
.gitreview Added .gitreview 2016-12-21 08:16:00 +00:00
.testr.conf Add spec repo structure 2017-01-16 13:44:30 +09:00
.zuul.yaml import zuul job settings from project-config 2018-08-17 19:20:50 +09:00
LICENSE Add spec repo structure 2017-01-16 13:44:30 +09:00
README.rst Add spec repo structure 2017-01-16 13:44:30 +09:00
requirements.txt Bump up sphinx version to '>=1.6.2,!=1.6.6' 2018-04-10 18:29:21 -07:00
setup.cfg Update home-page 2019-01-11 11:19:13 +00:00
setup.py Add spec repo structure 2017-01-16 13:44:30 +09:00
template.rst Trivial fix style in document 2017-06-20 14:41:28 +07:00
test-requirements.txt Add spec repo structure 2017-01-16 13:44:30 +09:00
tox.ini fix tox python3 overrides 2019-02-13 09:30:50 +00:00

README.rst

README

OpenStack Masakari Specifications =============================

This git repository is used to hold approved design specifications for additions to the Masakari project. 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>/

Where there are two sub-directories:

specs/<release>/approved: specifications approved but not yet implemented specs/<release>/implemented: implemented specifications

The lifecycle of a specification

Developers proposing a specification should propose a new file in the approved directory. masakari-core will review the change in the usual manner for the OpenStack project, and eventually it will get merged if a consensus is reached. At this time the Launchpad blueprint is also approved. The developer is then free to propose code reviews to implement their specification. These reviews should be sure to reference the Launchpad blueprint in their commit message for tracking purposes.

Once all code for the feature is merged into Masakari, the Launchpad blueprint is marked complete. As the developer of an approved specification it is your responsibility to mark your blueprint complete when all of the required patches have merged.

Periodically, someone from masakari-core will move implemented specifications from the approved directory to the implemented directory. Individual developers are also welcome to propose this move for their implemented specifications. It is important to create redirects when this is done so that existing links to the approved specification are not broken. Redirects aren't symbolic links, they are defined in a file which sphinx consumes. An example is at specs/ocata/redirects.

This directory structure allows you to see what we thought about doing, decided to do, and actually got done. Users interested in functionality in a given release should only refer to the implemented directory.

Example specifications

You can find an example spec in specs/ocata-template.rst.

Working with gerrit and specification unit tests

For more information about working with gerrit, see http://docs.openstack.org/infra/manual/developers.html#development-workflow

To validate that the specification is syntactically correct (i.e. get more confidence in the Jenkins result), please execute the following command:

$ tox

After running tox, the documentation will be available for viewing in HTML format in the doc/build/ directory.