Profiles should be self-contained, not interdependent. Removing the
dependency relationship between the firewallchain resources and the
repository classes causes no ill effects, plus it simplifies the code
because it is no longer conditional on osfamily.
For the most part these strings aren't shared, so this abstraction
provides little value. It's also a class, not a resource, so it's place
here is confusing. Just remove it and set up the strings where they
This class does not provision any resources, it only does error
checking. The error checking is restrictive and not very valuable, and
it hinders reusability. This patch removes the class and all similar
error checking not contained in the class.
Having a class that sets up a single hard-coded image is not very
useful, except for demos. This change moves the image data into the
example hiera files and uses create_resources on a hash of data to
create as many images as the user wants. We move this into
openstack::profile::glance::api since now a one-line function does not
need its own class.
The openstack::setup::router and openstack::setup::sharednetwork
classes only create two networks and one router with very little
configuration options. This change moves the network data into the
example hiera files and uses create_resources on a hash to create as
many networks, subnets, and routers are the user wants. We move this
into openstack::profile::neutron::router since these resources will
always reside on the network node.
Nova images won't boot with the version of device-mapper installed by
default on RedHat. We need to make sure we have the latest available
version, and it needs to refresh the libvirt and then the nova-compute
service after being updated.
Classes that should be included only on the Nova API server or only on
the compute node should not be in a "common" class. This patch splits
classes out of openstack::common::nova onto the API server or the
Most of the resources in common::ceilometer are not common across nodes
and actually have well defined places on the API server or the agent.
We split these out and just leave the base ceilometer class, which is
the only common class for ceilometer.