Ansible 使用 ec2 標籤

Ansible 使用 ec2 標籤

我有一本包含動態 ec2 庫存的劇本,下圖是。

$ 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:

現在,如果我需要對特定標籤使用 set_facts ?例如,我需要使用這樣的東西。

由於我已經在使用動態庫存插件,所以我想它應該足夠簡單

- set_fact:
    deploy: uat
  when:  "ec2_tags/hostgroups('nonprod_uat')"
  • debug: var=hostvars 還為我提供了標籤信息,但需要知道如何使用它來在劇本上設置_facts

答案1

經過一些嘗試和錯誤後我自己得到了答案

  • set_fact:部署:uat 時:hostvars[inventory_hostname].tags.Environment == 'uat'

相關內容