本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
定义一个 AWS HookDefinition in bash
。
语法
tosca.nodes.AWS.HookDefinition.Bash:
properties:
implementation: String
environment_variables: List
execution_role: String
属性
-
implementation
-
挂钩定义的相对路径。格式必须是:
./hooks/
script_name
.sh必需:是
类型:字符串
-
environment_variables
-
挂钩 bash 脚本的环境变量。使用以下格式:
,以及以下正则表达式:envName
=envValue
^[a-zA-Z0-9]+[a-zA-Z0-9\-\_]*[a-zA-Z0-9]+=[a-zA-Z0-9]+[a-zA-Z0-9\-\_]*[a-zA-Z0-9]+$
确保
的值符合以下标准:envName
=envValue
-
不使用空格。
-
envName
以字母(A-Z 或 a-z)或数字(0-9)开头。 -
环境变量名称的开头不使用以下 AWS TNB 保留关键字(不区分大小写):
-
CODEBUILD
-
TNB
-
HOME
-
AWS
-
-
可以在
envName
和envValue
中使用任意数量的字母(A-Z 或 a-z)、数字(0-9)和特殊字符-
及_
。
示例:
A123-45xYz=Example_789
必需:否
类型:列表
-
-
execution_role
-
挂钩执行的角色。
必需:是
类型:字符串
示例
SampleHookScript:
type: tosca.nodes.AWS.HookDefinition.Bash
properties:
implementation: "./hooks/myhook.sh
"
environment_variables:
- "variable01=value01"
- "variable02=value02"
execution_role: "arn:aws:iam::${AWS::TNB::AccountId}:role/SampleHookPermission
"