puppetlabs/puppetlabs-corosync — pull request #4 by branan (2012-07-04 01:34:44+00:00)
Title: (not yet ready for merge) Corosync fixes/rewrites

As discussed in meatspace, this is my collection of corosync fixes and rewrites. Four of these patches add support for additional corosync capabilities. The other two are bugfixes.

==New Functionality
* Support for placing Corosync primitives and relationships into a shadow CIB. At present this CIB must be managed by execs
* Support for additional metadata on master/slave primitives
* Support for unicast configuration taking an array of IPs
* Support for handling actions/roles in orders/colocations respectively. It was previously possible to set these in puppet code, but due to the way the data from Corosync was parsed the resource would always be re-applied. This patch makes the type/provider understand the extra data

==Bugs Fixed
* Puppet does not place the `lib/puppet/provider` directory into the load path. The code now explicitly loads the parent class
* I encountered some issue with resource ordering of the package/config/service for Pacemaker and Corosync. They're resolved in this patchset

==TODO before merge
* Implement shadow CIBs and commits in puppet type(s) so that execs are no longer necessary

==Other future work
* autorequires between primitives and the service and between relationships and their primitives