183 Commits

Author SHA1 Message Date
Donovan Francesco (drifterza)
ed95267fd1 Adding Trove UI support to the integrated repo.
Change-Id: I0e9e62fc51382ad5ed5e841dc7cec6859f8f5b0e
2016-11-11 09:13:47 +02:00
Donovan Francesco (drifterza)
33cb15eaab Adding designate ui support to integrated repo.
Change-Id: Ic9940fbef0ba3eedbc3cd8a8769c22573fa99771
2016-11-10 13:16:37 +00:00
Donovan Francesco (drifterza)
835bec6c36 Adding Designate to integrated repo.
Change-Id: I92208c81bde9efbd832951004b28791c429a1e12
2016-11-08 10:25:29 +00:00
Kevin Carter
11c7b27235 Add boot priorities to containers
This change adds boot priorities to some container types where it'd be
beneficial. LXC allows containers with higher priority values to be
started ahead of others. The container default is 0 and all integers
greater than 0 will be started in descending order.

This change has no upgrade impact as the additional config is only used
on boot and will not require a container to be restarted.

Change-Id: I89703a24516d47d560c9c888538c384ad2228eb7
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2016-11-07 13:48:34 +00:00
Jenkins
d633726d47 Merge "Include barbican role in integrated release" 2016-11-02 19:54:48 +00:00
Jimmy McCrory
7eca22359f Include barbican role in integrated release
Add playbook, haproxy service configuration, variable definition,
and environment definition files required to deploy barbican as an
integrated role of openstack-ansible.

Change-Id: If87099958e0b1fc48866a468a47bb60bae622f28
2016-11-02 06:38:52 -07:00
Jimmy McCrory
2c6f0982ae Remove old secrets from user_secrets
Remove secrets that are no longer used from the base user_secrets.yml

Change-Id: I10c9db6befa4c4c9b8e308faa580fbe5e3ab57c4
2016-11-01 10:48:33 -07:00
Jenkins
1a2f9ac0ac Merge "Check for configured groups in the environment" 2016-11-01 15:34:54 +00:00
Nolan Brubaker
e0b58924a7 Check for configured groups in the environment
When defining a configuration, it's possible that the groups defined in
the openstack_user_config.yml file might not match those defined by the
env.d contents. This isn't strictly a problem - in most cases it's
ignored and will simply result in extra data. However, if keys in the
configuration and the environment are mismatched, it could result in
variable data not being mapped correctly in the resultant inventory.

This patchset extends the -c/--check parameter to compare the configured
groups against the environment's groups, and issue a warning if there is
a mismatch, which should help deployers diagnose some configuration
issues.

The warnings were not added to standard run operations due to the amount
of output generated on stdout by the JSON dump.

Change-Id: I7a7e52b31909e963873063e43e28a5bb9a6963fd
2016-10-28 16:00:33 -04:00
Nolan Brubaker
20e246de8f Remove ansible_ssh_host variable from inventory
Due to upstream Ansible deprecating the `ansible_ssh_host` variable,
this key is removed from the generated inventory in order to avoid
confusion. While Newton also supports Ansible 2.x, this change is
intended to only be in effect from Ocata forward.

From
http://docs.ansible.com/ansible/intro_inventory.html#hosts-and-groups:

"Ansible 2.0 has deprecated the “ssh” from ansible_ssh_user,
ansible_ssh_host, and ansible_ssh_port to become ansible_user,
ansible_host, and ansible_port. If you are using a version of Ansible
prior to 2.0, you should continue using the older style variables
(ansible_ssh_*). These shorter variables are ignored, without warning,
in older versions of Ansible."

Fixes-Bug: #1636606

Change-Id: If43b28247a9df3db76217b1147fab785f1235532
2016-10-27 12:39:47 -04:00
melissaml
9f23aad0ee Fix a grammatical error
This patch removes duplicate word.

