gpt4 book ai didi

yaml - 如何将参数传递给 CloudFormation YAML 中的 Glue 作业?

转载 作者:行者123 更新时间:2023-12-04 00:03:54 25 4
gpt4 key购买 nike

您可以通过 --arguments 参数将参数传递给 AWS Glue 作业(请参阅 here )。

CloudFormation documentation表示 DefaultArguments 是“UTF-8 字符串到 UTF-8 字符串键值对”,并且它们的类型是“JSON 对象”。由于 YAML 是 JSON 的 super 集,我希望能够在 (YAML) CloudFormation 模板中传递这样的参数:

DefaultArguments:
"--arguments": {"--test_argument": "foo"}

但是,它在 CloudFormation 部署期间引发此错误:

Property validation failure: [Value of property {/DefaultArguments/--arguments=} does not match type {String}]

如何正确指定值?

最佳答案

传递多个参数的正确方法是

DefaultArguments:
"--argument1": value1
"--argument2": value2

然后在作业中访问它们(例如在 Python 中),如下所示:

from awsglue.utils import getResolvedOptions
args = getResolvedOptions(sys.argv, ['argument1', 'argument2'])
print args['argument1']
print args['argument2']

令我困惑的是,为了使用 AWS CLI 传递参数,您使用显式的 --arguments='--argument1="value1"' 结构,但在 CloudFormation 中,您通过以下方式指定参数之一一个。

关于yaml - 如何将参数传递给 CloudFormation YAML 中的 Glue 作业?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52749953/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com