18 Commits

Author SHA1 Message Date
Colleen Murphy
5dd32fc501 Simplify group_names variable
As noted in [1] the group_names variable is a top-level variable and
doesn't need to be accessed via the hostvars object.

[1] https://review.openstack.org/#/c/572861/1/playbooks/remote_puppet_adhoc.yaml

Change-Id: Ic895f177019b31da34cdf91a6dd62dc99a649754
2018-06-20 23:53:26 +02:00
Colleen Murphy
9ce4a353e6 Add support for turning on the future parser
If a host is a member of the 'futureparser' group, pass the
'futureparser' option to the puppet role, which will turn on parser =
future in puppet.conf when manage_config is true and when the node isn't
already using puppet 4. Nodes can be added one at a time by adding them
to modules/openstack_project/files/puppetmaster/groups.txt.

Depends-On: https://review.openstack.org/572856
Change-Id: I54e19ef6164658da8e0e5bff72a1964b88b81242
2018-06-06 20:23:43 +02:00
Paul Belanger
ce15361a28
Switch to hostgroup review for puppet_run_all playbooks
Because we changed out the hostname of review.o.o for review01.o.o our
current playbooks will be broken. To fix this moving forward, we can
just switch to the group 'review' which includes the review01.o.o
host.

Change-Id: I149eacbc759f95087f2b0a0e44fcf0b49cae7ad6
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2018-05-02 17:30:51 -04:00
Monty Taylor
082c5174b1
Turn off puppet reports
We have puppet configured to write reports when it runs. We used to
collect these and inject them into puppetdb. Since we don't do this
anymore, they're just a giant pile of files we never see.

Enable managing the puppet.conf file from ansible and then also turn off
the reports.

Change-Id: I55bef052bddc9b9ff5de76a4f0b2ec07f93f158c
2018-01-24 09:35:54 -06:00
Jeremy Stanley
a187f1665b Decommission zuulv3.openstack.org server
Now that zuulv3.openstack.org has been replaced by the larger
zuul01.openstack.org server, the former can be cleaned out of our
configuration in preparation for server deletion.

Change-Id: Icc1d545906e5615e2a205b98f364a084e1d22895
2018-01-20 00:57:04 +00:00
Jeremy Stanley
52b592b1d1 Use zuul-scheduler group instead of zuul* glob
Since Ansible host inventory globs match against both host names and
host groups, use the zuul-scheduler group when referring to
zuul01.openstack.org and similarly-named hosts so as to avoid
inadvertently matching all members of the "zuul" host group with
zuul* (which includes the executors and mergers). Continue to match
zuulv3.openstack.org separately for now as it's not in the
zuul-scheduler group (and soon to be deleted anyway).

Change-Id: I3127d121ea344e1eb37c700d37f873e34edbb86e
2018-01-19 22:51:56 +00:00
Jeremy Stanley
9cc99d4b47 Glob zuulv3 and zuul01 as zuul* in playbooks
To avoid the need for regular expression matching, switch to a
simple glob of zuul* covering zuulv3 and zuul01 servers. Now that
zuul-dev and zuulv3-dev are gone, this glob will only match the two
remaining hosts mentioned.

Change-Id: I2749ffa6c0e4d2ea6626d1ebde1d7b3ab49378bb
2018-01-16 23:40:48 +00:00
Jeremy Stanley
2d57c7cfd9 Add a zuul01.openstack.org
In preparation for replacing the zuulv3.openstack.org host with a
larger instance, set up the necessary support in
Puppet/Hiera/Ansible. While we're here, remove or replace old
references to the since-deleted zuul.openstack.org instance, and
where possible update documentation and configuration to refer to
the new zuul.openstack.org CNAME instead of the zuulv3.openstack.org
FQDN so as to smooth the future transition.

