[openstack-dev] DeployArtifacts considered...complicated?
Lars Kellogg-Stedman
lars at redhat.com
Sat Jun 16 02:06:30 UTC 2018
I've been working on a series of patches to enable support for
keystone federation in tripleo. I've been making good use of the
DeployArtifacts support for testing puppet modules...until today.
I have some patches that teach puppet-keystone about multi-valued
configuration options (like trusted_dashboard). They replace the
keystone_config provider (and corresponding type) with ones that work
with the 'openstackconfig' provider (instead of ini_settings). These
work great when I test them in isolation, but whenever I ran them as
part of an "overcloud deploy" I would get erroneous output.
After digging through the various layers I found myself looking at
docker-puppet.py [1], which ultimately ends up calling puppet like
this:
puppet apply ... --modulepath=/etc/puppet/modules:/usr/share/openstack-puppet/modules ...
It's that --modulepath argument that's the culprit. DeployArtifacts
(when using the upload-puppet-modules script) works by replacing the
symlinks in /etc/puppet/modules with the directories from your upload
directory. Even though the 'keystone' module in /etc/puppet/modules
takes precedence when doing something like 'include ::keystone', *all
the providers and types* in lib/puppet/* in
/usr/share/openstack-puppet/modules will be activated.
So in this case -- in which I've replaced the keystone_config
provider -- we get the old ini_settings provider, and I don't get the
output that I expect.
The quickest workaround is to generate the tarball by hand and map the
modules onto /usr/share/openstack-puppet/modules...
tar -cz -f patches/puppet-modules.tar.gz \
--transform "s|patches/puppet-modules|usr/share/openstack-puppet/modules|" \
patches/puppet-modules
...and then use upload-swift-artifacts:
upload-swift-artifacts -f patches/puppet-modules.tar.gz
Done this way, I get the output I expect.
[1]: https://github.com/openstack/tripleo-heat-templates/blob/master/docker/docker-puppet.py
--
Lars Kellogg-Stedman <lars at redhat.com> | larsks @ {irc,twitter,github}
http://blog.oddbit.com/ |
More information about the OpenStack-dev
mailing list