Elimina desvios de stack realizando detecção de desvio.
Descrição da operação
Limites: Você pode eliminar desvios apenas em stacks que apresentaram desvio. Você deve chamar a operação DetectStackDrift para realizar a detecção de desvio em um stack, chamar a operação GetStackDriftDetectionStatus para consultar o status de desvio do stack e confirmar que o stack apresentou desvio, e então chamar a operação UpdateStackTemplateByResources para eliminar o desvio.
Neste tópico, o desvio é eliminado para um stack cujo ID é 4a6c9851-3b0f-4f5f-b4ca-a14bf691****. O stack está implantado na região China (Hangzhou).
Experimente agora
Testar
Autorização RAM
|
Ação |
Nível de acesso |
Tipo de recurso |
Chave de condição |
Ação dependente |
|
ros:UpdateStackTemplateByResources |
update |
*stack
|
Nenhuma | Nenhuma |
Sintaxe da solicitação
POST /V2/UpdateStackTemplateByResources HTTP/1.1
Parâmetros da solicitação
|
Parâmetro |
Tipo |
Obrigatório |
Descrição |
Exemplo |
| StackId |
string |
Sim |
O ID do stack. |
4a6c9851-3b0f-4f5f-b4ca-a14bf691**** |
| DryRun |
boolean |
Não |
Especifica se deve apenas visualizar o modelo corrigido nesta solicitação. Valor padrão: false. Valores válidos:
Nota
Recomendamos que você defina o parâmetro DryRun como true para visualizar o modelo corrigido. Se o conteúdo do modelo atender às expectativas, defina o parâmetro DryRun como false para executar a correção. |
false |
| RegionId |
string |
Sim |
O ID da região do stack. Você pode chamar a operação DescribeRegions para consultar a lista de regiões mais recente. |
cn-hangzhou |
| ClientToken |
string |
Não |
O token do cliente usado para garantir a idempotência da solicitação. Você pode usar o cliente para gerar o valor, mas deve garantir que ele seja único entre diferentes solicitações. O token pode ter até 64 caracteres e pode conter letras, dígitos, hifens (-) e underscores (_). Para mais informações, consulte Como garantir a idempotência. |
123e4567-e89b-12d3-a456-42665544**** |
| TemplateFormat |
string |
Não |
O formato do modelo retornado. Valor padrão: JSON. Valores válidos:
|
JSON |
| LogicalResourceId |
array |
Não |
O ID lógico do recurso. |
Vpc |
|
string |
Não |
O ID lógico do recurso N, usado para filtrar recursos. A correção do modelo tem efeito apenas para os recursos na lista. Por padrão, todos os recursos que apresentaram desvio são corrigidos. Se a lista de recursos corrigidos contiver recursos no estado DELETED, o ROS poderá ajustar os recursos que não estão na lista, mas que referenciam os recursos excluídos na lista, para garantir a correção do novo modelo. |
WebServer |
Para mais informações sobre parâmetros de solicitação comuns, consulte Parâmetros comuns.
Elementos de resposta
|
Elemento |
Tipo |
Descrição |
Exemplo |
|
object |
|||
| RequestId |
string |
O ID da solicitação. |
B288A0BE-D927-4888-B0F7-B35EF84B6E6F |
| NewTemplateBody |
string |
O conteúdo do modelo após a correção. |
{\"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 |
O conteúdo do modelo antes da correção. |
{\"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\"]}}}} |
| Código de status HTTP | Código de erro | Mensagem de erro | Descrição |
| 400 | StackDriftDetectionNotAvailable | There is no complete drift detection for stack ({ID}). | A mensagem de erro retornada porque nenhuma detecção de desvio foi concluída no stack. ID indica o ID do stack. |
| 400 | StackAlreadyInSync | This is not need to correct stack drifts, stack ({ID}) is already in sync. | A mensagem de erro retornada porque não existe desvio e a correção do modelo não é necessária. ID indica o ID do stack. |
| 400 | CorrectStackDriftsFailure | {reason} | A mensagem de erro retornada porque o stack não pode ser corrigido. reason indica o motivo específico. |
| 404 | StackNotFound | The Stack ({name}) could not be found. | A mensagem de erro retornada porque o stack especificado não existe. name indica o nome ou ID do stack. |
| 404 | ResourceNotFound | The Resource ({name}) could not be found in Stack {stack}. | A mensagem de erro retornada porque o recurso especificado não existe no stack especificado. name indica o nome do recurso, e stack indica o nome ou ID do stack. |
Exemplos
Resposta de sucesso
JSON formato
{
"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\\\"]}}}}"
}
Códigos de erro
Consulte Códigos de Erro para uma lista completa.
Notas de versão
Consulte Notas de Versão para uma lista completa.