Design Specifications for Masakari
Go to file
suzhengwei 14ecbd361b add 2024.1 Caracal reposity
Change-Id: Id87eb2ebe6f05d0dd41037c92b062ae49cf3b159
2024-01-29 15:21:31 +08:00
doc/source add 2024.1 Caracal reposity 2024-01-29 15:21:31 +08:00
specs add 2024.1 Caracal reposity 2024-01-29 15:21:31 +08:00
.gitignore Add spec repo structure 2017-01-16 13:44:30 +09:00
.gitreview OpenDev Migration Patch 2019-04-19 19:44:00 +00:00
.zuul.yaml [CI] Publish specs 2021-03-27 16:48:05 +00:00
CONTRIBUTING.rst [community goal] Update contributor documentation 2021-05-17 14:19:34 +00:00
LICENSE Add spec repo structure 2017-01-16 13:44:30 +09:00
README.rst Relace the old docs env 2019-07-16 18:42:32 +08:00
requirements.txt Remove pbr from deps 2022-12-26 15:01:12 +01:00
setup.cfg setup.cfg: Replace dashes with underscores 2021-04-28 11:06:06 +08: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 [tox] Pin reqs 2022-12-26 15:08:34 +01:00

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.