Ansible语法 - 校验和部署

时间:2017-05-09 16:08:17

标签: deployment syntax ansible nexus checksum

我正在编写一个脚本,允许我的部署返回nexus工件部署的校验和。 when:条件下的所有内容都是脚本的新内容。这里没有定义变量,例如checksum,但我在其上放置了一个默认过滤器,以便Ansible在找不到值时仍然可以使用变量。

with_indexed_items: app_deployments.keys()|sort
when: |
    deploy_results.results[item.0].md5sum|d().local|d()|match(nx_app_deployments[item.1].checksum|d(deploy_results.results[item.0].md5sum)

不幸的是,我一直受到这个错误的影响(很可能是由于语法原因)。

Error: TASK: [nexusArtifacts | STAGE | Stage deployments] ****************************
fatal: [ari001-app1] => Failed to template {% if deploy_results.results[item.0].md5sum|d().local|d()|match(nx_app_deployments[i                                                                                tem.1].checksum|d(deploy_results.results[item.0].md5sum) and
stageNexus|d()|bool and
app_deployments[item.1].name is defined and
app_deployments[item.1].active|d(1)|bool and
deploy_toggles|d({})[item.1]|d(1)|bool and
(item in eapDeployList|d(item.1) or 'all' in eapDeployList|d(item)) and
(app != 'springBatch' or
    item in sbDeployList|d(item.1)|listParse) and
item in key_list|d([item.1])
 %} True {% else %} False {% endif %}: template error while templating string: unexpected "}", expected ")"

FATAL: all hosts have already failed -- aborting

对此的任何帮助将不胜感激。非常感谢!

1 个答案:

答案 0 :(得分:0)

match(

未终止)