gpt4 book ai didi

amazon-web-services - 如何将 Fn::Join 嵌套在 Fn::If 内部?

转载 作者:行者123 更新时间:2023-12-03 07:36:37 25 4
gpt4 key购买 nike

我有一个 bash 脚本,我想在我的实例上运行,但我只想在值为 true 时运行脚本的第二部分。另外,我不希望脚本中出现 if 语句。

Parameters:
#TestParameter = TRUE
Resource:
UserData:
Fn::Sub: |
echo "This is a test example"
#If TestParameter is true:
echo "Only is parameter is true"

最佳答案

在我看来,最好将参数Sub构建到脚本中:

UserData:
Fn::Sub: |
echo "This is a test example"
if ${TestParameter}; then
echo "Only is parameter is true"
fi

但是由于您不想在脚本中包含 if,因此您必须在 Cloudformation 模板中构建脚本主体。在 CFN 中构建字符串总是很困惑。尝试这样的事情:

UserData:
Fn::Join: ["\n", ["echo 'This is a test example'",
['Fn::If': [!Equals [!Ref TestParameter, "true"], "echo 'Parameter is true'", ""]]]]

关于amazon-web-services - 如何将 Fn::Join 嵌套在 Fn::If 内部?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54541240/

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