Início rápido: Criar modelos do ARM com o Visual Studio Code

As ferramentas do Azure Resource Manager para o Visual Studio Code fornecem suporte à linguagem, snippets de recursos e preenchimento automático de recursos. Essas ferramentas ajudam a criar e validar modelos do ARM (modelos do Azure Resource Manager) e, portanto, são o método recomendado de criação e configuração de modelo do ARM. Neste guia de início rápido, você usará a extensão para criar um modelo do ARM do zero. Ao fazer isso, você experimenta as funcionalidades de extensões, como snippets de modelos do Resource Manager, validação, conclusões e suporte ao arquivo de parâmetro.

Este início rápido foca no uso da extensão do Visual Studio Code para criar o modelo do ARM. Para obter um tutorial mais focado na sintaxe, confira Tutorial: criar e implementar seu primeiro modelo do ARM.

Para concluir este início rápido, você precisa do Visual Studio Code, com a instalação da extensão das ferramentas do Azure Resource Manager. Você também precisa da CLI do Azure ou do módulo do Azure PowerShell instalado e autenticado.

Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.

Dica

Recomendamos o Bicep porque ele oferece as mesmas funcionalidades que os modelos do ARM e a sintaxe é mais fácil de usar. Para saber mais, consulte Início Rápido: criar arquivos Bicep com o Visual Studio Code.

Observação

A versão atual da extensão de ferramentas do Azure Resource Manager para Visual Studio Code não reconhece os aprimoramentos feitos no languageVersion 2.0.

Criar um modelo do Resource Manager

Crie e abra com um novo arquivo chamado azuredeploy.json com o Visual Studio Code. Insira arm no editor de códigos, que inicia os snippets do Azure Resource Manager para o scaffolding de um modelo do Resource Manager.

Selecione arm! para criar um modelo com escopo para uma implantação do grupo de recursos do Azure.

Screenshot showing Azure Resource Manager scaffolding snippets.

Este snippet cria os blocos de construção básicos para um modelo do Resource Manager.

Screenshot showing a fully scaffolded ARM template.

Observe que o modo de linguagem do Visual Studio Code foi alterado de JSON para Modelo do Azure Resource Manager. A extensão inclui um servidor de idiomas específico para modelos do ARM que fornece validação, conclusão e outros serviços de idiomas específicos do modelo.

Screenshot showing Azure Resource Manager as the Visual Studio Code language mode.

Adicionar um recurso do Azure

A extensão inclui snippets para muitos recursos do Azure. Esses snippets podem ser usados para adicionar recursos facilmente à implantação de modelo.

Coloque o cursor sobre o bloco recursos do modelo, digite storage e selecione o snippet arm-storage.

Screenshot showing a resource being added to the ARM template.

Esta ação adiciona um recurso de armazenamento ao modelo.

Screenshot showing an Azure Storage resource in an ARM template.

A tecla tab pode ser usada para tabular pelas propriedades configuráveis na conta de armazenamento.

Screenshot showing how the tab key can be used to navigate through resource configuration.

Conclusão e validação

Uma das funcionalidades mais poderosas da extensão é a integração com os esquemas do Azure. Os esquemas do Azure fornecem à extensão as funcionalidades de validação e de conclusão com reconhecimento de recursos. Vamos modificar a conta de armazenamento para ver a validação e a conclusão em ação.

Primeiro, atualize o tipo de conta de armazenamento para um valor inválido, como megaStorage. Observe que esta ação produz um aviso indicando que megaStorage não é um valor válido.

Screenshot showing an invalid storage configuration.

Para usar as funcionalidades de conclusão, remova megaStorage, coloque o cursor dentro das aspas duplas e pressione ctrl + space. Esta ação apresenta uma lista de conclusão de valores válidos.

Screenshot showing extension auto-completion.

Adicionar parâmetros do modelo

Agora crie e use um parâmetro para especificar o nome da conta de armazenamento.

Coloque o cursor no bloco de parâmetros, adicione um retorno de carro, digite " e selecione o snippet new-parameter. Esta ação adiciona um parâmetro genérico ao modelo.

Screenshot showing a parameter being added to the ARM template.

Atualize o nome do parâmetro para storageAccountName e a descrição para Storage Account Name.

Screenshot showing the completed parameter in an ARM template.

Os nomes da conta de armazenamento do Azure têm um comprimento mínimo de 3 caracteres e um máximo de 24. Adicione minLength e maxLength ao parâmetro e forneça os valores apropriados.

Screenshot showing minLength and maxLength being added to an ARM template parameter.

Agora, no recurso de armazenamento, atualize a propriedade nome para usar o parâmetro. Para fazer isso, remova o nome atual. Insira aspas duplas e um colchete de abertura [, que produz uma lista de funções de modelo do Resource Manager. Selecione parâmetros na lista.

Screenshot showing auto-completion when using parameters in ARM template resources.

Inserir uma aspa simples ' dentro dos parênteses produz uma lista de todos os parâmetros definidos no modelo, neste caso, storageAccountName. Selecione o parâmetro.

Screenshot showing completed parameter in an ARM template resource.

Criar um arquivo de parâmetro

Um arquivo de parâmetro do modelo do Resource Manager permite armazenar valores de parâmetros específicos do ambiente e transmitir esses valores como um grupo no momento da implantação. Por exemplo, você pode ter um arquivo de parâmetros com valores específicos para um ambiente de teste e outro para um ambiente de produção.

A extensão facilita a criação de um arquivo de parâmetro usando os modelos existentes. Para isso, clique com o botão direito do mouse no modelo do editor de códigos e selecione Select/Create Parameter File.

Screenshot showing the right-click process for creating a parameter file from an ARM template.

Selecione New>All Parameters> Selecione um nome e um local para o arquivo de parâmetro.

Essa ação cria um novo arquivo de parâmetro e o mapeia com o modelo do qual ele foi criado. Você pode ver e modificar o mapeamento atual do arquivo de modelo/parâmetro na barra de status do Visual Studio Code enquanto o modelo está selecionado.

Screenshot showing the template/parameter file mapping in the Visual Studio Code status bar.

Agora que o arquivo de parâmetro está mapeado para o modelo, a extensão valida o modelo e o arquivo de parâmetro juntos. Para ver essa validação na prática, adicione um valor de dois caracteres ao parâmetro storageAccountName no arquivo de parâmetro e salve o arquivo.

Screenshot showing an invalidated template due to parameter file issue.

Navegue de volta ao modelo do ARM e observe o erro indicando que o valor não atende aos critérios do parâmetro.

Screenshot showing a valid ARM template.

Atualize o valor para algo apropriado, salve o arquivo e navegue de volta ao modelo. Observe que o erro no parâmetro foi resolvido.

Implantar o modelo

Abra o terminal integrado do Visual Studio Code usando a combinação de teclas ctrl + ` e use o módulo da CLI do Azure ou do Azure PowerShell para implantar o modelo.

az group create --name arm-vscode --location eastus

az deployment group create --resource-group arm-vscode --template-file azuredeploy.json --parameters azuredeploy.parameters.json

Limpar os recursos

Quando os recursos do Azure não forem mais necessários, use o módulo da CLI do Azure ou do Azure PowerShell para excluir o grupo de recursos de início rápido.

az group delete --name arm-vscode

Próximas etapas