Visualiza as informações sobre uma stack que você deseja criar ou atualizar com base em um modelo. Você pode chamar esta operação para verificar se os recursos do modelo são válidos.
Descrição da operação
Neste exemplo, uma stack chamada MyStack é criada na região China (Hangzhou) e visualizada. O parâmetro TemplateBody da stack é definido como {"ROSTemplateFormatVersion":"2015-09-01"}.
Experimente agora
Testar
Autorização RAM
|
Ação |
Nível de acesso |
Tipo de recurso |
Chave de condição |
Ação dependente |
|
ros:PreviewStack |
get |
*Stack
Template
|
Nenhuma | Nenhuma |
Parâmetros da solicitação
|
Parâmetro |
Tipo |
Obrigatório |
Descrição |
Exemplo |
| DisableRollback |
boolean |
Não |
Especifica se o rollback dos recursos deve ser desativado quando a criação da stack falhar. Valores válidos:
|
false |
| TimeoutInMinutes |
integer |
Não |
O período de tempo limite para a criação da stack. Unidade: minutos. Valor padrão: 60. |
60 |
| TemplateBody |
string |
Não |
A estrutura que contém o corpo do modelo. O corpo do modelo deve ter de 1 a 524.288 bytes de comprimento. Se o comprimento do corpo do modelo exceder o limite superior, recomendamos que você adicione parâmetros ao corpo da solicitação HTTP POST para evitar falhas de solicitação causadas por URLs excessivamente longas. Nota
Você deve especificar apenas um dos seguintes parâmetros: TemplateBody, TemplateURL, TemplateId e TemplateScratchId. |
{"ROSTemplateFormatVersion":"2015-09-01"} |
| StackPolicyURL |
string |
Não |
A URL do arquivo que contém a política da stack. A URL deve apontar para uma política localizada em um servidor web HTTP ou HTTPS ou em um bucket do Object Storage Service (OSS), como oss://ros/stack-policy/demo ou oss://ros/stack-policy/demo?RegionId=cn-hangzhou. O arquivo de política pode ter até 16.384 bytes de comprimento. Se você não especificar o ID da região do bucket OSS, o valor de RegionId será usado. Nota
Você pode especificar apenas um entre StackPolicyBody e StackPolicyURL. A URL pode ter até 1.350 bytes de comprimento. |
oss://ros-stack-policy/demo |
| RegionId |
string |
Sim |
O ID da região da stack. Você pode chamar a operação DescribeRegions para consultar a lista de regiões mais recente. |
cn-hangzhou |
| StackPolicyBody |
string |
Não |
A estrutura que contém o corpo da política da stack. O corpo da política da stack deve ter de 1 a 16.384 bytes de comprimento. Nota
Você pode especificar apenas um entre StackPolicyBody e StackPolicyURL. |
{"Statement": [{"Action": "Update:*", "Resource": "*", "Effect": "Allow", "Principal": "*"}]} |
| StackName |
string |
Não |
O nome da stack. Você pode usar este parâmetro para visualizar a stack que deseja criar. O nome pode ter até 255 caracteres de comprimento e pode conter dígitos, letras, hifens (-) e underscores (_). Deve começar com um dígito ou letra. Nota
Você deve especificar apenas um entre StackName e StackId. |
MyStack |
| 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 token, mas deve garantir que o token seja único entre diferentes solicitações. O token pode ter até 64 caracteres de comprimento e pode conter letras, dígitos, underscores (_) e hifens (-). Para mais informações, consulte Garantir idempotência. |
123e4567-e89b-12d3-a456-42665544**** |
| TemplateURL |
string |
Não |
A URL do arquivo que contém o corpo do modelo. A URL deve apontar para um modelo localizado em um servidor web HTTP ou HTTPS ou em um bucket OSS, como oss://ros/template/demo ou oss://ros/template/demo?RegionId=cn-hangzhou. O corpo do modelo pode ter até 524.288 bytes de comprimento. Se você não especificar o ID da região do bucket OSS, o valor de RegionId será usado. Nota
Você deve especificar apenas um dos seguintes parâmetros: TemplateBody, TemplateURL, TemplateId e TemplateScratchId. |
oss://ros-template/demo |
| TemplateId |
string |
Não |
O ID do modelo. Este parâmetro se aplica a modelos compartilhados e privados. Nota
Você deve especificar apenas um dos seguintes parâmetros: TemplateBody, TemplateURL, TemplateId e TemplateScratchId. |
5ecd1e10-b0e9-4389-a565-e4c15efc**** |
| TemplateVersion |
string |
Não |
A versão do modelo. Este parâmetro entra em vigor somente quando TemplateId é especificado. |
v1 |
| Parameters |
array<object> |
Não |
Os parâmetros da stack. |
|
|
object |
Não |
|||
| ParameterKey |
string |
Sim |
O nome do parâmetro N. Se você não especificar o nome e o valor de um parâmetro, o Resource Orchestration Service (ROS) usará o nome e o valor padrão especificados no modelo. Valor máximo de N: 200. Nota
Se você especificar Parameters, deverá especificar Parameters.N.ParameterKey. |
ALIYUN::AccountId |
| ParameterValue |
string |
Sim |
O valor do parâmetro N. Valor máximo de N: 200. Nota
Se você especificar Parameters, deverá especificar Parameters.N.ParameterValue. |
151266687691**** |
| Parallelism |
integer |
Não |
O número máximo de operações simultâneas que podem ser executadas em recursos. Este parâmetro entra em vigor somente para stacks Terraform. Por padrão, este parâmetro está vazio. Você pode definir este parâmetro como um inteiro maior ou igual a 0. Nota
Se você definir este parâmetro como um inteiro maior que 0, o inteiro será usado. Se você definir este parâmetro como 0 ou deixá-lo vazio, o valor padrão do Terraform será usado. Na maioria dos casos, o valor padrão do Terraform é 10. |
1 |
| TemplateScratchId |
string |
Não |
O ID do cenário. Para mais informações sobre como consultar o ID do cenário, consulte ListTemplateScratches. Nota
Você deve especificar apenas um dos seguintes parâmetros: TemplateBody, TemplateURL, TemplateId e TemplateScratchId. |
ts-aa9c62feab844a6b**** |
| TemplateScratchRegionId |
string |
Não |
O ID da região do cenário. O valor padrão é o mesmo que o valor de RegionId. Você pode chamar a operação DescribeRegions para consultar a lista de regiões mais recente. |
cn-hangzhou |
| StackId |
string |
Não |
O ID da stack. Você pode usar este parâmetro para visualizar uma stack que deseja atualizar. Nota
|
4a6c9851-3b0f-4f5f-b4ca-a14bf691**** |
| EnablePreConfig |
boolean |
Não |
Especifica se os parâmetros que você deseja usar na verificação de conformidade prévia devem ser consultados. Valores válidos:
|
false |
| TaintResources |
array |
Não |
Os recursos marcados como tainted. |
|
|
string |
Não |
O recurso marcado como tainted.
|
my_vpc |
|
| UsePreviousParameters |
boolean |
Não |
Especifica se os valores dos parâmetros usados pela última vez devem ser utilizados. Valores válidos:
|
true |
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 |
| Stack |
object |
As informações sobre a stack visualizada. |
|
| TemplateDescription |
string |
A descrição do modelo. |
One ECS instance. |
| Parameters |
array<object> |
Os parâmetros da stack. |
|
|
object |
|||
| ParameterKey |
string |
The name of the parameter. |
ALIYUN::AccountId |
| ParameterValue |
string |
The value of the parameter. |
151266687691**** |
| Description |
string |
A descrição da stack. |
One ECS instance. |
| DisableRollback |
boolean |
Indica se o rollback dos recursos está desativado quando a criação da stack falha. |
false |
| StackName |
string |
O nome da stack. |
MyStack |
| TimeoutInMinutes |
integer |
O período de tempo limite para a criação da stack. Unidade: minutos. |
60 |
| StackPolicyBody |
object |
A estrutura que contém o corpo da política da stack. |
{ "Statement": [ { "Action": "Update:*", "Resource": "*", "Effect": "Allow", "Principal": "*" }, { "Action": "Update:*", "Resource": "LogicalResourceId/apple1", "Effect": "Deny", "Principal": "*" } ] } |
| Resources |
array<object> |
Os recursos na stack. |
|
|
array<object> |
|||
| LogicalResourceId |
string |
The logical ID of the resource. |
WebServer |
| AcsResourceType |
string |
The resource type of an Alibaba Cloud service. |
ACS::ECS::Instance |
| ResourceType |
string |
The resource type. |
ALIYUN::ECS::Instance |
| Description |
string |
The description of the resource. |
ECS instance. |
| Stack |
object |
The information about the nested stack. The data structure of the value is the same as the data structure of the entire response. |
{} |
| RequiredBy |
array |
The resources on which the stack depends. |
|
|
string |
The resource on which the stack depends. |
["Resource1", "Resource2"] |
|
| Properties |
object |
The resource properties. |
{ "DiskMappings": [ { "Category": "cloud_ssd", "Size": "20" } ], "SystemDisk_Category": "cloud_ssd", "InstanceChargeType": "PostPaid", "AutoRenew": "False", "WillReplace": true, "ImageId": "centos_7", "InstanceType": "ecs.g6.large", "AllocatePublicIP": true, "AutoRenewPeriod": 1, "IoOptimized": "optimized", "ZoneId": "cn-beijing-g", "VSwitchId": "", "SecurityGroupId": "", "Period": 1, "InternetChargeType": "PayByTraffic", "SystemDiskCategory": "cloud_efficiency", "InternetMaxBandwidthOut": 1, "VpcId": "", "InternetMaxBandwidthIn": 200, "PeriodUnit": "Month" } |
| Action |
string |
The action that is performed on the resource. Valid values:
|
Add |
| Replacement |
string |
Indicates whether a replacement update is performed on the template. Valid values:
Nota
This parameter is returned only if Action is set to Modify. |
False |
| PhysicalResourceId |
string |
The physical ID of the resource. This parameter is returned only if Action is set to Modify or Remove. |
i-a1b2c3*** |
| RegionId |
string |
A região onde a stack reside. |
cn-hangzhou |
| Log |
object |
O log gerado quando a stack é executada. |
|
| TerraformLogs |
array<object> |
The Terraform logs. This parameter is returned only if the stack is a Terraform stack. Nota
This parameter contains the logs of previewing the stack. |
|
|
object |
|||
| Command |
string |
The name of the Terraform command that is run. Valid values:
For more information about Terraform commands, see Basic CLI Features. |
apply |
| Stream |
string |
The output stream. Valid values:
|
stdout |
| Content |
string |
The content of the output stream that is returned after the command is run. |
Apply complete! Resources: 42 added, 0 changed, 0 destroyed. |
Exemplos
Resposta de sucesso
JSON formato
{
"RequestId": "B288A0BE-D927-4888-B0F7-B35EF84B6E6F",
"Stack": {
"TemplateDescription": "One ECS instance.",
"Parameters": [
{
"ParameterKey": "ALIYUN::AccountId",
"ParameterValue": "151266687691****"
}
],
"Description": "One ECS instance.",
"DisableRollback": false,
"StackName": "MyStack",
"TimeoutInMinutes": 60,
"StackPolicyBody": {
"Statement": [
{
"Action": "Update:*",
"Resource": "*",
"Effect": "Allow",
"Principal": "*"
},
{
"Action": "Update:*",
"Resource": "LogicalResourceId/apple1",
"Effect": "Deny",
"Principal": "*"
}
]
},
"Resources": [
{
"LogicalResourceId": "WebServer",
"AcsResourceType": "ACS::ECS::Instance",
"ResourceType": "ALIYUN::ECS::Instance",
"Description": "ECS instance.",
"Stack": {},
"RequiredBy": [
"[\"Resource1\", \"Resource2\"]"
],
"Properties": {
"DiskMappings": [
{
"Category": "cloud_ssd",
"Size": "20"
}
],
"SystemDisk_Category": "cloud_ssd",
"InstanceChargeType": "PostPaid",
"AutoRenew": "False",
"WillReplace": true,
"ImageId": "centos_7",
"InstanceType": "ecs.g6.large",
"AllocatePublicIP": true,
"AutoRenewPeriod": 1,
"IoOptimized": "optimized",
"ZoneId": "cn-beijing-g",
"VSwitchId": "",
"SecurityGroupId": "",
"Period": 1,
"InternetChargeType": "PayByTraffic",
"SystemDiskCategory": "cloud_efficiency",
"InternetMaxBandwidthOut": 1,
"VpcId": "",
"InternetMaxBandwidthIn": 200,
"PeriodUnit": "Month"
},
"Action": "Add",
"Replacement": "False",
"PhysicalResourceId": "i-a1b2c3***"
}
],
"RegionId": "cn-hangzhou",
"Log": {
"TerraformLogs": [
{
"Command": "apply",
"Stream": "stdout",
"Content": "Apply complete! Resources: 42 added, 0 changed, 0 destroyed."
}
]
}
}
}
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.