Ansible role for running puppet
Go to file
James E. Blair 8d0f0bfd0a Set facts type to dict
With newer versions of ansible, module arguments are assumed to
be strings unless otherwise specified.  Our 'facts' argument is
expected to be a dictionary, so tell ansible that.

Without this, the argument will arrive as a string and be written
to the facter file inside string quotes.  Facter will produce the
following error:

  undefined method `each' for #<String:0x000000016ee640>

Change-Id: Iea626466d0920349f434f678fe2f71cbee259383
2017-01-12 09:55:37 -08:00
defaults Make sure environment winds up in basemodulepath 2016-10-01 08:11:12 -07:00
handlers Add all of the files needed to make this a role 2015-02-22 22:59:39 -05:00
library Set facts type to dict 2017-01-12 09:55:37 -08:00
meta Update to use blocks from ansible 2.0 2016-01-14 15:39:24 -05:00
tasks Add debug argument 2016-10-01 08:11:13 -07:00
templates Revert "Remove basemodulepath from environment config" 2016-10-04 22:36:16 +00:00
tests Add all of the files needed to make this a role 2015-02-22 22:59:39 -05:00
vars Define defaults as defaults, not variables 2016-01-18 19:41:56 -05:00
.gitignore Add tox -eansible-lint support 2015-11-11 21:43:59 -05:00
.gitreview Update .gitreview to ansible-role-puppet 2016-06-02 10:48:25 +03:00
LICENSE Add all of the files needed to make this a role 2015-02-22 22:59:39 -05:00
README.md Update README with info about puppet apply 2016-10-20 15:48:40 -07:00
requirements.txt Add tox -eansible-lint support 2015-11-11 21:43:59 -05:00
run_tests.sh Add all of the files needed to make this a role 2015-02-22 22:59:39 -05:00
test-requirements.txt Add tox -eansible-lint support 2015-11-11 21:43:59 -05:00
tox.ini Add tox -eansible-lint support 2015-11-11 21:43:59 -05:00

README.md

puppet

Run puppet consistently from ansible.

Requirements

puppet needs to be installed on the target node, and if puppet agent is being used, the cert exchange needs to have been performed.

Role Variables

Either puppetmaster or manifest should be supplied. If you are using puppet agent, you want to supply puppetmaster. If you are using puppet apply, you want to supply manifest.

Dependencies

None

Example Playbook using a puppetmaster

The only required argument is puppetmaster:

- hosts: servers
  roles:
     - { role: puppet, puppetmaster: puppetmaster.openstack.org }

Example Playbook without a puppetmaster

The only required argument is manifest:

- hosts: servers
  roles:
     - { role: puppet, manifest: /opt/system-config/production/manifests/site.pp }

License

Apache

Author Information

ansible-puppet is maintained by the OpenStack Infra team. The best way to contact them is on #openstack-infra on freenode.