Change-Id: I6450b6d8d214b4c735d55c74af47fd365d24486f
2016-10-22 15:03:18 +08:00
Jean-Philippe Evrard
3b1647c708 Set default keepalived cidr if none is provided
Even if this file is completely ignored because the role using it
is skipped, ansible parses the whole file. Any undefined variables
will cause a failure. Undefined variable was previously a way to
force failure if it was undefined, but now we have to do differently.

In the meantime, this is a quick fix to make sure we don't have
issues with undefined variables for non-multinode haproxy installs.

Change-Id: Ifd00f4eb0a0a3559d7d3bd3c5a4331798a3c96aa
Closes-Bug: 1631920
2016-10-12 10:09:56 +00:00
Jesse Pretorius
227f24f07e Always force handler execution
When a task fails in a playbook, the default behaviour results
in notified handlers not running. This can result in a
configuration change being executed, but the service not being
restarted.

This patch changes the default behaviour to force the handlers
to run when a playbook fails for any reason except a host being
unreachable.

Change-Id: I8a16bb1a5c04345e962ab01225f3d972781d9ed7
Reference: http://docs.ansible.com/ansible/playbooks_error_handling.html#handlers-and-failure
2016-10-07 17:31:39 +00:00
Andreas Jaeger
3f44361f29 Enable release notes translation
Releasenote translation publishing is being prepared. 'locale_dirs'
needs to be defined in conf.py to generate translated version of the
release notes.

Note that this repository might not get translated release notes - or
no translations at all - but we add the entry here nevertheless to
prepare for it.

Change-Id: Ief513115372a72d13ea68ba44b88a8407d20772b
2016-10-06 20:34:04 +02:00
Kevin Carter
f86e1eddb5 Update release note as the process has changed
The bind mount for "/var/log" is only done on greenfield deployments,
on upgrace this feature is disabled.

Change-Id: I60bad26260f21316455b3e7a0c02a31069d08b1a
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2016-10-04 18:05:01 +00:00
Donovan Francesco (drifterza)
9eb9fc55bc Adding Trove Horizon dashboard
Change-Id: I39fd55544d0df66223a6ffa9e8d62b65fc28044d
2016-10-03 16:11:36 +00:00
Donovan Francesco (drifterza)
951e241089 Add integrated Trove deployment.
Change-Id: Ic71703960e2259edd25faa3e992c7fa9c6d28674
2016-10-03 15:48:55 +00:00
melissaml
5bac2e595d Fix a few grammatical errors
This patch removes duplicate words.

Change-Id: I2bb782d444ac13cd2f59a710567d4a480171779f
2016-10-02 13:07:54 +08:00
Davanum Srinivas
dd4884fe81 Update reno for stable/newton
Change-Id: Ic05ec23d71f5c1eca55ebbd9400675aa01dc6941
2016-09-29 19:15:22 +00:00
Nolan Brubaker
ca7df2fa3f Use detailed arguments for main function
The previous behavior for main took an arbitrary dictionary and looked
for keys within it. To decouple the main function from the args
function, this change instead formalizes the names for the arguments
to main, allowing for documentation of the expectations.

Since Ansible's default expected argument is `--list` and that would
collide with the Python `list` builtin function, the `kwargs` argument
is added to act as a catch-all. In practice, while Ansible passes the
list argument in, it does not change the script's behavior.

Change-Id: I8a4c677b44b7c0fc6d95c0a5213306165b79971d
2016-09-28 17:00:36 -04:00
Jesse Pretorius
195b505dff Update all SHAs for 14.0.0 2016-09-27
This patch updates all the roles to the latest available stable
SHA's, copies the release notes from the updated roles into the
integrated repo, updates all the OpenStack Service SHA's, and
updates the appropriate python requirements pins.

Change-Id: Ib7bf91e0cccc10ebd704ea2a61de83b2d5df0c53
2016-09-27 15:05:51 +01:00
Jenkins
1186cd7049 Merge "Update the order of release note page" 2016-09-26 12:28:24 +00:00
Lu lei
b091fff4cf Update the order of release note page
In order to bring the release note ordering into line with
other OpenStack projects, the index is re-ordered to be in
chronological order.

