7 Commits

Author SHA1 Message Date
Travis Truman
66143b80f6 Ansible 2.x - Address deprecation warning of bare variables
Ansible 2.2 will not allow "bare" variable references
in with_* loops. See https://docs.ansible.com/ansible/porting_guide_2.0.html#deprecated
for details.

Change-Id: I65cbf9de6869bebd48570d90c768ac5ba214b44d
2016-04-20 15:09:45 -04:00
Hector I Gonzalez
a4f5657f27 Updated role using the Multi-Distro framework
* The default apt packages have been moved into a var file
  that is only loaded when the detected OS is matched.
* The Install task file has had the apt specific tasks moved
  into a named install task file.

Change-Id: I0b31d5d76d3aaedf3b87550165d0e670b314bebd
2016-04-18 16:56:43 -05:00
Matt Thompson
dd560d7f83 Fix how constraints are added to pip_install_options
This commit changes the pip_install_options fact name in
designate_install.yml to pip_install_options_fact.  This allows us to
maintain the existing pip_install_options variable without overwriting
it with options when in developer mode, which ultimately means we can
have multiple services running in a container use a combination of
*_developer_mode: true and *_developer_mode: false.  At the moment,
if a service writes pip_install_options fact with the constraints
options, those options will persist to other services running in the
container even if *_developer_mode: false.

Change-Id: I9f47a143b3e79b35754584ae35fcbd9436479717
2016-03-17 13:56:20 +00:00
Jesse Pretorius
f59db83194 Various configuration changes and task updates
This patch implements a bunch of changes for easier debugging and to
make the deployment more functional.

 - All passwords are removed from defaults. The role must fail to
   complete all tasks if no password is provided.
 - The Designate Pool Configuration uuid's are provided with
   defaults and the vars are added to the user_secrets.yml file
   for easy implementation in OpenStack-Ansible.
 - The designate.conf template has been re-organised to closely
   match the sample file provided in the master branch of the
   OpenStack Designate repository. This makes it easier to compare
   for changes.
 - The PyMySQL driver is used for all MySQL connectivity, as is now
   the general standard for OpenStack Services.
 - The designate_pool_manager database is now setup.
 - The test playbook has the RabbitMQ & DB setup pre_tasks removed
   for now. These can move out again once functional testing is
   working.
 - The test playbook's LXC dhcp range is reduced to 50 hosts in
   order to ensure no conflicts with the test containers and also
   provide room for growth.
 - Add human readable logging callback plugin to functional test.
 - Restructure testing to make it easier to work with.
2016-03-14 12:34:48 +00:00
Jesse Pretorius
f4842f73fd Only update apt cache if necessary
This patch implements workaround due to [1] which is fixed in [2] but
has not yet merged.

TODO: Once we switch to Ansible 2.x we'll need to revisit whether this
is still a problem.

[1] https://github.com/ansible/ansible-modules-core/issues/1497
[2] https://github.com/ansible/ansible-modules-core/pull/1517
2016-03-14 12:34:47 +00:00
Jesse Pretorius
5a53c622b7 Enable 'developer mode' installation
This commit adds the ability to install glance without requiring an
OpenStack-Ansible pip wheel repository.

In 'developer mode' the git source is cloned directly and the services
are installed directly from the git clone with its requirements being
installed from pypi. The OpenStack upper-constraints file is also used
to ensure that the install is executed using the appropriately tested
set of pypi packages.

The following variables are added:

 - designate_developer_mode: A boolean switch to enable/disable developer
   mode.
 - designate_git_repo: The git repository to clone Designate from.
 - designate_git_install_branch: The branch, tag or SHA to checkout once
   the designate repository has been cloned.
 - designate_requirements_git_repo: The git repository to clone in order
   to retrieve the upper-constraints file.
 - designate_requirements_git_install_branch: The branch, tag or SHA to
   checkout once the requirements repository has been cloned.

The testing playbook overrides the *_install_branch variables to fixed
SHA's in order to fix points in time at which updates are made. This
reduces the effect of upstream development changes on the
OpenStack-Ansible development cycle.
2016-03-14 12:34:46 +00:00
sharmaswati6
8d6686ef54 Initial commit 2016-03-14 12:34:10 +00:00