tripleo-ansible/tripleo_ansible/roles/tripleo-ceph-uuid
John Fulton eca6cd03e7 Inherit calling Ansible's environment when running ceph-ansible
When config-download runs ceph-ansible it does so by calling
Ansible from within Ansible. This change adds a new boolean,
ceph_ansible_inherits_calling_ansible_environment (default:
true), which passes all ANSIBLE_* environment variables to
the nested Ansible execution. If a config-download user
exported a variable, e.g. ANSIBLE_PRIVATE_KEY_FILE, then
they might be surprised if they got to the Ceph installation
and it failed because Ansible was unable to SSH into the
target nodes because it didn't have that environment variable
set. Rather than require the user to know about the nested
execution and use the CephAnsibleEnvironmentVariables parameter,
assume they want the same variables passed.

Required TripleO defaults for ceph-ansible still take precedence
over config-download environment variables; ANSIBLE_ROLES_PATH
still refers to ceph-ansible roles, not config-download roles.
CephAnsibleEnvironmentVariables takes precedence over both the
calling Ansible environment variables and TripleO defaults for
ceph-ansible.

Change-Id: I428f6deb416b540dae552b5fc7a778cbc7505e8c
2019-08-08 06:48:07 -04:00
..
meta Introduce ansible roles for ceph preparation 2019-06-29 08:57:33 -04:00
molecule/default Add molecule test structure to ceph roles 2019-07-24 10:47:34 -05:00
tasks Inherit calling Ansible's environment when running ceph-ansible 2019-08-08 06:48:07 -04:00
README.md Introduce ansible roles for ceph preparation 2019-06-29 08:57:33 -04:00

Ansible Role to gather node UUIDs for node-specfic overrides

Populates the host_vars of the ceph-ansible working directory, as provided by the tripleo-ceph-work-dir role, by mapping each hostname to its UUID. The UUID is determined by running the dmidecode -s system-uuid command on each node with Ansible. This role creates and executes its own playbook. This role sets up the host_vars directory used by ceph-ansible so that TripleO's "node specific overrides" can be used to override a particular parameter for only a subset of hosts. The most popular usecase for this role is to pass a different list of block devices to be used as OSDs for a subset of servers which differ from the majority of servers.

Requirements

None

Role Variables

None

Dependencies

  • tripleo-ceph-common
  • tripleo-ceph-work-dir