ALIYUN::ECS::Command類型用於建立雲助手命令。
文法
{
"Type": "ALIYUN::ECS::Command",
"Properties": {
"Name": String,
"WorkingDir": String,
"CommandContent": String,
"Timeout": Integer,
"Type": String,
"Description": String,
"EnableParameter": Boolean,
"Tags": List,
"ResourceGroupId": String,
"ContentEncoding": String
}
}
屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Name | String | 否 | 是 | 命令名稱。 | 長度為1~128個字元。支援全字元集。 |
WorkingDir | String | 否 | 是 | 您建立的命令在ECS執行個體中啟動並執行目錄。 | 預設值:
說明 設定為其他目錄時,請確保執行個體中存在該目錄。 |
CommandContent | String | 否 | 否 | 命令Base64編碼後的內容。 | 命令Base64編碼後的內容。
|
Timeout | Integer | 否 | 是 | 您建立的命令在ECS執行個體中執行時的逾時時間。 | 當因為某種原因無法運行您建立的命令時,會出現逾時現象;逾時後,會強制終止命令進程,即取消命令的PID。 預設值:60。 單位:秒。 |
Type | String | 是 | 否 | 命令的類型。 | 取值:
|
Description | String | 否 | 是 | 命令描述。 | 長度為1~512個字元。支援全字元集。 |
EnableParameter | Boolean | 否 | 否 | 建立的命令是否使用自訂參數。 | 取值
|
Tags | List | 否 | 否 | 執行個體的標籤。最多支援添加20個標籤。 | 更多資訊,請參見Tags屬性。 |
ContentEncoding | String | 否 | 否 | 命令內容(CommandContent)的編碼方式。 | 取值範圍:
說明 錯填該取值會當作Base64處理。 |
ResourceGroupId | String | 否 | 是 | 命令所屬的資源群組ID。 | 無 |
Tags文法
"Tags": [
{
"Key": String,
"Value": String
}
]
Tags屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Key | String | 是 | 否 | 標籤鍵。 | 長度為1~128個字元,不能以 |
Value | String | 否 | 否 | 標籤值。 | 長度為0~128個字元,不能以 |
傳回值
Fn::GetAtt
CommandId:命令ID。
如果您只需要執行一次性命令,請參見ALIYUN::ECS::RunCommand。
樣本
YAML
格式
ROSTemplateFormatVersion: '2015-09-01'
Parameters: {}
Resources:
Command:
Type: ALIYUN::ECS::Command
Properties:
CommandContent:
Fn::Base64Encode: |
#!/bin/bash
echo "hello" >> /root/test.sh
Type: RunShellScript
Name:
Ref: ALIYUN::StackName
Outputs:
CommandId:
Description: The id of command created.
Value:
Fn::GetAtt:
- Command
- CommandId
JSON
格式
{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
},
"Resources": {
"Command": {
"Type": "ALIYUN::ECS::Command",
"Properties": {
"CommandContent": {
"Fn::Base64Encode": "#!/bin/bash\necho \"hello\" >> /root/test.sh\n"
},
"Type": "RunShellScript",
"Name": {
"Ref": "ALIYUN::StackName"
}
}
}
},
"Outputs": {
"CommandId": {
"Description": "The id of command created.",
"Value": {
"Fn::GetAtt": [
"Command",
"CommandId"
]
}
}
}
}