本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AWS.HookDefinition.Bash
定义一个 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]+$对于静态引用:
^[a-zA-Z0-9]+[a-zA-Z0-9\-\_]*[a-zA-Z0-9]+=\$\{[a-zA-Z0-9]+\.(properties|capabilities|requirements)(\.([a-zA-Z0-9\-_]+))+\}$对于动态引用:
^[a-zA-Z0-9]+[a-zA-Z0-9\-\_]*[a-zA-Z0-9]+=\$\{[a-zA-Z0-9]+\.(name|id|arn)\}$
确保
的值符合以下标准:envName=envValue-
不使用空格。
-
envName以字母(A-Z 或 a-z)或数字(0-9)开头。 -
环境变量名称的开头不使用以下 AWS TNB 保留关键字(不区分大小写):
-
CODEBUILD
-
TNB
-
HOME
-
AWS
-
-
可以在
envName和envValue中使用任意数量的字母(A-Z 或 a-z)、数字(0-9)和特殊字符-及_。 每个环境变量(每个
envName=envValue)必须少于 128 个字符。
示例:
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"