【问题标题】:Ansible executes previous task command and failsAnsible 执行上一个任务命令并失败
【发布时间】:2017-09-07 02:12:31
【问题描述】:

我有一本剧本,但由于某种未知原因,Ansible 2.2.1.0 失败了

剧本任务(最后一项和失败的一项)

   - name: Extract out tag string for {{ image }}
     shell: docker inspect -f "{{ '{{' }}.Id {{ '}}' }}" {{ tagged_image_full }} | awk -F ":" '{print $2}' | cut -c 1-12
     register: image_tag
     when: image is defined

   - name: Save {{ tagged_image_full }} image
     shell: docker save {{ tagged_image_full }} | gzip -c >> {{ save_path }}{{ image }}_{{ image_tag.stdout }}_{{ tag }}.tgz
     when: tagged_image_full is defined

详细输出是

TASK [为存在洞察提取标签字符串] ***************************** 更改:[docker01] => {"更改":true,"cmd":"docker 检查-f \"{{.Id }}\" 存在洞察:origin_release_1_4_0-17 | awk -F \":\" '{打印 $2}' | 剪切-c 1-12”,“增量”:“0:00:00.025295”,“结束”:“2017-04-11 15:17:13.800655”,“rc”:0,“开始”:“2017-04-11 15:17:13.775360”, “stderr”:“”,“stdout”:“d0ca3e53a2ce”,“stdout_lines”: ["d0ca3e53a2ce"], "警告": []}

任务 [保存存在洞察:origin_release_1_4_0-17 图像] ************************ 致命:[docker01]:失败! => {"failed": true, "msg": "{u'cmd': u'docker inspect -f \"{{.Id }}\" 存在洞察:origin_release_1_4_0-17 | awk -F \":\" \'{打印 $2}\' | cut -c 1-12', u'end': u'2017-04-11 15:17:13.800655', u'stdout': u'd0ca3e53a2ce', u'changed': True, u'start': u'2017-04-11 15:17:13.775360', u'delta': u'0:00:00.025295', u'stderr': u'', u'rc': 0, 'stdout_lines': [u'd0ca3e53a2ce'], u'warnings': []}: 模板错误 模板化字符串时:意外的'.'。字符串:docker 检查 -f \"{{.Id }}\" 存在洞察:origin_release_1_4_0-17 | awk -F \":\" '{打印 $2}' |剪切 -c 1-12"}

为什么 Ansible 试图执行之前的任务 shell 而不是失败任务中定义的 shell 指令?

有什么线索吗?

【问题讨论】:

标签: ansible


【解决方案1】:

至少在 docker inspect 命令方面,Ansible 2.2.1.0 似乎改变了转义。

这是提取 Docker Image Id 的更正任务

   - name: Extract out tag string for {{ image }}
     shell: docker inspect -f \{\{'.Id'\}\} {{ tagged_image_full }} | awk -F ":" '{print $2}' | cut -c 1-12
     register: image_tag
     when: image is defined

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-07
    • 2018-07-04
    • 1970-01-01
    • 1970-01-01
    • 2023-03-15
    • 1970-01-01
    • 2013-07-15
    相关资源
    最近更新 更多