L'action ACS::Template intègre un modèle dans un autre en tant que modèle enfant.
Description
L'action ACS::Template intègre un modèle dans un autre en tant que modèle enfant. Utilisez cette action pour modulariser un modèle complexe en le divisant en plusieurs modèles enfants réutilisables. Vous pouvez également définir des opérations courantes d'exploitation et de maintenance (O&M) sous forme de modèles enfants. CloudOps Orchestration Service (OOS) propose des actions de produits cloud sous forme de modèles d'opération pour les services cloud courants, que vous pouvez intégrer directement.
Syntaxe
Intégrer un modèle existant à l'aide du nom du modèle
-
Format général (applicable à tous les modèles intégrables)
Tasks: - Name: callChildTemplate1 Action: ACS::Template Properties: TemplateName: child_template_name # Required. The name of the child template. TemplateVersion: v2 # Optional. By default, the latest version is used. Parameters: # Optional. The parameters that are required for executing the child template. ParameterName1: value1{ "Tasks": [ { "Name": "callChildTemplate1", "Action": "ACS::Template", "Properties": { "TemplateName": "child_template_name", "TemplateVersion": "v2", "Parameters": { "ParameterName1": "value1" } } } ] } -
Format simplifié (applicable uniquement aux actions de produits cloud)
Tasks: - Name: taskName # Required. The name of the task. Example: runMyInstances. Action: CloudProductActionName1 # Required. The name of the cloud product action. Example: ACS::ECS::RunInstances. Properties: ParameterName1: value1 # Optional. The parameter that is required for executing the cloud product action. Example: ImageId.{ "Tasks": [ { "Name": "taskName", "Action": "CloudProductActionName1", "Properties": { "ParameterName1": "parameterName1" } } ] }
Intégrer un nouveau modèle à l'aide du contenu du modèle
Tasks:
- Name: callChildTemplate1
Action: ACS::Template
Properties:
TemplateContent:
FormatVersion: OOS-2019-06-01 # Required. The version of the template.
Parameters: # Optional. The parameters that are required for executing the child template.
Tasks: # Optional. The action that is performed by the child template.{
"Tasks": [
{
"Name": "callChildTemplate1",
"Action": "ACS::Template",
"Properties": {
"TemplateContent": {
"FormatVersion": "OOS-2019-06-01",
"Parameters": null,
"Tasks": null
}
}
}
]
}Limites
L'intégration est soumise aux limites suivantes :
Un modèle ne peut pas s'intégrer lui-même.
L'intégration circulaire n'est pas autorisée. Par exemple, le modèle A intègre B, B intègre C et C intègre A.
Le nombre total de niveaux d'intégration ne peut pas dépasser trois.
L'intégration d'une action de produit cloud compte comme un niveau d'intégration. Les tâches en boucle ne sont pas comptabilisées comme une intégration.