【发布时间】:2020-06-04 01:21:28
【问题描述】:
在 ansible 中,vmware_guest_info 模块会给我们一个虚拟机上的标签列表,但不包括关于这些标签的任何信息:
“标签”:[
“10.16.3”,
“迪克”,
“发展”
],
vmware_tag_info 模块为我们提供了一个带有这些标签信息的字典,包括描述和 ID,但不包括标签名称:
“10.16.3”:{
"tag_category_id": "urn:vmomi:InventoryServiceCategory:6eb9d643-8fa3-42a1-8b50-78a1c6e99867:GLOBAL",
"tag_description": "10.16.3",
"tag_id": "urn:vmomi:InventoryServiceTag:ca46ab80-be91-4c3a-8f9f-019d163dd954:GLOBAL",
"tag_used_by": []
},
vmware_category_info 模块为我们提供了一个包含标签 ID 和名称的列表。
“tag_category_info”:[
{
“category_associable_types”:[],
"category_cardinality": "SINGLE",
"category_description": "nodeVersion",
"category_id": "urn:vmomi:InventoryServiceCategory:6eb9d643-8fa3-42a1-8b50-78a1c6e99867:GLOBAL",
"category_name": "nodeVersion",
“category_used_by”:[]
},
]
所以看来我需要结合三个不同列表的输出来获取标签值、标签名称和标签ID。
我真的希望有人已经这样做了。如果没有,谁能解释一下如何迭代 vmware_tag_info 和 vmware_category_info 的输出,并找出 tag_category_id 何时与 category_id 匹配?
【问题讨论】: