Tous les produits
Search
Centre de documentation

:PreviewStack

Dernière mise à jour :Aug 05, 2026

Prévisualise les informations sur une pile que vous souhaitez créer ou mettre à jour à partir d'un modèle. Vous pouvez appeler cette opération pour vérifier si les ressources du modèle sont valides.

Description de l'opération

Dans cet exemple, une pile nommée MyStack est créée dans la région de Chine (Hangzhou) et prévisualisée. Le paramètre TemplateBody de la pile est défini sur {"ROSTemplateFormatVersion":"2015-09-01"}.

Testez maintenant

Testez cette API dans OpenAPI Explorer, sans signature manuelle. Les appels réussis génèrent automatiquement du code SDK correspondant à vos paramètres. Téléchargez-le avec une sécurité intégrée des identifiants pour une utilisation locale. Testez cette API dans OpenAPI Explorer, sans signature manuelle. Les appels réussis génèrent automatiquement du code SDK correspondant à vos paramètres. Téléchargez-le avec une sécurité intégrée des identifiants pour une utilisation locale.

Test

Autorisation RAM

Le tableau ci-dessous décrit les autorisations nécessaires pour appeler cette API. Vous pouvez les définir dans une politique Resource Access Management (RAM). Les colonnes du tableau sont détaillées ci-dessous :

  • Action : les actions peuvent être utilisées dans l'élément Action des instructions de politique de permissions RAM pour accorder les autorisations nécessaires à l'exécution de l'opération.

  • API : l'API que vous pouvez appeler pour exécuter l'action.

  • Niveau d'accès : le niveau d'accès prédéfini accordé pour chaque API. Valeurs valides : create, list, get, update et delete.

  • Type de ressource : le type de ressource qui prend en charge l'autorisation pour exécuter l'action. Il indique si l'action prend en charge les permissions au niveau de la ressource. La ressource spécifiée doit être compatible avec l'action. Sinon, la politique sera inefficace.

    • Pour les API avec permissions au niveau de la ressource, les types de ressource requis sont marqués d'un astérisque (*). Spécifiez l'Alibaba Cloud Resource Name (ARN) correspondant dans l'élément Resource de la politique.

    • Pour les API sans permissions au niveau de la ressource, la valeur All Resources est affichée. Utilisez un astérisque (*) dans l'élément Resource de la politique.

  • Clé de condition : les clés de condition définies par le service. La clé permet un contrôle granulaire, applicable aux actions seules ou aux actions associées à des ressources spécifiques. En plus des clés de condition propres au service, Alibaba Cloud fournit un ensemble de clés de condition communes applicables à tous les services pris en charge par RAM.

  • Action dépendante : les actions dépendantes requises pour exécuter l'action. Pour mener à bien l'opération, l'utilisateur RAM ou le rôle RAM doit disposer des permissions pour toutes les actions dépendantes.

ros:PreviewStack

get

*Stack

acs:ros:{#regionId}:{#accountId}:stack/{#StackId}

Template

acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}

Aucune Aucune

Paramètres de requête

Paramètre

Type

Requis

Description

Exemple

DisableRollback

boolean

Non

Indique si la restauration des ressources doit être désactivée en cas d'échec de la création de la pile. Valeurs valides :

false

TimeoutInMinutes

integer

Non

Le délai d'expiration pour la création de la pile.

60

TemplateBody

string

Non

La structure qui contient le corps du modèle. Le corps du modèle doit avoir une longueur de 1 à 524 288 octets. Si la longueur du corps du modèle dépasse la limite supérieure, il est recommandé d'ajouter des paramètres au corps de la requête HTTP POST afin d'éviter les échecs de requête causés par des URL excessivement longues.

{"ROSTemplateFormatVersion":"2015-09-01"}

StackPolicyURL

string

Non

L'URL du fichier qui contient la stratégie de la pile. L'URL doit pointer vers une stratégie située sur un serveur web HTTP ou HTTPS ou dans un compartiment Object Storage Service (OSS), comme oss://ros/stack-policy/demo ou oss://ros/stack-policy/demo?RegionId=cn-hangzhou. Le fichier de stratégie peut avoir une longueur maximale de 16 384 octets. Si vous ne spécifiez pas l'identifiant de la région du compartiment OSS, la valeur de RegionId est utilisée.

oss://ros-stack-policy/demo

RegionId

string

Oui

L'identifiant de la région de la pile. Vous pouvez appeler l'opération DescribeRegions pour interroger la liste des régions la plus récente.

cn-hangzhou

StackPolicyBody

string

Non

La structure qui contient le corps de la stratégie de la pile. Le corps de la stratégie de la pile doit avoir une longueur de 1 à 16 384 octets.

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

StackName

string

Non

Le nom de la pile. Vous pouvez utiliser ce paramètre pour prévisualiser la pile que vous souhaitez créer. Le nom peut comporter jusqu'à 255 caractères et peut contenir des chiffres, des lettres, des traits d'union (-) et des traits de soulignement (_). Il doit commencer par un chiffre ou une lettre.

