Delegate from first available compute host
The 'Drop authorized keys file script locally' task shouldn't specifically require that the first member of the nova_compute group be available. If the playbook is run with a limit excluding that host, the task will always end up being skipped. Use an intersect filter to find the first available compute host within the play and use that as the delegation host. Closes-Bug: 1632447 Change-Id: Id12fd6cee104a6fb705acc66704f21d629694d84
This commit is contained in:
parent
c39ab703b9
commit
3f91e25a0a
@ -13,6 +13,13 @@
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
- name: Determine first available nova compute host
|
||||
set_fact:
|
||||
first_available_compute: "{{ groups['nova_compute'] | intersect(play_hosts) | first }}"
|
||||
tags:
|
||||
- nova-key
|
||||
- nova-key-distribute
|
||||
|
||||
# The authorized key file script will be generated locally and copied to all known
|
||||
# compute hosts within the environment. This script will add a key to the nova
|
||||
# user's .ssh/authorized_keys file if it's not already found.
|
||||
@ -22,7 +29,7 @@
|
||||
dest: "/var/tmp/openstack-nova-key.sh"
|
||||
mode: "0755"
|
||||
delegate_to: localhost
|
||||
when: inventory_hostname == groups['nova_compute'][0]
|
||||
when: inventory_hostname == first_available_compute
|
||||
tags:
|
||||
- nova-key
|
||||
- nova-key-distribute
|
||||
|
Loading…
Reference in New Issue
Block a user