60750a2796
For nova, neutron and cinder, haproxy service is configured before playbooks from common-playbooks/ are included(and facts for these hosts are gathered). Eventually, haproxy config tasks are executed without common facts. It may lead to several corner cases. For example, after facts cache expires and user runs os-nova-install.yml, haproxy config('Create haproxy service config files' task) will fail because `haproxy_service_configs` uses `nova_console_type` variable which needs `ansible_facts['architecture']`. It can be easily reproduced with: ``` rm -rf /etc/openstack_deploy/ansible_facts/ && \ openstack-ansible /opt/openstack-ansible/playbooks/os-nova-install.yml ``` As a solution, this change gathers facts at the beginning of os-<service>-install.yml playbooks, instead of doing this inside common-playbooks/<service>.yml. This bug was not detected by CI because during deployment process, hardware facts are gathered for all hosts (at least) by security-hardening.yml. As long as they exists in cache everything works fine. Change-Id: I27073a1bf85294ff65bde24cae939f28f5c69bd7 |
||
---|---|---|
deploy-guide/source | ||
doc | ||
etc | ||
inventory | ||
osa_toolkit | ||
playbooks | ||
releasenotes | ||
scripts | ||
tests | ||
zuul.d | ||
.ansible-lint | ||
.gitignore | ||
.gitreview | ||
ansible-collection-requirements.yml | ||
ansible-role-requirements.yml | ||
ansible-role-requirements.yml.example | ||
bindep.txt | ||
CONTRIBUTING.rst | ||
global-requirement-pins.txt | ||
LICENSE.txt | ||
README.rst | ||
requirements.txt | ||
run_tests.sh | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
tox.ini | ||
Vagrantfile |
Team and repository tags
OpenStack-Ansible
OpenStack-Ansible is an official OpenStack project which aims to deploy production environments from source in a way that makes it scalable while also being simple to operate, upgrade, and grow.
For an overview of the mission, repositories and related Wiki home page, please see the formal Home Page for the project.
For those looking to test OpenStack-Ansible using an All-In-One (AIO) build, please see the Quick Start guide.
For more detailed Installation and Operator documentation, please see the Deployment Guide.
If OpenStack-Ansible is missing something you'd like to see included, then we encourage you to see the Developer Documentation for more details on how you can get involved.
Developers wishing to work on the OpenStack-Ansible project should always base their work on the latest code, available from the master GIT repository at Source.
If you have some questions, or would like some assistance with
achieving your goals, then please feel free to reach out to us on the OpenStack Mailing Lists
(particularly openstack-discuss) or on IRC in
#openstack-ansible
on the OFTC network.
OpenStack-Ansible Roles
OpenStack-Ansible offers separate role repositories for each individual role that OpenStack-Ansible supports. For individual role configuration options, see the Role Documentation.
An individual role's source code can be found at: https://opendev.org/openstack/openstack-ansible-<ROLENAME>.
Resources
- License: Apache License, Version 2.0
- Documentation: https://docs.openstack.org/openstack-ansible/latest/
- Source: https://opendev.org/openstack/openstack-ansible
- Bugs: https://bugs.launchpad.net/openstack-ansible
- Release notes: https://docs.openstack.org/releasenotes/openstack-ansible/