将环境/输入参数传递给步骤函数中的命令参数

nue99wik  于 2022-11-02  发布在  Kubernetes
关注(0)|答案(1)|浏览(200)

我正在尝试使用EKS run作业设置一个step函数。该作业在EKS集群中启动一个pod并执行命令。作为开始,我希望命令为echo $S3_BUCKET $S3_KEY,其中$S3_BUCKET$S3_KEY都是从step函数输入传入的环境变量。下面是容器规范:

"containers": [
                  {
                    "name": "my-container-spec",
                    "image": "****.dkr.ecr.****.amazonaws.com/****:latest",
                    "command": [
                      "echo"
                    ],
                    "args": [
                      "$S3_BUCKET", "$S3_KEY"
                    ],
                    "env": [
                      {
                        "name": "S3_BUCKET",
                        "value.$": "$.s3_bucket"
                      },
                      {
                        "name": "S3_KEY",
                        "value.$": "$.s3_key"
                      }
                    ]
                  }
                ],
                "restartPolicy": "Never"

不幸的是,在执行作业之后,该命令只回显原始测试$S3_BUCKET $S3_KEY,而不是传入的值。
所以这里的问题是我应该如何传入一个环境变量作为一个args。环境变量不一定要传入,它可以是其他继承的变量。

weylhg0b

weylhg0b1#

这样就可以了:args: ["$(S3_BUCKET), $(S3_KEY)"]

相关问题