Change-Id: Id5ba65809d4f3baac7ea16b0b4ee13dfc3a18ea8
2016-09-26 12:03:59 +00:00
Nolan Brubaker
8d711ae48d Add debug logging to dynamic inventory
Currently debugging the dynamic inventory file can be problematic,
requiring manual intervention with a debugger to step through function
calls and inspect data structures.

This patch adds a logging facility for outputting detailed debug logs.
The output is not intended for end users, and will not be called by
Ansible runs. Rather, it is meant for running manually to aid
contributing developers.

Change-Id: Ie160c556678859abf733ef23727a9f9bff48ff8b
2016-09-22 21:11:43 -04:00
Nolan Brubaker
18c9e1faee Add export host option for inventory-manage script
The export host option allows users to export their existing host
information for import into a third party system. The output is
'pivoted', so that the key is the host/container name, and the values
are the group memberships and hostvar information. Some top level
networking information, such as load balancer IP addresses, as well as
provider networks, are also provided.

Test scaffolding was added to ensure the export does what is intended.

The tox inventory environment was modified to do coverage testing of
both the dynamic_inventory.py and manage_inventory.py files. The
coverage data is erased between runs, since combined output lead to
incorrect results for dynamic_inventory.py.

Change-Id: I2caa5a0c070b12a74ac26334c63ac8d0de704042
2016-09-22 02:50:01 +00:00
Jesse Pretorius
f40ecdeba2 Update all SHAs for 14.0.0
This patch updates all the roles to the latest available stable
SHA's, copies the release notes from the updated roles into the
integrated repo, updates all the OpenStack Service SHA's, and
updates the appropriate python requirements pins.

Some adjustments are made to the sources-branch-updater script
for improved error detection and efficiency. Also, based on
https://review.openstack.org/371999 the ternary search/replace
is fixed.

