为inventory.yml中定义的dict中传递错误



在我的yaml库存文件中,我有以下片段:

docker_env: {
"SHOPIFY_PAYMENTS": 1,
"SHOPIFY_PROMISE_DATES": 1
}

其定义了dict.

在我的剧本中,我有这样一个:

name: Start django container
docker_container:
image: "{{ image_name }}"
labels: "{{ django_container_labels }}"
...
env: "{{ docker_env }}"

然而,我得到了这个错误:

TASK [Start django container] 
fatal: [...growthpath.com.au]: FAILED! => {"changed": false, "msg": "Non-string value found for env option. Ambiguous env options must be wrapped in quotes to avoid them being interpreted. Key: SHOPIFY_PAYMENTS"}

env的文档说:
键、值对的字典">

"标签";作品它有相同的文档。此变量在variables.yml(一个包含的文件(中定义为:

django_container_labels: {
traefik.http.routers.django-api-router.entrypoints: "web_http,web_https",
....

换句话说,我看不出docker_env和django_container_labels之间有任何真正的区别,除了一个有效,另一个无效。

好的。解决方法是这样做,引用值。错误消息比我预期的要精确。

docker_env: {
"SHOPIFY_PAYMENTS": "1",
"SHOPIFY_PROMISE_DATES": "1"
}

最新更新