At the moment we always do attempt to reset passwords for the
keystone services, which in some cases leads to race conditions in
services. Thus, running a role is not idempotent which we fix by
introducing a `service_update_password` variable. So whenever password
needs to be reseted/updated, the variable should be supplied for that.
Change-Id: I11b1046ea91cef7de0b2f6433baabbb144e07700
Closes-Bug: #2023370
This change enables us to supply list of vhosts that needs to be
created or deleted, rather then support only single vhost creation
We also reduce code duplication by leveraging task includes.
Depends-On: https://review.opendev.org/c/openstack/openstack-ansible/+/880031
Change-Id: I76548f45a20db29c1bfd5db332b490b670d973a4
Add file to the reno documentation build to show release notes for
stable/zed.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/zed.
Sem-Ver: feature
Change-Id: I3ef26e106fa982f200d12fa8d39928b30ba32672
When deploying a routed environment with layer 3 pods it is
necessary to restrict which hosts have access to physical networks
(net_name) in Neutron's config files. At present it is necessary to
create specific Ansible groups and use 'group_binds' to indicate
where to deploy this configuration.
In more complex deployments where hosts within a 'pod' have mixed
capabilities or purposes this requires the Ansible groups to be
very specific and they become hard to manage.
By adding reference_group support here and setting this to the
'pod' identifier (for example 'rack1_hosts'), the group_binds
can be used to narrow down the hosts within this group (for example
'compute_hosts' or 'compute_hosts_with_sriov').
Change-Id: I67e2e6c41bf7162534a35577ea285aba6ae30663
The sync from https://review.opendev.org/733244 updated to
openstackdocstheme 2.2.1 and reno 3.1.0 versions.
Set openstackdocs_pdf_link to link to PDF file. Note that
the link to the published document only works on docs.openstack.org
where the PDF file is placed in the top-level html directory. The
site-preview places the PDF in a pdf directory.
openstackdocstheme renames some variables, so follow the renames
before the next release removes them. A couple of variables are also
not needed anymore, remove them.
See also
http://lists.openstack.org/pipermail/openstack-discuss/2020-May/014971.html
Change-Id: Id202db74fa30cc83be912190a005066f093545e4
Add file to the reno documentation build to show release notes for
stable/ussuri.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/ussuri.
Change-Id: Ia7ca418acc438fefd822af02d7bcf3c2d90c0190
Sem-Ver: feature
New version of openstackdocstheme (Victoria+) respects pygments_style.
Since this repo is using now Victoria (master) requirements but has
not branched for Ussuri yet, it uses the new version.
Change pygments_style to 'native' since old theme version always used
'native' and the theme now respects the setting and using 'sphinx' can
lead to some strange rendering.
Change-Id: Idbbf1481e0a176c2d3346e5e1bdc017b6658327d
This repo is now testing only with Python 3, so let's make
a few cleanups:
- Remove setup* files, those are not needed anymore
- Cleanup */source/conf.py to remove now obsolete content.
- remove install_cmd, move constraints into deps, cleanup
tox.ini
- Enable warnings for docs build, fix problems
Change-Id: I3f91f00195f869c6ec09af1a88cfd189e8a71254
Add file to the reno documentation build to show release notes for
stable/train.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/train.
Change-Id: If61a5a7f391370c84539ea27f4c09a9539c368da
Sem-Ver: feature
This module is not used in the openstack-ansible project and there is a
native ansible module for the same purpose. There will be no supporting
changes for this fix to remove it from use because it is not being used.
Patch set 2: Add release note
Change-Id: Ia516ccfc024218ccfb143d600268875c9013cc22
Closes-bug: #1826247
The ansible urlsplit filter added in 2.4 means that maintaining the
filters netloc, netloc_no_port and netorigin should no longer be
necessary.
All usages of these filters within other openstack repos have been
updated to use urlsplit and merged.
Change-Id: Ief1ec06e205bae7ec114fe0b9bd7d9c4973383dd
Closes-Bug: #1820830
Add file to the reno documentation build to show release notes for
stable/stein.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/stein.
Change-Id: I458a7a078687b82d6892b692c42076ccb34e937d
Sem-Ver: feature
The config_template action module has now been moved into its own git
repository (openstack/ansible-config_template). This has been done to
simplify the ability to use the plugin in other non OpenStack-Ansible
projects.
As part of this, we now need to remove the environment settings given
to ansible so that the common tests repo settings in ansible.cfg take
effect.
Related-Bug: 1791258
Depends-On: https://review.openstack.org/635841
Change-Id: I3a7d8c0c248febc4223029e076062ca68312b104
inventory_hostname is not reliable to be used as container_name. When
delegating in 2.6+, the inventory_hostname of the delegating host is
passed to the connection plugin, additionally when a host doesn't have
its own container_name variable a cached inventory_hostname is used in
its place.
To get the connection plugin working with Ansible 2.6 this change
essentially allows the container_check to fall through when delegating
to physical hosts or hosts not in the inventory by:
- removing inventory_hostname as a fallback for container_name
- unsetting container_name when delegating to a known physical host
- unsetting container_name when delegating to a host not mentioned in
the inventory
container_name can no longer be used as a group variable based on
inventory_hostname, it will need to be an inventory/host variable for
each individual host.
Also, when container_user is used the remote_tmp path needs to be set to
a system writable directory instead of the root user's home.
Change-Id: If2eb4c16273e19599f6ec3f0cba6b3573912c6a0
The indexing of distro packages by the py_pkgs lookup was
intended for a purpose which never came to fruition. As
such it is not used. The resulting output is somewhat
confusing and very verbose. As such, I think it's best
to remove it.
Change-Id: I0d133804a91feae03e44047eede589c75806b2da
The ssh plugin will now use the `nsenter` command to attach to the
container instead of splitting the command functionality between nspawn
and lxc. With the use of `nsenter` we can now selectively use different
namespaces when remotely executing against a container. A new option was
added to the plugin for "container_namespaces" which is a user provided
interface for passing in the namespaces used to attach to the container.
If this option is undefined the default namespaces will be used for full
container isolation.
Change-Id: I904ee68bbc59a0ee4458401a243246bb3f4c3523
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
This plugin is no longer used and conflicts with Ansible 2.4. Master
has recently moved to Ansible 2.4 and placed all of the group_vars back
into the inventory path. Being that the plugin is no longer required
and results in a runtime warning[0] it's being removed.
[0] - http://paste.openstack.org/show/628674/
Change-Id: If91214dd2d2a36da82e5433a3a4a36c3946cbf4e
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
Release notes are version independent, so remove version/release
values. We've found that projects now require the service package
to be installed in order to build release notes, and this is entirely
due to the current convention of pulling in the version information.
Release notes should not need installation in order to build, so this
unnecessary version setting needs to be removed.
This is needed for new release notes publishing, see
I56909152975f731a9d2c21b2825b972195e48ee8 and the discussion starting
at
http://lists.openstack.org/pipermail/openstack-dev/2017-November/124480.html
.
Change-Id: I1694a1b7da68e29e83e2931d40befc1683719c2c
This patch implements an initial set of jobs intended to match
the current job execution method. It does not intend to improve
how the jobs are executed - only to replicate what is currently
in openstack-infra/openstack-zuul-jobs and provide the platform
to iterate on.
Change-Id: Id5a41c4f09bfc63b373e83493dd85a53850bd71c
When accessing nested facts, such as in ansible_local sections, guard
statements in the when clause can get quite long, due to having to
repeate the 'in/not in' logic for every key at every level.
The get_nested filter attempts to instead to move the guard into a
single line, making the conditions easier to write and maintain.
As example,
('openstack_ansible' not in ansible_local or
'swift' not in ansible_local['openstack_ansible'] or
'venv_tag' not in ansible_local['openstack_ansible']['swift'] or
ansible_local['openstack_ansible']['swift']['venv_tag'] == swift_venv_tag)
could be rewritten as
get_nested(ansible_local, 'openstack_ansible.swift.venv_tag') == swift_venv_tag
Change-Id: I3b43c25c8783c43cf5285f2b3e7267b2c5712ea0
It is sometimes useful to tell ConfigTemplateParser to write
out options that are valueless and not suffixed with '=' or ':',
such as when overriding a my.cnf.
This commit adds the 'ignore_none_type' attribute to the config_template
module. If this attribute is set to false, then valueless options will be
written out to the resultant INI file as-is, without the '=' or ':' suffix.
Change-Id: I5c88b2019c01b44193a5d0df9299ecce6de52f01
Partial-Bug: #1693234
As part of the docs migration work[0] for Pike we need to switch to use the
openstackdocstheme.
[0]https://review.openstack.org/#/c/472275/
Change-Id: I66ea11e32ec9736e2376027863723c19c07a32fb
As of Ansible 2.3, the os_network module now allows more additional
options for 'provider_network_type'[0]. Use of OSA's neutron plugin can
be removed.
[0] https://github.com/ansible/ansible-modules-core/issues/5589
Change-Id: If74185ecca1ea639c2e1526b5542e89dd533084b
Implements: blueprint use-std-ansible-modules
This opens the door to using group_vars and host_vars in
userspace, by allowing the user to define a ":" delimited list
of folder that will then be used by a vars_plugin, and (maybe
later) by the inventory.
This can't override group_vars due to ansible precedence.
We could technically have this override done by moving the
group_vars into a different folder and adding it to these
environment variables.
Change-Id: Id22e82b01b08885a1c7b516818ca07e75f6d558f
There is no usecase for having 2 endpoints that have the same Region,
interface, service_name and service_type.
The keystone module should default to update these endpoints if the url
is different, but the Region, interface, service_name and service_type
match.
This will make the default behaviour of state "present" to match that of
state "update".
Change-Id: I0ade538e20f2a926b33c1637446c2d4f650cd13d
This change adds the new attribute
``sriov_host_interface`` in order to map ml2 network
names to physical SR-IOV capable network interfaces.
Co-Authored-By: James Denton <james.denton@rackspace.com>
Change-Id: Ia62725e2369f75000157e0ab2c3f858e61fef10d
Closes-Bug: #1653283
With the use of this library replaced by upstream Ansible modules it's
no longer necessary to carry it.
Closes-Bug: 1538642
Change-Id: I55591132180eec99ce9b9bc38caa996b01d18949
Depends-On: Ic98613c37069ccb2ec1bc9a7644c922cc5b37e22
Depends-On: I017303e9a731ebc60315ea1784ba184a8294b08e
Depends-On: If0e36c61307056c8786c67b60fd56b03f2ad7bda
With the use of this library replaced by upstream Ansible modules it's
no longer necessary to carry it.
Change-Id: Iedc9c18a457eb2b620538c693337860b80a85123
Depends-On: I8c165531407c6b6aa8e5910cb28ae610b53e2ee5
get_networks will return network information, and will fail if the
specified "net_name" network is not present.
If no "net_name" is specified the network information will be
returned without performing the check on the existence of "net_name"
network within neutron.
Change-Id: I01775c9b29e312cc6696ffdc708befc46d11bf52
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: I22dc695c28fe800a16f0ec14f6cbeb4d16319192