Tempest and Rally repo sources are co-located in the repo_packages
files as neither of them implement stable/* branches.

The nova consoles (novnc/spice) are implemented in their own
repo_packages file in order to simplify doing the SHA updates.

Gnocchi implements a different style of releasing stable branches
so it is also implemented in its own repo_packages file.

Change-Id: I6fa4afab4203c9902ce70fa6bc49ad1dddb560b3
2016-09-21 09:44:48 +00:00
Michael Davies
6e50d69b22 os_ironic mysql password variable not updated
Ironic in OSA is currently broken as the ironic database
user isn't created, and consequently the ironic services can't
connect to the database. It broke back in patch 91deb13.

This patch corrects the openstack-ansible side of the problem.
Another patch will fix the os-ironic side.

Change-Id: I38aa44bc33a80bb6d53a66bce34aff57048a1af3
Partial-Bug: #1625081
Signed-off-by: Michael Davies <michael@the-davies.net>
2016-09-20 04:07:55 +00:00
Jesse Pretorius
bc8b321fe2 Update all SHAs for Newton 2016-09-16
This patch updates all the roles to the latest available SHA's,
updates all the OpenStack Service SHA's and also updates the
appropriate python requirements pins.

Change-Id: Ia9cb9dd47b391ebcbcc26d320245e3a7e4751568
2016-09-16 14:03:48 +00:00
Nolan Brubaker
518fb381c4 Add lxc_host dynamic group to inventory.
Previously, it was difficult to target only the hosts holding LXC
containers. This change will add a host to the implicit 'lxc_hosts'
group any time a container is created in association with that host.

Users cannot define this group in their configuration. Doing so will
result in an runtime error.

This approach allows for specific targeting without using complicated
Jinja calculations as seen in commit
76695012e6f45fe44beec6a5f67abee43881fbc2. As such, the work in that
review has been replaced with this change.

Change-Id: I10faf5880a61abcc77f017573e0fd76d033224eb
2016-09-16 02:31:50 +00:00
Jesse Pretorius
eeaa4334e4 Reduce the default fact gather subset
This patch implements a new default subset of facts being gathered
to a much smaller set. This should improve performance in large
environments. Deployers who need a greater subset are able to use
the standard Ansible environment variables to override our default
value.

Change-Id: I741228ba03ad5081fbea5833143fdf1f1e8d3623
2016-09-07 17:04:03 +00:00
Jesse Pretorius
851ac188d8 Fix role SHA's for Newton-3 release
Change-Id: Iac3fec6f70963e97d12cbe4fd8cafb05a99c56a2
2016-08-31 10:46:18 +01:00
Jenkins
fa9c114e51 Merge "Implement container bind mount for all logs" 2016-08-30 13:52:13 +00:00
Kevin Carter
992e616046
Implement container bind mount for all logs
All of the log directories for all containers will now be bind mounted to the
host. This change ensures that containers are not running into an issue with
Full file systems due to logs which is common when a container is backed by
a blocked device (lvm, zfs, btrfs).

Closes-Bug: #1588051
Change-Id: I25a481c0409f1a45494a8668f00c5393672e853c
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2016-08-29 21:59:42 -05:00
Jenkins
1fdfe7b3af Merge "Adding a playbook for deploying Sahara" 2016-08-26 23:13:38 +00:00
Jenkins
98eb4ea7ec Merge "Unbound DNS resolution containers" 2016-08-26 19:19:33 +00:00
Flavio Ramalho
943676b94d Adding a playbook for deploying Sahara
This change adds a playbook for deploying sahara as part of the
sahara role integration.

This change also adds variables needed for the installation of
the sahara-dashboard and its support by the ceilometer service,
which will be added on patches in their respective roles.

Change-Id: I782d74e09d1796744ece75d12aa9c65c9453be19
2016-08-26 18:20:53 +00:00
Logan V
d651ed70f4 Unbound DNS resolution containers
Optionally deploy unbound DNS caching resolvers in lieu of
managing /etc/hosts across all hosts.

This is an opt-in optimization providing centralized DNS
resolution containers to allow intra-cluster name resolution
identical to what openstack_hosts provides with its /etc/hosts
management.

Managing /etc/hosts is very inefficient and cumbersome in large
environments with lots of hosts, so this change allows for a
quicker and more consistent deployment using centralized resolvers.

Change-Id: Ibbc1fc77aa42c1a530e2f52a5c3c4ed86d0fe8ea
2016-08-26 10:11:22 -05:00
Jesse Pretorius
29f29e694d Add Magnum deployment to setup-openstack playbook
This patch adds the Magnum playbook to the setup-openstack meta
playbook to ensure that Magnum is deployed if the inventory
contains any appropriate hosts.

The release note for the new service has also been adjusted to
be more accurate.

Change-Id: I7634b10ca4f39e0aa203fed0cca9f795ee34e894
2016-08-25 11:27:52 +00:00
Jenkins
34b33fccff Merge "Add play to deploy Rally to the utility containers" 2016-08-25 09:02:04 +00:00
Kevin Carter
423c409a67 Remove the ansible.cfg file
The ansible.cfg file has been removed to allow a deployer to specify their
own configurations without having to modify the ansible.cfg file within the
playbooks directory.

Change-Id: I94a8647edd04c21c34f7892f3179a8aa66548ed3
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2016-08-25 02:06:14 +00:00
Travis Truman
c89f27772a Add play to deploy Rally to the utility containers
This play allows deployers to install and configure
Rally for post-deployment functional and performance testing

Depends-On: I3d5cc822cc0d3c2b0b3ba7b05a9fe1b6b9e3a839
Change-Id: I1c4567649e4e35641610f27eaf3b8a57c8a722cc
2016-08-25 01:17:02 +00:00
Logan V
cebce0c020 Project Calico integration
Integrate deployment for Project Calico's Neutron networking
plugin.

See http://docs.openstack.org/developer/networking-calico/
for more information about Calico.

Depends-On: I80546b6deefe0878398716d173b7dcc36c3bef3a
Depends-On: I02ba101a3dfdbb34b96a110f429cfa6d1f0e9863
Change-Id: I9e8e855c8aff8822878908ae75f913f0444a7303
2016-08-24 22:48:58 +00:00
Jesse Pretorius
5ec339c1f2 Automatically enable the cinder backup service
This patch implements an automated determination of whether the
cinder backup service should be enabled based on whether there
are swift hosts in the environment.

This reduces the number of variables a deployer needs to set in
order to have a functional environment.

Change-Id: I0fd9afea9e962b61d255b86ba894afb96e84e58f
2016-08-22 20:31:29 +00:00
Jesse Pretorius
64c6307e29 Automatically set swift as the glance default store
This patch implements an automated determination of whether glance
should have the default store set to swift based on whether there
are swift hosts in the environment.

This reduces the number of variables a deployer needs to set in
order to have a functional environment.

Change-Id: I6909ba2555ab13da5a49a25fb8462ae6a71552af
2016-08-22 18:30:15 +00:00
Jesse Pretorius
adebdb884a Allow the use of a pre-staged git cache
This patch provides the ability for the repo server to take advantage
of a pre-staged git cache on the deployment host, such as that provided
on OpenStack-CI's nodes.

This reduces the execution time of the build process by ensuring that
the git clone process only has to complete an update, instead of a
fresh clone.

The patch includes a change to the AIO bootstrap which checks for the
existance of a git cache in the location it is typically found in
OpenStack-CI. If that path exists it sets the repo_build_git_cache
variable. In a case where the AIO is not being built in OpenStack-CI
then the deployer may either use the same path, or provide the path
as an extra option when bootstrapping.

Change-Id: I0c9d574a7f694cd3772a68fcdc71673616ea8e3b
2016-08-22 15:16:38 +01:00
Nolan Brubaker
d68e65bfdd Add an inventory config check option
Previously there was no way to do a 'dry run' against a set of inventory
configuration files without actually writing the full inventory
structure to disk.

This change adds a simple check flag to the script, allowing users to
pre-validate their configurations prior to executing the Ansible
playbooks. No syntax validation happens against the YAML files; rather,
the dynamic_inventory.py script is executed and builds a full inventory
in memory, but does not write any output.

Currently, this is meant as a starting point. Further validation can
build from here, but the flag is largely meant to check for known
exceptions/errors early.

Change-Id: Ic58566ee124c824c8bba549ade46bce5c268905a
2016-08-20 21:02:01 +00:00
Jenkins
8acba26159 Merge "Limit LXC hosts playbook to container hosts only" 2016-08-20 19:22:38 +00:00
Logan V
45b96428e7 Limit LXC hosts playbook to container hosts only
This will limit the lxc-hosts-setup playbook to run against only
the hosts which will receive LXC containers. This prevents LXC
package installation and cache preparation on hosts such as
compute_hosts which will not build any containers.

Change-Id: I002158d6539603ddb86d4b7ea1e4a16bb4ced81f
2016-08-20 13:11:28 +00:00
Jesse Pretorius
abc1663ab3 Add ability to change apt/yum package state globally
This patch adds the ability for a deployer to change the desired state
for distribution packages globally through a single variable.

Change-Id: Ibffe78f0d49a419259622d5080cfc763424bda4d
2016-08-20 13:08:58 +00:00
Donovan Francesco
0461d79517 Adding Magnum-UI Horizon support
This patch adds the git source for the Magnum dashboard for Horizon to
ensure that the python package is built and installable.

Some minor changes are also made to the other dashboard plugins to
ensure that they are built based on the correct host group memberships.

Change-Id: Ie57fd875f17534215a21fc0ad2e2071b352b366d
Implements: blueprint role-magnum
2016-08-18 01:39:10 +00:00