【发布时间】:2021-12-17 09:31:14
【问题描述】:
我正在尝试读取包含标签 !vault 的 YAML 文件。我得到了错误:
无法确定标签“!vault”的构造函数
看了几篇博客,我明白我需要指定一些构造函数来解决这个问题,但我不清楚如何去做。
import yaml
from yaml.loader import SafeLoader
with open('test.yml' ) as stream:
try:
inventory_info = yaml.safe_load(stream)
except yaml.YAMLError as exc:
print(exc)
User = inventory_info['all']['children']['linux']['vars']['user']
key = inventory_info['all']['children']['linux']['vars']['key_file']
我正在使用的 YAML 文件:
all:
children:
rhel:
hosts: 172.18.144.98
centos:
hosts: 172.18.144.98
linux:
children:
rhel:
centos:
vars:
user: "o9ansibleuser"
key_file: "test.pem"
ansible_password: !vault |
$ANSIBLE_VAULT;2.1;AES256
3234567899353936376166353
【问题讨论】:
-
为此您需要一个构造函数。因此Checkout this link 充分使用!
标签: python yaml pyyaml ansible-vault