Guia de início rápido: criar arquivos Bicep com o Visual Studio Code
Este guia de início rápido orienta você pelas etapas para criar um arquivo Bicep com o Visual Studio Code. Criar uma conta de armazenamento e uma rede virtual. Você também aprende como a extensão Bicep simplifica o desenvolvimento fornecendo segurança de tipo, validação de sintaxe e preenchimento automático.
Experiência de criação semelhante também é suportada no Visual Studio. Consulte Guia de início rápido: criar arquivos Bicep com o Visual Studio.
Pré-requisitos
Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.
Para configurar seu ambiente para o desenvolvimento do Bicep, consulte Instalar ferramentas do Bicep. Depois de concluir essas etapas, você tem o Visual Studio Code e a extensão Bicep. Você também tem a CLI do Azure mais recente ou o módulo mais recente do Azure PowerShell.
Adicionar fragmento de recurso
O VS Code com a extensão Bicep simplifica o desenvolvimento fornecendo trechos predefinidos. Neste início rápido, você adiciona um trecho que cria uma rede virtual.
Inicie o Visual Studio Code e crie um novo arquivo chamado main.bicep.
Em main.bicep, digite vnet e, em seguida, selecione res-vnet na lista e, em seguida, pressione [TAB] ou [ENTER].
Gorjeta
Se não vir essas opções do IntelliSense no VS Code, certifique-se de que instalou a extensão Bicep conforme especificado em Pré-requisitos. Se você tiver instalado a extensão, dê ao serviço de idioma Bicep algum tempo para iniciar depois de abrir o arquivo Bicep. Geralmente começa rapidamente, mas você não tem opções do IntelliSense até que ele seja iniciado. Uma notificação no canto inferior direito indica que o serviço está a iniciar. Quando essa notificação desaparece, o serviço está em execução.
Seu arquivo Bicep agora contém o seguinte código:
resource virtualNetwork 'Microsoft.Network/virtualNetworks@2019-11-01' = {
name: 'name'
location: location
properties: {
addressSpace: {
addressPrefixes: [
'10.0.0.0/16'
]
}
subnets: [
{
name: 'Subnet-1'
properties: {
addressPrefix: '10.0.0.0/24'
}
}
{
name: 'Subnet-2'
properties: {
addressPrefix: '10.0.1.0/24'
}
}
]
}
}
Dentro deste trecho, você encontra todos os valores necessários para definir uma rede virtual. Você pode notar dois sublinhados encaracolados. Um amarelo denota um aviso relacionado a uma versão desatualizada da API, enquanto um sublinhado vermelho encaracolado sinaliza um erro causado por uma definição de parâmetro ausente.
Remova @2019-11-01
e substitua-o por @
. Selecione a versão mais recente da API.
Você corrigirá o erro de definição de parâmetro ausente na próxima seção.
Você também pode modificar esse código para atender às suas necessidades. Por exemplo, name
não é um ótimo nome para a rede virtual. Altere a name
propriedade para examplevnet
.
name: 'exampleVNet'
Adicionar parâmetro
O trecho de código adicionado na última seção perde uma definição de parâmetro.
Na parte superior do ficheiro, adicione:
param location
Quando você adiciona um espaço após o local, observe que o IntelliSense oferece os tipos de dados disponíveis para o parâmetro. Selecione a cadeia de caracteres.
Dê ao parâmetro um valor padrão:
param location string = resourceGroup().location
Para obter mais informações sobre a função usada no valor padrão, consulte resourceGroup().
Adicione outro parâmetro para o nome da conta de armazenamento com um valor padrão:
param storageAccountName string = 'store${uniqueString(resourceGroup().id)}'
Para obter mais informações, consulte Interpolação e uniqueString().
Esse parâmetro funciona bem, mas as contas de armazenamento têm limites no comprimento do nome. O nome deve ter pelo menos três caracteres e não mais de 24 caracteres. Você pode especificar esses requisitos adicionando decoradores ao parâmetro.
Adicione uma linha acima do parâmetro e digite @. Você vê os decoradores disponíveis. Observe que há decoradores para minLength e maxLength.
Adicione ambos os decoradores e especifique os limites de caracteres:
@minLength(3)
@maxLength(24)
param storageAccountName string = 'store${uniqueString(resourceGroup().id)}'
Você também pode adicionar uma descrição para o parâmetro. Inclua informações que ajudem as pessoas que implantam o arquivo Bicep a entender qual valor fornecer.
@minLength(3)
@maxLength(24)
@description('Provide a name for the storage account. Use only lower case letters and numbers. The name must be unique across Azure.')
param storageAccountName string = 'store${uniqueString(resourceGroup().id)}'
Seus parâmetros estão prontos para uso.
Adicionar recurso
Em vez de usar um trecho para definir a conta de armazenamento, use o IntelliSense para definir os valores. O IntelliSense torna esta etapa mais fácil do que ter que digitar manualmente os valores.
Para definir um recurso, use a resource
palavra-chave. Abaixo da sua rede virtual, digite exemplo de recursoStorage:
resource exampleStorage
exampleStorage é um nome simbólico para o recurso que você está implantando. Você pode usar esse nome para fazer referência ao recurso em outras partes do arquivo Bicep.
Quando você adiciona um espaço após o nome simbólico, uma lista de tipos de recursos é exibida. Continue digitando storageacc até que você possa selecioná-lo entre as opções disponíveis.
Depois de selecionar Microsoft.Storage/storageAccounts, são apresentadas as versões de API disponíveis. Selecione a versão mais recente. Para a captura de tela a seguir, é 2023-05-01.
Após a cotação única para o tipo de recurso, adicione = e um espaço. São apresentadas opções para adicionar propriedades ao recurso. Selecione as propriedades necessárias.
Esta opção adiciona todas as propriedades para o tipo de recurso que são necessárias para a implantação. Depois de selecionar essa opção, sua conta de armazenamento tem as seguintes propriedades:
resource exampleStorage 'Microsoft.Storage/storageAccounts@2023-05-01' = {
name:
location:
sku: {
name:
}
kind:
}
Está quase concluído. Basta fornecer valores para essas propriedades.
Mais uma vez, o IntelliSense ajuda-o. Defina name
como storageAccountName
, que é o parâmetro que contém um nome para a conta de armazenamento. Para location
, defina-o como location
, que é um parâmetro que você criou anteriormente. Ao adicionar sku.name
e kind
, o IntelliSense apresenta as opções válidas.
Para adicionar propriedades opcionais ao lado das propriedades necessárias, coloque o cursor no local desejado e pressione Ctrl+Space. O IntelliSense sugere propriedades não utilizadas, conforme mostrado na captura de tela a seguir:
Quando terminar, você tem:
@minLength(3)
@maxLength(24)
param storageAccountName string = 'store${uniqueString(resourceGroup().id)}'
param location string = resourceGroup().location
resource virtualNetwork 'Microsoft.Network/virtualNetworks@2024-03-01' = {
name: 'exampleVNet'
location: resourceGroup().location
properties: {
addressSpace: {
addressPrefixes: [
'10.0.0.0/16'
]
}
subnets: [
{
name: 'Subnet-1'
properties: {
addressPrefix: '10.0.0.0/24'
}
}
{
name: 'Subnet-2'
properties: {
addressPrefix: '10.0.1.0/24'
}
}
]
}
}
resource exampleStorage 'Microsoft.Storage/storageAccounts@2023-05-01' = {
name: storageAccountName
location: 'eastus'
sku: {
name: 'Standard_LRS'
}
kind: 'StorageV2'
}
Para obter mais informações sobre a sintaxe do bíceps, consulte Estrutura do bíceps.
Visualizar recursos
Você pode exibir uma representação dos recursos em seu arquivo.
No canto superior direito, selecione o botão do visualizador para abrir o Bicep Visualizer.
O visualizador mostra os recursos definidos no arquivo Bicep com as informações de dependência de recursos. Os dois recursos definidos neste início rápido não têm relação de dependência, portanto, você não vê um conector entre os dois recursos.
Implantar o arquivo Bicep
Clique com o botão direito do mouse no arquivo Bicep dentro do VS Code e selecione Implantar arquivo Bicep.
Na caixa de texto Digite o nome da implantação, digite deployStorageAndVNet e pressione [ENTER].
Na caixa de listagem Selecionar Grupo de Recursos na parte superior, selecione Criar novo Grupo de Recursos.
Digite exampleRG como o nome do grupo de recursos e pressione [ENTER].
Selecione um local para o grupo de recursos, selecione EUA centrais ou um local de sua escolha e pressione [ENTER].
Em Selecione um arquivo de parâmetros, selecione Nenhum.
Leva alguns momentos para criar os recursos. Para obter mais informações, consulte Implantar arquivos Bicep com o Visual Studio Code.
Você também pode implantar o arquivo Bicep usando a CLI do Azure ou o Azure PowerShell:
az group create --name exampleRG --location eastus
az deployment group create --resource-group exampleRG --template-file main.bicep --parameters storageAccountName=uniquename
Quando a implantação terminar, você verá uma mensagem indicando que a implantação foi bem-sucedida.
Clean up resources (Limpar recursos)
Quando os recursos do Azure não forem mais necessários, use a CLI do Azure ou o módulo do Azure PowerShell para excluir o grupo de recursos de início rápido.
az group delete --name exampleRG
Próximos passos
Explore os módulos do Learn para o Bicep.