我正在尝试在ECS任务中设置几个环境变量,但是这些变量似乎从未传递过(也不抛出任何错误)。
此功能是否损坏?我已经尝试了无数次,但似乎没有任何效果。
使用: Ansible v2.9.6 aws-cli v1.16.162 Python v2.7.5
例如
- name: Create task def
ecs_taskdefinition:
revision: 1
launch_type: FARGATE
cpu: 256
memory: 512
network_mode: awsvpc
state: present
family: simpsons
execution_role_arn: "arn:aws:iam::XXXXXXXXXXXXXX:role/ecsTaskExecutionRole"
region: "{{ aws_region }}"
aws_access_key: "{{ ecs_access_key }}"
aws_secret_key: "{{ ecs_secret_key }}"
containers:
- name: "{{ maven_artifact_id }}"
image: "XXXXXXXXXXXXXX.dkr.ecr.eu-west-1.amazonaws.com/REPO:TAG"
environment:
- name: "PORT"
value: "443"
essential: true
logConfiguration:
logDriver: "awslogs"
options:
awslogs-group: "/ecs/test-cluster-taskdef"
awslogs-region: "us-west-2"
awslogs-stream-prefix: "ecs"
答案 0 :(得分:0)
好的,我找到了-令人反感的行是:'修订:1'
本质上,ECS会“不,谢谢,已经有了修订版1”,并悄悄地忽略了我更改后的任务定义。
解决方案是完全删除“修订”行,并随意调整(并且Ansible不会在每次部署中重复进行迭代,因为仍然存在差异)。
真的认为应该更新Ansible文档以提供建议!