當模板開發人員建立包含自訂資源的資源棧時,ROS將發送RequestType已設定為Create的自訂資源請求。
請求
- RequestType
將為Create。
- ResponseURL
預簽名的公網URL。該URL接收custom resource provider到ROS的響應。
- IntranetResponseURL
預簽名的內網URL,ECS中可使用此URL。該URL接收custom resource provider到ROS的響應。
- StackId
包含自訂資源的資源棧的ID 。
- StackName
包含自訂資源的資源棧的名稱。
- ResourceOwnerId
包含自訂資源的資源棧歸屬的阿里雲帳號ID(阿里雲主帳號)。
- CallerId
執行此次資源棧操作的帳號ID(阿里雲主帳號或RAM使用者)。
- RegionId
包含自訂資源的資源棧歸屬的地區。
- RequestId
請求的唯一ID。
- ResourceType
ROS模板中模板開發人員選擇的自訂資源的資源類型。自訂資源類型名稱最長為68個字元,可包含英文字元、數字、底線(_)、at(@)和短劃線(-)。
- LogicalResourceId
ROS模板中模板開發人員選擇的自訂資源名稱(邏輯 ID)。
- ResourceProperties
該欄位包含template developer發送的Properties中Parameters對象的內容。其內容由custom resource provider定義。
樣本:
{
"RequestType" : "Create",
"RequestId" : "unique id for this create request",
"ResponseURL" : "pre-signed-url-for-create-response",
"IntranetResponseURL" : "pre-signed-intranet-url-for-create-response",
"ResourceType" : "Custom::MyCustomResourceType",
"LogicalResourceId" : "name of resource in template",
"StackId" : "stack id",
"StackName" : "stack name",
"ResourceOwnerId": "resource owner id",
"CallerId": "caller id",
"RegionId": "region id",
"ResourceProperties" : {
"key1" : "string",
"key2" : [ "list" ],
"key3" : { "key4" : "map" }
}
}
響應
成功
建立請求成功時,供應商提供的服務必須向ROS發送包含以下欄位的響應:
- Status
必須為SUCCESS。
- RequestId
請求的唯一ID。此響應值應從請求中複製。
- LogicalResourceId
ROS模板中模板開發人員選擇的自訂資源名稱(邏輯 ID)。此響應值應從請求中複製。
- StackId
包含自訂資源的資源棧的ID 。此響應值應從請求中複製。
- PhysicalResourceId
該值應是對於自訂資源供應商具有唯一性的標識符,最大為255位元組。該值必須是非Null 字元串,並且在所有響應中對於相同資源必須相同。
- Data
可選。要在響應中發送的custom resource provider-defined的名稱-值對。您可以使用Fn::GetAtt在模板中按名稱訪問此處提供的值。
樣本:
{
"Status" : "SUCCESS",
"RequestId" : "unique id for this create request (copied from request)",
"LogicalResourceId" : "name of resource in template (copied from request)",
"StackId" : "stack id (copied from request)",
"PhysicalResourceId" : "required vendor-defined physical id that is unique for that vendor",
"Data" : {
"keyThatCanBeUsedInGetAtt1" : "data for key 1",
"keyThatCanBeUsedInGetAtt2" : "data for key 2"
}
}
失敗
建立請求失敗時,供應商提供的服務必須向ROS發送包含以下欄位的響應:
- Status
必須為FAILED。
- Reason
描述響應失敗的原因。
- RequestId
請求的唯一ID。 此響應值應從請求中複製。
- LogicalResourceId
ROS模板中模板開發人員選擇的自訂資源名稱(邏輯 ID)。此響應值應從請求中複製。
- StackId
包含自訂資源的資源棧的ID。此響應值應從請求中複製。
樣本:
{
"Status" : "FAILED",
"Reason" : "Required failure reason string",
"RequestId" : "unique id for this create request (copied from request)",
"LogicalResourceId" : "name of resource in template (copied from request)",
"StackId" : "stack id (copied from request)"
}