As anyone who has looked at the chef-openstack cookbooks will quickly find, we have a *lot* of duplication.
I think it's not only silly, but a vector for future drift if we continue down that current path.
I'd like to propose the next major version of our cookbooks move more of the redundant/repeated stuff into the openstack-common cookbook. Things like endpoints, as an example, shouldn't need to be searched for every single chef run. Those should be attributes that get set if they're nil. They should be in the common cookbook, so that one piece can inherently know about something else (e.g. Glance should know about swift, especially if we'd like to use it,)
Furthermore, some cookbooks have the common pieces declared in each recipe, the cinder cookbook is an example.
I think I'd like to start working down this path, unless you guys think it's a bad idea.
Thoughts?
--Abe