全部產品
Search
文件中心

Resource Orchestration Service:Create

更新時間:Aug 24, 2023

當模板開發人員建立包含自訂資源的資源棧時,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)"
}