All Products
Search
Document Center

:UpdateStack

Last Updated:May 29, 2026

Memperbarui stack.

Nilai parameter dalam bagian Parameters bervariasi tergantung pada nilai yang Anda tetapkan untuk parameter UsePreviousParameters dalam permintaan. Jika Anda tidak menyertakan parameter yang didefinisikan dalam templat ke bagian Parameters, perhatikan hal berikut:

  • UsePreviousParameters diatur ke false: Jika parameter templat memiliki nilai default, nilai tersebut akan digunakan. Jika tidak, Anda harus menentukan nilai untuk parameter templat dalam bagian Parameters.
  • UsePreviousParameters diatur ke true: Jika Anda menentukan nilai untuk parameter templat saat membuat stack, nilai tersebut akan digunakan. Jika Anda membiarkan parameter templat kosong saat pembuatan stack tetapi parameter tersebut memiliki nilai default, nilai default tersebut akan digunakan.

Topik ini menjelaskan cara memperbarui stack. Dalam contoh ini, isi templat dari stack dengan ID 4a6c9851-3b0f-4f5f-b4ca-a14bf691**** di wilayah China (Beijing) diperbarui menjadi {"ROSTemplateFormatVersion": "2015-09-01"}.

Debugging

OpenAPI Explorer secara otomatis menghitung nilai signature. Untuk kenyamanan Anda, kami sarankan agar Anda memanggil operasi ini di OpenAPI Explorer. OpenAPI Explorer secara dinamis menghasilkan contoh kode operasi ini untuk berbagai SDK.

Parameter permintaan

Parameter Tipe Wajib Contoh Deskripsi
Action String Ya UpdateStack

Operasi yang ingin Anda lakukan. Tetapkan nilainya ke UpdateStack.

StackId String Ya 4a6c9851-3b0f-4f5f-b4ca-a14bf691****

ID stack.

ClientToken String Tidak 123e4567-e89b-12d3-a456-42665544****

Token client yang digunakan untuk memastikan idempotensi permintaan. Anda dapat menggunakan client untuk menghasilkan nilai ini, tetapi pastikan bahwa nilainya unik di antara permintaan yang berbeda.

Panjang token maksimal 64 karakter, dan dapat berisi huruf, angka, tanda hubung (-), dan garis bawah (_).

Untuk informasi selengkapnya, lihat Ensure idempotence.

StackPolicyDuringUpdateBody String Tidak {"Statement": [{"Effect": "Allow", "Action": "Update:*", "Principal": "*", "Resource": "*"}]}

Struktur yang berisi isi kebijakan stack pengganti sementara. Isi kebijakan harus berukuran 1 hingga 16.384 byte.

Jika Anda ingin memperbarui resource yang dilindungi, Anda harus menentukan kebijakan stack pengganti sementara selama pembaruan. Jika Anda tidak menentukan kebijakan stack pengganti sementara, kebijakan yang sudah terkait dengan stack akan digunakan.

Parameter ini hanya berlaku ketika parameter ChangeSetType diatur ke UPDATE. Anda hanya dapat menentukan salah satu dari parameter berikut:

  • StackPolicyBody
  • StackPolicyURL
  • StackPolicyDuringUpdateBody
  • StackPolicyDuringUpdateURL
TimeoutInMinutes Long Tidak 10

Periode timeout untuk operasi pembaruan stack.

  • Nilai default: 60.
  • Unit: menit.
TemplateBody String Tidak {"ROSTemplateFormatVersion": "2015-09-01"}

Struktur yang berisi isi templat. Isi templat harus berukuran 1 hingga 524.288 byte.

Jika panjang isi templat melebihi batas atas, kami sarankan Anda menambahkan parameter ke badan permintaan HTTP POST untuk mencegah kegagalan permintaan akibat URL yang terlalu panjang.

Catatan Anda hanya boleh menentukan salah satu dari parameter berikut: TemplateBody, TemplateURL, dan TemplateId.
StackPolicyURL String Tidak oss://ros-stack-policy/demo

