Dictionary 正在将Ansible字典列表转换为未按预期显示的单个列表
在我的代码中,jenkins输出中只显示最后一个字符串列表。当然,应该列出所有其他字典值。我犯了什么错误。下面是输出示例代码。转换的实际输出和字典转换的预期输出 字典中的值样本Dictionary 正在将Ansible字典列表转换为未按预期显示的单个列表,dictionary,ansible,Dictionary,Ansible,在我的代码中,jenkins输出中只显示最后一个字符串列表。当然,应该列出所有其他字典值。我犯了什么错误。下面是输出示例代码。转换的实际输出和字典转换的预期输出 字典中的值样本 TASK [Task : Task 1 Name *** skipping: [123.23.22.123] => (item=fileName1.xml) skipping: [123.23.22.123] => (item=fileName2.rar) ok: [123.23.22.123] =>
TASK [Task : Task 1 Name ***
skipping: [123.23.22.123] => (item=fileName1.xml)
skipping: [123.23.22.123] => (item=fileName2.rar)
ok: [123.23.22.123] => (item=fileName3.png) => {
"msg": [
[
"/home/nityo/host/fileName3.png.25751.2020-08-21@20:50:59~"
]
]
}
skipping: [123.23.22.123] => (item=fileName4.html)
ok: [123.23.22.123] => (item=fileName5.war) => {
"msg": [
[
"/home/nityo/host/fileName5.war.backup21092020"
]
]
}
ok: [123.23.22.123] => (item=fileName6.war) => {
"msg": [
[
"/home/nityo/host/fileName6.war.backup21092020",
"/home/nityo/host/fileName6.war.backup19092020"
]
]
}
我的任务代码
- name: Transform value
set_fact:
dictlist: "{{ item.value[2:] }}"
with_dict:
- "{{ configFiles }}"
- "{{ mavenFiles }}"
- "{{ content }}"
- name: Task B ***************************************************************
debug:
msg: "{{ item }}"
loop: "{{ dictlist }}"
when: dictlist is defined
正在显示的样本输出
TASK [Task : Task B ***************************************************************] ***
ok: [123.23.22.123] => (item=/home/nityo/host/fileName6.war.backup21092020) => {
"msg": "/home/nityo/host/fileName6.war.backup21092020"
}
ok: [123.23.22.123] => (item=/home/nityo/host/fileName6.war.backup19092020) => {
"msg": "/home/nityo/host/fileName6.war.backup19092020"
}
预期产量
TASK [Task : Task B ***************************************************************] ***
ok: [123.23.22.123] => (item=/home/nityo/host/fileName3.png.25751.2020-08-21@20:50:59~) => {
"msg": "/home/nityo/host/fileName3.png.25751.2020-08-21@20:50:59~"
}
ok: [123.23.22.123] => (item=/home/nityo/host/fileName5.war.backup21092020) => {
"msg": "/home/nityo/host/fileName5.war.backup21092020"
}
ok: [123.23.22.123] => (item=/home/nityo/host/fileName6.war.backup21092020) => {
"msg": "/home/nityo/host/fileName6.war.backup21092020"
}
ok: [123.23.22.123] => (item=/home/nityo/host/fileName6.war.backup19092020) => {
"msg": "/home/nityo/host/fileName6.war.backup19092020"
}
问题在于
dictlist:“{{item.value[2:::}}}”
这将始终用最后一个值覆盖dictlist
。您需要检查如何附加到列表或合并列表 您可以详细说明这个
dictlist:{(dictlist | default([])+item.value}}”