18 Commits

Author SHA1 Message Date
SamYaple
ed82afa8e9 Simplify config creation
Convert config creation from a playbook to an action_plugin. This
reduces the complexity and confusion while retaining the same augment
structure and flexibility.

This allows us to remove the 0-byte files as requirements. They will
still be used if they are present (this means we require additional
documentation around them).

DocImpact
Closes-Bug: #1528430
Change-Id: I2c789f6be9f195c7771ca093a6d59499564b4740
2015-12-22 04:28:53 +00:00
Sam Yaple
970617b80a Make the database json variable more readable
Additionally remove tty from the container cleanup docker section. It
was added in a sed in a previous patchset by serves no purpose.

Change-Id: Ib617870616bca687f72ffaa44b2e9a3a11ef1011
Partially-Implements: blueprint cleanup-playbooks
2015-11-23 17:24:22 +00:00
Sam Yaple
d01e9a43dd Use rabbitmq-clusterer when deploying
Change-Id: I2a9c6fa16444a2142ab77f58d188eda84a2e59fd
Partially-Implements: blueprint rabbitmq-clusterer
2015-11-03 04:51:45 +00:00
Sam Yaple
b2ac6e80cd Add tty to containers
sudo requires a tty to function by default on centos. Instead of
tweaking the sudo conf we can just add a tty. This has the added
advantage of making the containers more friendly if you have to
`docker exec -i <container> bash` into them.

Change-Id: If97a02ca1d37c243a787d98ade54bde8d641aecd
backport: liberty
Partially-Implements: blueprint functional-testing-gate
2015-10-14 10:54:33 +00:00
Sam Yaple
c5be228be8 Bump ansible to 1.9.2
Ansible 1.9.2 contains the fix needed for docker-py >1.2.0

This is needed for some gate reasons, but it is also a good version
bump because it fixes a few issues with delegate_to.

Change-Id: Iafbabb3b0232620849d0548c5cd9d8d316c2b0f3
backport: liberty
Partially-Implements: blueprint functional-testing-gate
2015-10-13 15:13:34 +00:00
Sam Yaple
94162bd08f Bring Kolla inline with FHS
This brings Kolla images inline with FHS and should make finding
locations of things more consistent and reliable with the linux world
at large.

Change-Id: Iece5b4da4bace0fb8b1f41a65ab2c852ec73e6f8
Closes-Bug: #1485742
2015-10-06 03:30:53 +00:00
rthallisey
a0bffb2581 Replace config-external with a JSON file for Rabbitmq
Change-Id: Ibb30af44a9362278eff012ff1145374788b06cd5
Partially-Implements: blueprint replace-config-external
2015-09-18 15:19:06 -04:00
Steven Dake
327d89bd38 Fix rabbitmq from failure during startup
Stagger the start times of the rabbitmq daemon so rabbitmq neither
crashes and also properly forms a cluster.  This problem exists in
the latest rabbitmq 3.5.4 available on rabbitmq.com for download.

Change-Id: Iac4186b3c3b586de38467294399c7ed9415244de
Closes-Bug: #1490780
2015-09-08 20:38:11 -07:00
Sam Yaple
f42528acaf Properly check failed status
No need for a new task.

Change-Id: I958f87ac9a1434a2f6052e0271f37e5f3109775e
Closes-Bug: #1492337
2015-09-06 11:21:44 +00:00
Vladislav Belogrudov
7f81dbc85b Check exit status of bootstrap containers
Currently bootstrap containers are waited to exit but are not
checked for exit status and ansible runs further tasks. If
bootstrapping fails we notice it at much later time.

Change-Id: I137fc11b0f9d1f03d2ded08a213e8dbd62741f92
Closes-Bug: #1492337
2015-09-04 19:47:54 +03:00
Sam Yaple
1e963d124a Fix rabbitmq part 2
Change-Id: I69a5ace61dd621a7fc0354d4deb5e8937505e13e
Partial-Bug: #1480496
2015-09-02 15:33:18 +00:00
Sam Yaple
77466a292d Fix rabbitmq perms
If a bootstrap fails at some stage and leaves a rabbitmq_data
container on a host, it will not bootstrap again and rabbitmq
fails to start due to root permissions on /var/lib/rabbitmq.

This patch improves the check for a valid, existing
rabbitmq_data

Closes-Bug: #1490602
Change-Id: I6a00aaef38b4ab6a60dcfb5ed2f808513b9f8c84
2015-09-02 13:31:05 +00:00
Paul Bourke
f5c996e77d Fix typo in task bootstrap task names
Not quite halloween yet...

Change-Id: Ib1973eea0b2dddc0e0845731d1212c4d4447cca5
Closes-Bug: #1490502
2015-08-31 11:27:10 +01:00
Vladislav Belogrudov
dd9986cf0a Rabbitmq servers fail to start due to wrong permissions
Rabbitmq containers mount /var/lib/rabbitmq from 'data'
containers with 'root:root' permissions because
ansible does not wait for rabbitmq bootstrap container -
the latter corrects access rights but sometimes gets
killed just after start.

Change-Id: I5cd1ce9810a1fd457dd34a1283e448204964c17d
Closes-Bug: #1487422
2015-08-21 16:16:37 +00:00
Sam Yaple
b408bd531d Fix small typo in task name
Change-Id: I80e183985560404455443e6fa22e661bea3c0fa3
Closes-Bug: #1486516
2015-08-19 11:04:51 +00:00
Steven Dake
bd5e5bbb64 Use one data container for all data volumes
The previous method of using the API image for a data container
worked, but resulted in more data being bindmounted and copied
into the system.  This patch resolves that by essentially using
a distro-type as a FROM in a Dockerfile to generate
distro-type-data.  Further all of the data containers used
throughout ansible are modified to use this new data container.

Change-Id: I8846573d4f2d4b98d4f46c770bfefc6d4c5cd0b5
Partially-Implements: blueprint one-data-container
2015-08-18 20:52:27 -07:00
Sam Yaple
8419902e8e Remove bootstrap.yml abstraction for rabbitmq
Change-Id: I5b163b6a5c0e084deec5937e4fbf04d11fdde01f
Partially-Implements: blueprint remove-abstraction-ansible
2015-08-13 17:41:47 -07:00
Sam Yaple
0382909dbb Rename role name to service name
The original purpose for having an abstract like 'database' rather than
the service name of 'mariadb' has been change. Our direction is different
and this patch reflects consistent naming throughout

Change-Id: I704896191cc5243f9dab2a4cca9120e9dc2ceb2c
Closes-Bug: #1478328
2015-07-30 19:35:17 +00:00