Ansible 解析文件并读入变量
Ansible parse file and read into variables
我有一个我必须读取的文件,它是这样写的:(不能更改)
user_passwords:
- { username: user1, plaintextPassword: password }
- { username: user2, plaintextPassword: password }
我需要读取文件,然后将上面的值赋给以下变量,并将它们写入文件。
我不确定如何在 ansible 中循环这个。
我需要写的变量和值:
用户 1:用户 1
user1password: 密码
用户 2:用户 2
user2password: 密码
这是我试过的方法:
- name: Read file
include_vars:
file: myfile
- name: assign variables
user1: {{ username.1 }}
user1password {{ plaintextPassword.1 }}
user2: {{ username.2 }}
user2password: {{ plaintextPassword.2 }}
loop: user_passwords
但这并没有给我任何结果。有人有什么想法吗?
对于你的情况,你不需要循环。按 user_passwords
列表中的位置访问相应的值
- name: Read file
include_vars:
file: myfile
- name: assign variables
user1: {{ user_passwords[0]['username'] }}
user1password {{ user_passwords[0]['plaintextPassword'] }}
user2: {{ user_passwords[1]['username'] }}
user2password: {{ user_passwords[1][' plaintextPassword'] }}
我有一个我必须读取的文件,它是这样写的:(不能更改)
user_passwords:
- { username: user1, plaintextPassword: password }
- { username: user2, plaintextPassword: password }
我需要读取文件,然后将上面的值赋给以下变量,并将它们写入文件。
我不确定如何在 ansible 中循环这个。
我需要写的变量和值: 用户 1:用户 1 user1password: 密码 用户 2:用户 2 user2password: 密码
这是我试过的方法:
- name: Read file
include_vars:
file: myfile
- name: assign variables
user1: {{ username.1 }}
user1password {{ plaintextPassword.1 }}
user2: {{ username.2 }}
user2password: {{ plaintextPassword.2 }}
loop: user_passwords
但这并没有给我任何结果。有人有什么想法吗?
对于你的情况,你不需要循环。按 user_passwords
列表中的位置访问相应的值- name: Read file
include_vars:
file: myfile
- name: assign variables
user1: {{ user_passwords[0]['username'] }}
user1password {{ user_passwords[0]['plaintextPassword'] }}
user2: {{ user_passwords[1]['username'] }}
user2password: {{ user_passwords[1][' plaintextPassword'] }}