Jump to: navigation, search

Ironic/Specs Process

< Ironic
Revision as of 15:18, 30 September 2015 by Rloo (talk | contribs) (Ironic Specs Process)

Ironic Specs Process

Starting with Juno cycle, Ironic has adopted a new specification approval process, based on that of Nova. As previously, you start with getting your blueprint into launchpad. Then you use the same Gerrit process as with source code, using special repository ironic-specs, to add the specification.

Specifications must follow the template which can be found at specs/template.rst, which is quite self-documenting. Specifications are proposed by adding them to the specs/approved directory and posting it for review to Gerrit. The implementation status of a blueprint can be found by looking at the blueprint in launchpad. Once approved, the blueprint should include the URL to the specification.

Starting with the Kilo cycle, the specification process is slightly different [1]. This new process provides a way to fast-track your idea, but you don't have to follow that process if you don't want to get an initial, high-level review. You can choose to propose a detailed specification instead.

If a specification has been approved but not completed within one or more releases since the approval, it may be re-reviewed to make sure it still makes sense as written.

You are welcome to submit patches associated with a blueprint, but they will have a -2 ("do not merge") until the specification has been approved. This is to ensure that the patches don't get accidentally merged beforehand. You will still be able to get reviewer feedback and push new patch sets, even with a -2.

The list of core reviewers for the specifications is small but mighty. (This is not necessarily the same list of core reviewers for code patches.)

Changes to existing specs

For approved but not-completed specs:

  • cosmetic cleanup, fixing errors, and changing the definition of a feature can be done to the spec


For approved and completed specs:

  • changing a previously approved and completed spec should only be done for cosmetic cleanup or fixing errors
  • changing the definition of the feature should be done in a new spec

References

[1] http://lists.openstack.org/pipermail/openstack-dev/2014-August/041960.html