URL file yang berisi kebijakan stack. URL harus mengarah ke kebijakan yang berada di server web HTTP atau HTTPS atau di bucket Object Storage Service (OSS), seperti oss://ros/stack-policy/demo atau oss://ros/stack-policy/demo?RegionId=cn-hangzhou. Ukuran file kebijakan maksimal 16.384 byte. Jika Anda tidak menentukan ID wilayah bucket OSS, nilai parameter RegionId akan digunakan.

Catatan Anda hanya dapat menentukan salah satu dari parameter StackPolicyBody dan StackPolicyURL.

Panjang URL maksimal 1.350 byte.

StackPolicyDuringUpdateURL String Tidak oss://ros-stack-policy/demo

URL file yang berisi kebijakan stack pengganti sementara. URL harus mengarah ke kebijakan yang berada di server web HTTP atau HTTPS atau di bucket OSS, seperti oss://ros/stack-policy/demo atau oss://ros/stack-policy/demo?RegionId=cn-hangzhou. Ukuran file kebijakan maksimal 16.384 byte.

Catatan Jika Anda tidak menentukan ID wilayah bucket OSS, nilai parameter RegionId akan digunakan.

Panjang URL maksimal 1.350 byte.

Jika Anda ingin memperbarui resource yang dilindungi, Anda harus menentukan kebijakan stack pengganti sementara selama pembaruan. Jika Anda tidak menentukan kebijakan stack pengganti sementara, kebijakan yang sudah terkait dengan stack akan digunakan. Parameter ini hanya berlaku ketika parameter ChangeSetType diatur ke UPDATE. Anda hanya dapat menentukan salah satu dari parameter berikut:

  • StackPolicyBody
  • StackPolicyURL
  • StackPolicyDuringUpdateBody
  • StackPolicyDuringUpdateURL
StackPolicyBody String Tidak {"Statement": [{"Action": "Update:*", "Resource": "*", "Effect": "Allow", "Principal": "*"}]}

Struktur yang berisi isi kebijakan stack. Isi kebijakan harus berukuran 1 hingga 16.384 byte.

Catatan Anda hanya dapat menentukan salah satu dari parameter StackPolicyBody dan StackPolicyURL.
UsePreviousParameters Boolean Tidak true

Menentukan apakah akan menggunakan nilai yang ditentukan dalam permintaan sebelumnya untuk parameter yang tidak Anda tentukan dalam permintaan saat ini.

Nilai valid:

  • true
  • false
RegionId String Ya cn-beijing

ID wilayah tempat stack dideploy. Anda dapat memanggil operasi DescribeRegions untuk mengambil daftar wilayah terbaru.

DisableRollback Boolean Tidak false

Menentukan apakah akan melakukan rollback resource dalam stack jika pembaruan stack gagal.

Nilai default: false. Nilai valid:

  • true
  • false
TemplateURL String Tidak oss://ros-template/demo

URL file yang berisi isi templat. URL harus mengarah ke templat yang berada di server web HTTP atau HTTPS atau di bucket OSS, seperti oss://ros/template/demo atau oss://ros/template/demo?RegionId=cn-hangzhou. Isi templat harus berukuran 1 hingga 524.288 byte. Jika Anda tidak menentukan ID wilayah bucket OSS, nilai parameter RegionId akan digunakan.

Catatan Anda hanya boleh menentukan salah satu dari parameter berikut: TemplateBody, TemplateURL, dan TemplateId.
RamRoleName String Tidak test-role

Nama role RAM. Resource Orchestration Service (ROS) mengasumsikan role RAM untuk membuat stack dan menggunakan kredensial role tersebut untuk memanggil API layanan Alibaba Cloud.

ROS mengasumsikan role RAM untuk melakukan operasi pada stack. Jika Anda memiliki izin untuk melakukan operasi pada stack tetapi tidak memiliki izin untuk menggunakan role RAM, ROS tetap akan mengasumsikan role RAM tersebut. Pastikan bahwa hak istimewa minimal diberikan kepada role RAM.

Jika Anda tidak menentukan parameter ini, ROS akan mengasumsikan role RAM yang sudah terkait dengan stack. Jika tidak ada role RAM yang tersedia, ROS akan menggunakan kredensial temporary yang dihasilkan dari kredensial akun Anda.

