我有与像不同的名字字典
vars:
images:
- foo
- bar
不,我要检出库,然后建造码头工人的图像只有当源发生了变化。 由于越来越UND构建图像的源是除了名的所有项目一样,我创建与任务with_items: images
,并尝试与注册结果:
register: "{{ item }}"
并且还试图
register: "src_{{ item }}"
然后我尝试以下conditon
when: "{{ item }}|changed"
和
when: "{{ src_item }}|changed"
这总是导致fatal: [piggy] => |changed expects a dictionary
那么,怎样才能正确地我保存的变量名的操作基于我遍历列表上的结果吗?
更新:我沃尔德想有这样的事情:
- hosts: all
vars:
images:
- foo
- bar
tasks:
- name: get src
git:
repo: git@foobar.com/repo.git
dest: /tmp/repo
register: "{{ item }}_src"
with_items: images
- name: build image
shell: "docker build -t repo ."
args:
chdir: /tmp/repo
when: "{{ item }}_src"|changed
register: "{{ item }}_image"
with_items: images
- name: push image
shell: "docker push repo"
when: "{{ item }}_image"|changed
with_items: images