MyStack

ClientToken

string

Non

Le jeton client utilisé pour garantir l'idempotence de la requête. Vous pouvez utiliser le client pour générer le jeton, mais vous devez vous assurer que le jeton est unique pour chaque requête.

123e4567-e89b-12d3-a456-42665544****

TemplateURL

string

Non

L'URL du fichier qui contient le corps du modèle. L'URL doit pointer vers un modèle situé sur un serveur web HTTP ou HTTPS ou dans un compartiment OSS, comme oss://ros/template/demo ou oss://ros/template/demo?RegionId=cn-hangzhou. Le corps du modèle peut avoir une longueur maximale de 524 288 octets. Si vous ne spécifiez pas l'identifiant de la région du compartiment OSS, la valeur de RegionId est utilisée.

oss://ros-template/demo

TemplateId

string

Non

L'identifiant du modèle. Ce paramètre s'applique aux modèles partagés et privés.

5ecd1e10-b0e9-4389-a565-e4c15efc****

TemplateVersion

string

Non

La version du modèle. Ce paramètre ne prend effet que lorsque TemplateId est spécifié.

v1

Parameters

array<object>

Non

Les paramètres de la pile.

object

Non

ParameterKey

string

Oui

Le nom du paramètre N. Si vous ne spécifiez pas le nom et la valeur d'un paramètre, Resource Orchestration Service (ROS) utilise le nom et la valeur par défaut spécifiés dans le modèle. Valeur maximale de N : 200.

ALIYUN::AccountId

ParameterValue

string

Oui

La valeur du paramètre N. Valeur maximale de N : 200.

151266687691****

Parallelism

integer

Non

Le nombre maximal d'opérations simultanées pouvant être effectuées sur les ressources. Ce paramètre ne prend effet que pour les piles Terraform.

1

TemplateScratchId

string

Non

L'identifiant du scénario.

ts-aa9c62feab844a6b****

TemplateScratchRegionId

string

Non

L'identifiant de la région du scénario. La valeur par défaut est identique à la valeur de RegionId.

cn-hangzhou

StackId

string

Non

L'identifiant de la pile. Vous pouvez utiliser ce paramètre pour prévisualiser une pile que vous souhaitez mettre à jour.

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

EnablePreConfig

boolean

Non

Indique si les paramètres que vous souhaitez utiliser dans le précontrôle de conformité doivent être interrogés.

false

TaintResources

array

Non

Les ressources marquées comme contaminées.

string

Non

La ressource marquée comme contaminée.

my_vpc

UsePreviousParameters

boolean

Non

Indique si les valeurs des paramètres utilisés en dernier lieu doivent être utilisées.

true

Pour plus d'informations sur les paramètres de requête courants, consultez Paramètres courants.

Éléments de réponse

Élément

Type

Description

Exemple

object

RequestId

string

L'identifiant de la requête.

B288A0BE-D927-4888-B0F7-B35EF84B6E6F

Stack

object

Les informations sur la pile prévisualisée.

TemplateDescription

string

La description du modèle.

Une instance ECS

Parameters

array<object>

Les paramètres de la pile.

object

ParameterKey

string

The name of the parameter.

ALIYUN::AccountId

ParameterValue

string

The value of the parameter.

151266687691****

Description

string

La description de la pile.

Une instance ECS

DisableRollback

boolean

Indique si la restauration est désactivée pour les ressources en cas d'échec de la création de la pile.

false

StackName

string

Le nom de la pile.

MyStack

TimeoutInMinutes

integer

Le délai d'expiration pour la création de la pile.

60

StackPolicyBody

object

La structure qui contient le corps de la stratégie de la pile.

{ "Statement": [ { "Action": "Update:*", "Resource": "*", "Effect": "Allow", "Principal": "*" }, { "Action": "Update:*", "Resource": "LogicalResourceId/apple1", "Effect": "Deny", "Principal": "*" } ] }

Resources

array<object>

Les ressources de la pile.

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

  • Modify

  • Remove

  • None

Add

Replacement

string

Indicates whether a replacement update is performed on the template. Valid values:

  • True: A replacement update is performed on the template.

  • False: A change is made on the template.

  • Conditional: A replacement update may be performed on the template. You can check whether a replacement update is performed when the template is in use.

Remarque

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

La région où réside la pile.

cn-hangzhou

Log

object

Le journal généré lors de l'exécution de la pile.

TerraformLogs

array<object>

The Terraform logs. This parameter is returned only if the stack is a Terraform stack.

Remarque

This parameter contains the logs of previewing the stack.

object

Command

string

The name of the Terraform command that is run. Valid values:

  • apply

  • plan

  • destroy

  • version

For more information about Terraform commands, see Basic CLI Features.

apply

Stream

string

The output stream. Valid values:

  • stdout: standard output stream

  • stderr: standard error stream

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.

Exemples

JSON format

{
  "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."
        }
      ]
    }
  }
}

Codes d'erreur

Consultez Codes d'erreur pour la liste complète.

Notes de version

Consultez Notes de version pour la liste complète.