Tutorial: Creación de una especificación de plantilla con plantillas vinculadas
Artikulua
Aprenda a crear una especificación de plantilla con una plantilla principal y una plantilla vinculada. Las especificaciones de plantilla se usan para compartir plantillas de ARM con otros usuarios de la organización. En este artículo se muestra cómo crear una especificación de plantilla para empaquetar una plantilla principal y sus plantillas vinculadas con la propiedad relativePath del recurso de implementación.
Cree la plantilla principal y la plantilla vinculada.
Para vincular una plantilla, agregue un recurso de implementaciones a la plantilla principal. En la propiedad templateLink, especifique la ruta de acceso relativa de la plantilla vinculada de acuerdo con la ruta de acceso de la plantilla principal.
La plantilla vinculada se denomina linkedTemplate.jsony se almacena en una subcarpeta denominada artefactos en la ruta de acceso donde se almacena la plantilla principal. Puede usar uno de los valores siguientes para relativePath:
./artifacts/linkedTemplate.json
/artifacts/linkedTemplate.json
artifacts/linkedTemplate.json
La propiedad relativePath siempre es relativa al archivo de plantilla en el que se declara relativePath, por lo que si hay otro archivo linkedTemplate2.json que se llame desde linkedTemplate.json y linkedTemplate2.json se almacena en la misma subcarpeta de artefactos, la propiedad relativePath especificada en linkedTemplate.json es solo linkedTemplate2.json.
Cree la plantilla principal con el JSON siguiente. Guarde la plantilla principal como azuredeploy.json en el equipo local. En este tutorial se da por supuesto que se ha guardado en la ruta de acceso c:\Templates\linkedTS\azuredeploy.json, pero puede usar cualquier ruta de acceso.
Guarde la plantilla como linkedTemplate.json en la carpeta artefactos.
Creación de una especificación de plantilla
Las especificaciones de plantilla se almacenan en grupos de recursos. Cree un grupo de recursos y, a continuación, cree una especificación de plantilla con el script siguiente. El nombre de la especificación de plantilla es webSpec.
az ts show --name webSpec --resource-group templateSpecRG --version"1.0.0.0"
Implementación de la especificación de plantilla
Ahora puede implementar la especificación de plantilla. La implementación de la especificación de plantilla es similar a la implementación de la plantilla que contiene, con la excepción de que se pasa el identificador de recurso de la especificación de plantilla. Puede usar los mismos comandos de implementación y, si es necesario, pasar los valores de parámetro para la especificación de plantilla.
az group create \
--name webRG \
--location westus2
id = $(az ts show --name webSpec --resource-group templateSpecRG --version"1.0.0.0"--query"id")
az deployment group create \
--resource-group webRG \
--template-spec$id
Oharra
Existe un problema conocido al obtener el identificador de la especificación de plantilla y luego asignárselo a una variable en Windows PowerShell.
Cree soluciones de un extremo a otro en Microsoft Azure para crear Azure Functions, implementar y administrar aplicaciones web, desarrollar soluciones que usen Azure Storage, etc.