Change-Id: Ie51e133afb238dcfdbeff09747cbd2e53093ef84
2018-01-15 20:32:54 +00:00
Monty Taylor
e043e6e4bc
Add zuul scheduler to the git/gerrit puppet sequence
We have a race condition on project creation otherwise.

Change-Id: Ia5741d69194ec6a3fcba6ca58552ce021c6aaa1f
2017-12-18 09:46:36 -06:00
Paul Belanger
a62b671ee7
Make strategy free default for all remote_puppet playbooks
Now that we've confirmed ansible-playbook works as expected, lets
enable the free strategy by default.

While playbooks with singles hosts will not benefit from this, we add
it to be consistent with our playbooks.

Change-Id: Ia6abdfaf5c122f88ead2272c8700e2c1f33c5449
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2016-07-13 16:53:31 -04:00
Spencer Krum
6909ac2e59 Don't run infracloud puppet twice
Without this patch, we would run infracloud in its playbook, then again
in the 'everybody else' playbook.

Co-Authored-By: Colleen Murphy <colleen@gazlene.net>
Change-Id: I3de1de8f0f74e52a443c0b7a6ef6ae0a2cf7e801
2016-02-10 19:54:02 -08:00
Colleen Murphy
32f956f268 Add infracloud playbook
Add separate playbook for infacloud nodes to ensure they run in the
correct order - baremetal -> controller -> compute.

Baremetal is intentionally left out, it is not ready yet.

All 'disabled' flags on infracloud hosts are turned off. This patch
landing turns on management of the infracloud.

Co-Authored-By: Yolanda Robla <info@ysoft.biz>
Co-Authored-By: Spencer Krum <nibz@spencerkrum.com>
Change-Id: Ieeda072d45f7454d6412295c2c6a0cf7ce61d952
2016-02-08 18:03:02 -08:00
Monty Taylor
fdc24ccbb3 Add a missing colon
Change-Id: I0cc28d99e6e68fa82a9689fb9588c7680a39938c
2015-11-30 17:10:40 -06:00
Monty Taylor
7cee605a77 Add shade and openstack inventory to system
We're not ready to move from puppet inventory to openstack inventory
just yet, so don't actually swap the dynamic inventory plugin. But, add
it to the system so that running manual tests of all of the pieces is
possible.

Add the currently administratively disabled hosts to the disabled group
so that we can verify this works.

Change-Id: I73931332b2917b71a008f9213365f7594f69c41e
2015-11-28 15:59:10 -05:00
Spencer Krum
d7453b1d64 Don't manage hieradata on Puppetmaster
Puppet the puppetmaster first

Change-Id: I2ecd63c73de6f9eb915900418c5656eb5d6a2816
2015-11-28 12:48:33 -08:00
Isaac Beckman
ba06551181 Set gather_facts true in ansible playbooks
This is need to support ansible built-in facts
used by puppet-ansible

Change-Id: Id8d14905e12c1d25c49322dd4c418b3f47c0d7c4
2015-11-23 16:40:55 +02:00
Monty Taylor
1e862a9ade Add some in-tree ansible group vars
As we're using these roles, we'll want to pass potentially different
values to different of our hosts over time. For instance, we may want to
set the jenkins servers to start using puppet apply before we get all
the hosts there. Since we run most of the hosts in a big matching
mechanism, the way we can pass different input values to each host.

Change-Id: I5698355df0c13cd11fe5987787e65ee85a384256
2015-10-30 02:33:27 +00:00
Monty Taylor
d039a62045 Move playbooks out of the puppet module
/etc/ansible/playbooks isn't actually a thing, it was just a convenient
place to put things. However, to enable puppet apply, we're going to
want a group_vars directory adjacent to the playbooks, so having them be
a subdirectory of the puppet module and installed by it is just extra
complexity. Also, if we run out of system-config, then it'll be easier
to work with things like what we do with puppet environments for testing
things.

Change-Id: I947521a73051a44036e7f4c45ce74a79637f5a8b
2015-10-30 11:31:05 +09:00