Menghilangkan drift stack dengan melakukan deteksi drift.
Deskripsi operasi
Batasan: Anda hanya dapat menghilangkan drift pada stack yang telah mengalami drift. Anda harus memanggil operasi DetectStackDrift untuk melakukan deteksi drift pada sebuah stack, memanggil operasi GetStackDriftDetectionStatus untuk menanyakan status drift dari stack guna memastikan bahwa stack telah mengalami drift, lalu memanggil operasi UpdateStackTemplateByResources untuk menghilangkan drift.
Pada topik ini, drift dihilangkan untuk sebuah stack yang ID-nya adalah 4a6c9851-3b0f-4f5f-b4ca-a14bf691****. Stack tersebut di-deploy di region China (Hangzhou).
Coba sekarang
Test
RAM authorization
|
Action |
Access level |
Resource type |
Condition key |
Dependent action |
|
ros:UpdateStackTemplateByResources |
update |
*stack
|
None | None |
Sintaks permintaan
POST /V2/UpdateStackTemplateByResources HTTP/1.1
Parameter permintaan
|
Parameter |
Type |
Required |
Description |
Example |
| StackId |
string |
Yes |
ID dari stack. |
4a6c9851-3b0f-4f5f-b4ca-a14bf691**** |
| DryRun |
boolean |
No |
Menentukan apakah hanya akan mempratinjau templat yang telah dikoreksi dalam permintaan ini. Nilai default: false. Nilai yang valid:
Catatan
Atur parameter DryRun menjadi true untuk mempratinjau templat yang telah dikoreksi. Jika konten templat sesuai dengan harapan, atur parameter DryRun menjadi false untuk menjalankan koreksi. |
false |
| RegionId |
string |
Yes |
ID region dari stack. Anda dapat memanggil operasi DescribeRegions untuk menanyakan daftar region terbaru. |
cn-hangzhou |
| ClientToken |
string |
No |
Token klien yang digunakan untuk memastikan idempotensi permintaan. Anda dapat menggunakan klien untuk menghasilkan nilainya, tetapi Anda harus memastikan bahwa nilainya unik di antara permintaan yang berbeda. Token dapat memiliki panjang hingga 64 karakter dan dapat berisi huruf, angka, tanda hubung (-), dan garis bawah (_). Untuk informasi lebih lanjut, lihat Cara memastikan idempotensi. |
123e4567-e89b-12d3-a456-42665544**** |
| TemplateFormat |
string |
No |
Format templat yang dikembalikan. Nilai default: JSON. Nilai yang valid:
|
JSON |
| LogicalResourceId |
array |
No |
ID logis dari sumber daya. |
Vpc |
|
string |
No |
ID logis dari sumber daya N, yang digunakan untuk memfilter sumber daya. Koreksi templat hanya berlaku untuk sumber daya yang ada dalam daftar. Secara default, semua sumber daya yang telah mengalami drift akan dikoreksi. Jika daftar sumber daya yang dikoreksi berisi sumber daya dalam status DELETED, ROS dapat menyesuaikan sumber daya yang tidak ada dalam daftar tetapi mereferensikan sumber daya yang telah dihapus dalam daftar untuk memastikan kebenaran templat yang baru. |
WebServer |
Untuk informasi lebih lanjut tentang parameter permintaan umum, lihat Parameter umum.
Elemen respons
|
Element |
Type |
Description |
Example |
|
object |
|||
| RequestId |
string |
ID dari permintaan. |
B288A0BE-D927-4888-B0F7-B35EF84B6E6F |
| NewTemplateBody |
string |
Konten templat setelah koreksi. |
{\"ROSTemplateFormatVersion\": \"2015-09-01\", \"Resources\": {\"Vpc\": {\"Type\": \"ALIYUN::ECS::VPC\", \"Properties\": {\"VpcName\": \"test\", \"CidrBlock\": \"192.168.0.0/16\", \"Description\": \"test2\"}}}, \"Outputs\": {\"VpcId\": {\"Value\": {\"Fn::GetAtt\": [\"Vpc\", \"VpcId\"]}}}} |
| OldTemplateBody |
string |
Konten templat sebelum koreksi. |
{\"ROSTemplateFormatVersion\": \"2015-09-01\", \"Resources\": {\"Vpc\": {\"Type\": \"ALIYUN::ECS::VPC\", \"Properties\": {\"VpcName\": \"test\", \"CidrBlock\": \"192.168.0.0/16\", \"Description\": \"test1\"}}}, \"Outputs\": {\"VpcId\": {\"Value\": {\"Fn::GetAtt\": [\"Vpc\", \"VpcId\"]}}}} |
| Kode status HTTP | Kode error | Pesan error | Deskripsi |
| 400 | StackDriftDetectionNotAvailable | There is no complete drift detection for stack ({ID}). | Pesan error yang dikembalikan karena tidak ada deteksi drift yang telah selesai pada stack. ID menunjukkan ID stack. |
| 400 | StackAlreadyInSync | This is not need to correct stack drifts, stack ({ID}) is already in sync. | Pesan error yang dikembalikan karena tidak ada drift dan koreksi templat tidak diperlukan. ID menunjukkan ID stack. |
| 400 | CorrectStackDriftsFailure | {reason} | Pesan error yang dikembalikan karena stack tidak dapat dikoreksi. reason menunjukkan alasan spesifik. |
| 404 | StackNotFound | The Stack ({name}) could not be found. | Pesan error yang dikembalikan karena stack yang ditentukan tidak ada. name menunjukkan nama atau ID dari stack. |
| 404 | ResourceNotFound | The Resource ({name}) could not be found in Stack {stack}. | Pesan error yang dikembalikan karena sumber daya yang ditentukan tidak ada dalam stack yang ditentukan. name menunjukkan nama sumber daya, dan stack menunjukkan nama atau ID stack. |
Contoh
Respons sukses
JSONformat
{
"RequestId": "B288A0BE-D927-4888-B0F7-B35EF84B6E6F",
"NewTemplateBody": "{\\\"ROSTemplateFormatVersion\\\": \\\"2015-09-01\\\", \\\"Resources\\\": {\\\"Vpc\\\": {\\\"Type\\\": \\\"ALIYUN::ECS::VPC\\\", \\\"Properties\\\": {\\\"VpcName\\\": \\\"test\\\", \\\"CidrBlock\\\": \\\"192.168.0.0/16\\\", \\\"Description\\\": \\\"test2\\\"}}}, \\\"Outputs\\\": {\\\"VpcId\\\": {\\\"Value\\\": {\\\"Fn::GetAtt\\\": [\\\"Vpc\\\", \\\"VpcId\\\"]}}}}",
"OldTemplateBody": "{\\\"ROSTemplateFormatVersion\\\": \\\"2015-09-01\\\", \\\"Resources\\\": {\\\"Vpc\\\": {\\\"Type\\\": \\\"ALIYUN::ECS::VPC\\\", \\\"Properties\\\": {\\\"VpcName\\\": \\\"test\\\", \\\"CidrBlock\\\": \\\"192.168.0.0/16\\\", \\\"Description\\\": \\\"test1\\\"}}}, \\\"Outputs\\\": {\\\"VpcId\\\": {\\\"Value\\\": {\\\"Fn::GetAtt\\\": [\\\"Vpc\\\", \\\"VpcId\\\"]}}}}"
}
Kode kesalahan
Lihat Error Codes untuk daftar lengkap.
Catatan rilis
Lihat Release Notes untuk daftar lengkap.