Panjang nama role RAM maksimal 64 byte.

ReplacementOption String Tidak Disabled

Menentukan apakah akan mengaktifkan fitur pembaruan penggantian. Jika Anda tidak dapat mengubah properti resource, Anda dapat mengaktifkan fitur pembaruan penggantian untuk mengganti properti resource tersebut. Jika fitur pembaruan penggantian digunakan, resource yang ada akan dihapus dan resource baru akan dibuat. ID fisik resource baru berbeda dari ID fisik resource yang dihapus.

Nilai default: Disabled. Nilai valid:

  • Enabled
  • Disabled
Catatan Perubahan memiliki prioritas lebih tinggi daripada pembaruan penggantian.
TemplateId String Tidak 5ecd1e10-b0e9-4389-a565-e4c15efc****

ID templat. Parameter ini berlaku untuk template bersama dan template pribadi.

Catatan Anda hanya boleh menentukan salah satu dari parameter berikut: TemplateBody, TemplateURL, dan TemplateId.
TemplateVersion String Tidak v1

Versi templat. Parameter ini hanya berlaku ketika parameter TemplateId ditentukan.

Parameters.N.ParameterKey String Ya Amount

Nama parameter N. Jika Anda tidak menentukan nama dan nilai parameter, ROS akan menggunakan nama dan nilai default dalam templat.

Nilai maksimum N: 200.

Catatan Parameter Parameters bersifat opsional. Jika Anda menentukan Parameters, Anda harus menentukan Parameters.N.ParameterKey dan Parameters.N.ParameterValue.
Parameters.N.ParameterValue String Ya 12

Nilai parameter N. Nilai maksimum N: 200.

Catatan Parameter Parameters bersifat opsional. Jika Anda menentukan Parameters, Anda harus menentukan Parameters.N.ParameterKey dan Parameters.N.ParameterValue.
Tags.N.Key String Ya usage

Kunci tag N yang ingin Anda tambahkan ke stack.

Nilai valid N: 1 hingga 20.

Catatan
  • Parameter Tags bersifat opsional. Jika Anda menentukan Tags, Anda harus menentukan Tags.N.Key.
  • Tag stack akan dipropagasikan ke setiap resource yang mendukung fitur tag dalam stack. Untuk informasi selengkapnya, lihat Propagate tags.
Tags.N.Value String Tidak test

Nilai tag N yang ingin Anda tambahkan ke stack.

Nilai valid N: 1 hingga 20.

Catatan Tag stack akan dipropagasikan ke setiap resource yang mendukung fitur tag dalam stack. Untuk informasi selengkapnya, lihat Propagate tags.
Parallelism Long Tidak 1

Jumlah maksimum operasi konkuren yang dapat dilakukan pada resource.

Secara default, parameter ini kosong. Anda dapat mengatur parameter ini ke bilangan bulat yang lebih besar dari atau sama dengan 0.

Catatan
  • Jika Anda mengatur parameter ini ke bilangan bulat yang lebih besar dari 0, bilangan bulat tersebut akan digunakan.
  • Jika Anda mengatur parameter ini ke 0, tidak ada batasan yang diterapkan pada stack ROS. Namun, nilai default di Terraform akan digunakan untuk stack Terraform. Umumnya, nilai default di Terraform adalah 10.
  • Jika Anda membiarkan parameter ini kosong, nilai yang Anda tentukan untuk parameter ini dalam permintaan sebelumnya akan digunakan. Jika Anda membiarkan parameter ini kosong dalam permintaan sebelumnya, tidak ada batasan yang diterapkan pada stack ROS. Namun, nilai default di Terraform akan digunakan untuk stack Terraform. Umumnya, nilai default di Terraform adalah 10.
  • Jika Anda mengatur parameter ini ke nilai tertentu, ROS akan mengaitkan nilai tersebut dengan stack. Nilai ini akan memengaruhi operasi selanjutnya pada stack.
ResourceGroupId String Tidak rg-acfmxazb4ph6aiy****

ID kelompok sumber daya.

DryRun Boolean Tidak false

