[openstack-dev] [Nova] When is a blueprint unnecessary?

Russell Bryant rbryant at redhat.com
Tue Nov 19 16:31:25 UTC 2013

On 11/19/2013 11:11 AM, Daniel P. Berrange wrote:
> On Tue, Nov 19, 2013 at 10:56:10AM -0500, Russell Bryant wrote:
>> Greetings,
>> One of the bits of feedback that came from the "Nova Project Structure
>> and Process" session at the design summit was that it would be nice to
>> skip having blueprints for smaller items.
>> In an effort to capture this, I updated the blueprint review criteria
>> [1] with the following:
>>   Some blueprints are closed as unnecessary. Blueprints are used for
>>   tracking significant development efforts. In general, small and/or
>>   straight forward cleanups do not need blueprints. A blueprint should
>>   be filed if:
>>    - it impacts the release notes
>>    - it covers significant internal development or refactoring efforts
> "Impacts release notes" can seem a bit nebulous. It shifts the problem
> from
>    "what is a blueprint required for?"
> to
>    "what is a release note required for?"
> which can be just as ill-defined for many people. So we might want
> to be more explicit to enumerate all the things that would typically
> trigger release notes, and thus blueprints, explicitly
>  - Adds configuration parameters
>  - Adds glance/cinder metdata properties
>  - Changes public APIs
>  - Affects database schema
>    ...probably many other things...

Good point.  In general, I think of release notes as

    "Does a user care about this?"

They care about

   - features being added, removed, changed
      - includes config, special properties, public APIs
   - changes that affect deployment or upgrades

I'll see if I can get this incorporated into the wiki.

>> So, to pick out some examples (not trying to pick on anything in
>> particular here):
>> An example of a feature that should be in release notes:
>>   https://blueprints.launchpad.net/nova/+spec/xenapi-resize-ephemeral-disks
>> An example of a major refactoring effort that justifies a blueprint:
>>   https://blueprints.launchpad.net/nova/+spec/live-migration-to-conductor
>> An example of something I think is small enough to not need a blueprint:
>>   https://blueprints.launchpad.net/nova/+spec/no-import-uuid
>> Determining when a blueprint is and is not necessary is a bit difficult
>> to define clearly.  I would appreciate input on how we can define it
>> more cleanly so that it can be enforced by the blueprint reviewers
>> consistently.
> I'd also suggest another criteria for
>  - Impacts cross-project interaction/interfaces
>      eg calls between Nova & Neutron for VIF setup
>        or betweeen Nova & Cinder for volume setup

ACK, will add.

Russell Bryant

More information about the OpenStack-dev mailing list