全部产品
Search
文档中心

Resource Orchestration Service:Pembaruan

更新时间:Jun 26, 2025

Ketika terjadi perubahan pada properti resource kustom dalam template, Resource Orchestration Service (ROS) mengirimkan permintaan ke penyedia resource kustom. Bidang RequestType dalam permintaan diatur ke Update. Kode resource kustom tidak perlu mendeteksi perubahan karena ia mengetahui bahwa propertinya telah berubah setelah Update dipanggil.

Permintaan

Permintaan Update mencakup bidang-bidang berikut:

  • RequestType

    Bidang ini diatur ke Update.

  • ResponseURL

    URL publik yang telah ditandatangani. URL ini menerima respons dari penyedia resource kustom ke ROS.

  • IntranetResponseURL

    URL internal yang telah ditandatangani. Anda dapat menggunakan URL ini di Elastic Compute Service (ECS). URL ini menerima respons dari penyedia resource kustom ke ROS.

  • StackId

    ID stack yang berisi resource kustom.

  • StackName

    Nama stack yang berisi resource kustom.

  • ResourceOwnerId

    ID akun Alibaba Cloud tempat stack dengan resource kustom dimiliki.

  • CallerId

    ID akun Alibaba Cloud atau Pengguna Resource Access Management (RAM) yang digunakan untuk melakukan operasi ini.

  • RegionId

    ID wilayah dari stack yang berisi resource kustom.

  • RequestId

    ID unik dari permintaan.

  • ResourceType

    Tipe resource yang dipilih oleh pengembang template untuk resource kustom dalam template. Nama tipe resource kustom dapat mencapai panjang hingga 68 karakter dan dapat berisi huruf, angka, garis bawah (_), at signs (@), dan tanda hubung (-).

  • LogicalResourceId

    Nama (ID logis) yang ditentukan oleh pengembang template untuk resource kustom dalam template.

  • PhysicalResourceId

    ID fisik yang didefinisikan oleh penyedia resource kustom. ID ini unik bagi penyedia.

  • ResourceProperties

    Bidang ini berisi parameter dalam bagian Properties dari permintaan yang dikirim oleh pengembang template. Isi tersebut didefinisikan oleh penyedia resource kustom.

  • OldResourceProperties

    Bidang ini berisi parameter asli dalam bagian Properties yang didefinisikan oleh pengembang template.

Contoh:

{
   "RequestType" : "Update",
   "RequestId" : "unique id for this update request",
   "ResponseURL" : "pre-signed-url-for-update-response",
   "IntranetResponseURL" : "pre-signed-intranet-url-for-create-response",
   "ResourceType" : "Custom::MyCustomResourceType",
   "LogicalResourceId" : "name of resource in template",
   "PhysicalResourceId" : "custom resource provider-defined physical id",
   "StackId" : "stack id",
   "StackName" : "stack name",
   "ResourceOwnerId": "resource owner id",
   "CallerId": "caller id",
   "RegionId": "region id",
   "ResourceProperties" : {
      "key1" : "new-string",
      "key2" : [ "new-list" ],
      "key3" : { "key4" : "new-map" }
   },
   "OldResourceProperties" : {
      "key1" : "string",
      "key2" : [ "list" ],
      "key3" : { "key4" : "map" }
   }
}    

Respons

Sukses

Setelah permintaan Update dikirim, penyedia resource kustom harus mengirimkan respons yang mencakup bidang-bidang berikut ke ROS:

  • Status

    Hanya SUCCESS yang dikembalikan untuk bidang ini.

  • RequestId

    ID unik dari permintaan. Nilai respons ini harus disalin dari permintaan.

  • LogicalResourceId

    Nama (ID logis) yang ditentukan oleh pengembang template untuk resource kustom dalam template. Nilai respons ini harus disalin dari permintaan.

  • StackId

    ID stack yang berisi resource kustom. Nilai respons ini harus disalin dari permintaan.

  • PhysicalResourceId

    Nilai bidang ini tidak dapat diubah. Nilai respons ini harus disalin dari permintaan.

  • Data

    Opsional. Pasangan nama-nilai yang akan dikirim dalam respons. Anda dapat menggunakan fungsi Fn::GetAtt untuk mengakses nilai yang disediakan di sini berdasarkan nama dalam template.

Contoh:

{
   "Status" : "SUCCESS",
   "RequestId" : "unique id for this update request (copied from request)",
   "LogicalResourceId" : "name of resource in template (copied from request)",
   "StackId" : "stack id (copied from request)",
   "PhysicalResourceId" : "custom resource provider-defined physical id",
   "Data" : {
      "keyThatCanBeUsedInGetAtt1" : "data for key 1",
      "keyThatCanBeUsedInGetAtt2" : "data for key 2"
   }
}

Gagal

Jika permintaan Update gagal, penyedia resource kustom harus mengirimkan respons yang mencakup bidang-bidang berikut ke ROS:

  • Status

    Hanya FAILED yang dikembalikan untuk bidang ini.

  • Reason

    Alasan kegagalan respons.

  • RequestId

    ID unik dari permintaan. Nilai respons ini harus disalin dari permintaan.

  • LogicalResourceId

    Nama (ID logis) yang ditentukan oleh pengembang template untuk resource kustom dalam template. Nilai respons ini harus disalin dari permintaan.

  • StackId

    ID stack yang berisi resource kustom. Nilai respons ini harus disalin dari permintaan.

Contoh:

{
   "Status" : "FAILED",
   "Reason" : "Required failure reason string",
   "RequestId" : "unique id for this update request (copied from request)",
   "LogicalResourceId" : "name of resource in template (copied from request)",
   "StackId" : "stack id (copied from request)"
}