Menentukan apakah hanya akan memvalidasi stack dalam permintaan. Nilai default: false. Nilai valid:

  • true: hanya memvalidasi stack.
  • false: memvalidasi dan memperbarui stack.
Catatan Saat tidak ada perubahan yang dilakukan selama pembaruan, aturan berikut berlaku: Jika Anda mengatur parameter DryRun ke false, kode kesalahan NotSupported akan dikembalikan. Jika Anda mengatur parameter DryRun ke true, tidak ada kesalahan yang dilaporkan.

Untuk informasi selengkapnya tentang parameter permintaan umum, lihat Common parameters.

Parameter respons

Parameter Tipe Contoh Deskripsi
RequestId String B288A0BE-D927-4888-B0F7-B35EF84B6E6F

ID permintaan.

StackId String 4a6c9851-3b0f-4f5f-b4ca-a14bf691****

ID stack.

DryRunResult Object

Hasil validasi. Parameter ini hanya dikembalikan jika parameter DryRun diatur ke true.

ParametersAllowedToBeModified Array of String param1

Parameter yang dapat dimodifikasi. Jika Anda hanya mengubah nilai parameter dalam templat stack dan menggunakan templat tersebut untuk memperbarui stack, tidak akan terjadi kesalahan validasi.

ParametersConditionallyAllowedToBeModified Array of String param2

Parameter yang dapat dimodifikasi dalam kondisi tertentu. Jika Anda hanya mengubah nilai parameter dalam templat stack dan menggunakan templat tersebut untuk memperbarui stack, nilai baru parameter tersebut menentukan apakah terjadi kesalahan validasi.

ParametersUncertainlyAllowedToBeModified Array of String param3

Parameter yang dapat dimodifikasi dalam kondisi tidak pasti. Jika Anda hanya mengubah nilai parameter dalam templat stack dan menggunakan templat tersebut untuk memperbarui stack, lingkungan eksekusi aktual menentukan apakah terjadi kesalahan validasi.

ParametersNotAllowedToBeModified Array of String param4

Parameter yang tidak dapat dimodifikasi. Jika Anda hanya mengubah nilai parameter dalam templat stack dan menggunakan templat tersebut untuk memperbarui stack, akan terjadi kesalahan validasi.

ParametersCauseInterruptionIfModified Array of String param1

Parameter yang perubahannya menyebabkan gangguan layanan. Jika Anda hanya mengubah nilai parameter dalam templat stack dan menggunakan templat tersebut untuk memperbarui stack, akan terjadi gangguan layanan.

Catatan
  • Parameter ini hanya didukung untuk sejumlah kecil tipe resource.
  • Parameter ini hanya berlaku untuk perubahan yang dilakukan pada stack ROS.
ParametersConditionallyCauseInterruptionIfModified Array of String param2

Parameter yang perubahannya menyebabkan gangguan layanan dalam kondisi tertentu. Jika Anda hanya mengubah nilai parameter dalam templat stack dan menggunakan templat tersebut untuk memperbarui stack, nilai baru dan tipe pembaruan menentukan apakah terjadi gangguan layanan.

Catatan
  • Parameter ini hanya didukung untuk sejumlah kecil tipe resource.
  • Parameter ini hanya berlaku untuk perubahan yang dilakukan pada stack ROS.
ParametersUncertainlyCauseInterruptionIfModified Array of String param3

Parameter yang perubahannya menyebabkan gangguan layanan dalam kondisi tidak pasti. Jika Anda hanya mengubah nilai parameter dalam templat stack dan menggunakan templat tersebut untuk memperbarui stack, lingkungan eksekusi aktual menentukan apakah terjadi gangguan layanan.

Catatan
  • Parameter ini hanya didukung untuk sejumlah kecil tipe resource.
  • Parameter ini hanya berlaku untuk perubahan yang dilakukan pada stack ROS.

Contoh

Permintaan contoh

https://ros.aliyuncs.com/?Action=UpdateStack
&RegionId=cn-beijing
&StackId=4a6c9851-3b0f-4f5f-b4ca-a14bf691****
&TemplateBody={"ROSTemplateFormatVersion": "2015-09-01"}
&<Common request parameters>

