Ich habe ein Playbook mit dynamischem EC2-Inventar, unten ist die Grafik.
$ ansible-inventory -i inventory/dynamic_inventory/uat_aws_ec2.yaml --graph
@all:
|--@aws_ec2:
| |--xx.xxx.xx.xx
| |--xx.xxx.xx.xx
| |--xx.xxx.xx.xx
|--@nonprod_uat:
| |--xx.xxx.xx.3
| |--xx.xxx.xx.1
| |--xx.xxx.xx.2
|--@uat_auth:
| |--xx.xxx.xx.xx
|--@uat_web:
| |--xx.xxx.xx.xx
|--@ungrouped:
Was ist nun, wenn ich set_facts für ein bestimmtes Tag verwenden muss? Beispiel: Ich muss so etwas verwenden.
Da ich das Plugin bereits für die dynamische Bestandsaufnahme verwende, sollte es einfach genug sein, denke ich
- set_fact:
deploy: uat
when: "ec2_tags/hostgroups('nonprod_uat')"
- debug: var=hostvars gibt mir auch die Tag-Informationen, aber ich muss wissen, wie ich sie verwende, um set_facts im Playbook zu setzen
Antwort1
Habe die Antwort selbst nach einigem Ausprobieren bekommen
- set_fact: Bereitstellung: uat wann: hostvars[Inventar-Hostname].tags.Environment == 'uat'