Hello.
I'd like to propose a change to the puppet openstack (PO) modules'
classes to support an 'atomic' runs, which is without parametrized
dependency classes, like init.pp, additionally compiled into the
catalog. Here is the usecase below.

The deployment graph produced by a composition layer is usually a
complex and requires consequent operations specific to nodes' roles. An
example for a Neutron deployment:
A) On a network node:
::neutron -> ( neutron plugins) -> ::neutron::server -> ( n-agents )
B) on a computes:
::neutron -> ::neutron::*(plugins) -> ( optional n-agents )

Atomicity concept assumes each separate step should include only
related single class call. Without dependency classes, like ::neutron or
::neutron::server, to be included into the catalog each time. This also
applies to dependency packages/services created from these classes, like
Package['neutron'] or Service['neutron-server'].

Ideally, each atomic orchestration action should only:
* provide a single puppet class parameters to be fed into the KVS, like
hiera,
* include non-parametrized classes, like ::foo:params
* issue a single puppet class invocation.

Please review the blueprint [0] (related bug [1]), patches [2], [3].
The idea is to follow the same approach for the rest of the PO modules
to make them deployable on class level.

[0] https://blueprints.launchpad.net/puppet-neutron/+spec/atomic-
classes-orchestration
[1] https://bugs.launchpad.net/puppet-neutron/+bug/1489897
[2] https://review.openstack.org/218825
[3] https://review.openstack.org/218797
-- 
Best regards,
Bogdan Dobrelya,
Irc #bogdando

__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: [email protected]?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to