Respons sukses contoh

XML format

HTTP/1.1 200 OK
Content-Type:application/xml

<UpdateStackResponse>
    <StackId>4a6c9851-3b0f-4f5f-b4ca-a14bf691****</StackId>
    <RequestId>B288A0BE-D927-4888-B0F7-B35EF84B6E6F</RequestId>
</UpdateStackResponse>

JSON format

HTTP/1.1 200 OK
Content-Type:application/json

{
  "StackId" : "4a6c9851-3b0f-4f5f-b4ca-a14bf691****",
  "RequestId" : "B288A0BE-D927-4888-B0F7-B35EF84B6E6F"
}

Kode kesalahan

Untuk daftar kode kesalahan, lihat Service error codes.

Kode status HTTP

Kode kesalahan

Pesan kesalahan

Deskripsi

400

CircularDependency

Circular Dependency Found: {reason}.

Pesan kesalahan yang dikembalikan karena templat berisi dependensi melingkar. reason menunjukkan penyebab kesalahan.

400

InvalidSchema

{reason}.

Pesan kesalahan yang dikembalikan karena format templat tidak valid. reason menunjukkan penyebab kesalahan.

400

InvalidTemplateAttribute

The Referenced Attribute ({resource} {name}) is incorrect.

Pesan kesalahan yang dikembalikan karena properti resource yang dirujuk dalam bagian Outputs templat tidak valid. resource menunjukkan nama resource. name menunjukkan nama properti.

400

InvalidTemplatePropertyType

The specified value type of ({resource} {section}) is incorrect.

Pesan kesalahan yang dikembalikan karena tipe properti resource yang didefinisikan dalam bagian templat tidak valid. resource menunjukkan nama resource. section menunjukkan nama bagian.

400

InvalidTemplateReference

The specified reference "{name}" (in {referencer}) is incorrect.

Pesan kesalahan yang dikembalikan karena templat berisi referensi yang tidak valid. name menunjukkan nama referensi. referencer menunjukkan nama perujuk.

400

InvalidTemplateSection

The template section is invalid: {section}.

Pesan kesalahan yang dikembalikan karena templat berisi bagian yang tidak valid. section menunjukkan nama bagian.

400

InvalidTemplateVersion

The template version is invalid: {reason}.

Pesan kesalahan yang dikembalikan karena versi templat tidak valid. reason menunjukkan penyebab kesalahan.

400

StackPolicyValidationFailed

Action denied by stack policy: {reason}.

Pesan kesalahan yang dikembalikan karena pembaruan gagal divalidasi berdasarkan kebijakan stack. reason menunjukkan penyebab kesalahan.

400

StackValidationFailed

{reason}.

Pesan kesalahan yang dikembalikan karena stack gagal divalidasi. reason menunjukkan penyebab kesalahan.

400

UnknownUserParameter

The Parameter ({name}) was not defined in template.

Pesan kesalahan yang dikembalikan karena parameter yang ditentukan tidak didefinisikan dalam templat. name menunjukkan nama parameter.

400

UserParameterMissing

The Parameter {name} was not provided.

Pesan kesalahan yang dikembalikan karena tidak ada nilai yang ditentukan untuk parameter yang didefinisikan dalam templat. name menunjukkan nama parameter.

404

StackNotFound

The Stack ({name}) could not be found.

Pesan kesalahan yang dikembalikan karena stack tidak ada. name menunjukkan nama atau ID stack.

409

ActionInProgress

Stack {name} already has an action ({action}) in progress.

Pesan kesalahan yang dikembalikan karena stack sedang dalam proses perubahan. name menunjukkan nama atau ID stack. action menunjukkan operasi perubahan.

404

TemplateNotFound

The Tempalte ({ ID }) could not be found.

Pesan kesalahan yang dikembalikan karena templat tidak ada. ID menunjukkan ID templat.

404

TemplateNotFound

The Template { ID } with version { version } could not be found.

Pesan kesalahan yang dikembalikan karena templat atau versi templat tidak ada. ID menunjukkan ID templat. version menunjukkan versi templat.