Usar o linter do Bicep
O linter Bicep verifica os erros de sintaxe e as violações de práticas recomendadas em arquivos Bicep. O linter ajuda a impor padrões de codificação fornecendo diretrizes durante o desenvolvimento. Você pode personalizar melhores práticas de criação a serem usadas para verificar o arquivo.
Requisitos do Linter
O linter está integrado à CLI do Bicep e à extensão do Bicep para Visual Studio Code. Para usá-lo, você deve ter a versão 0.4 ou posterior.
Regras padrão
O conjunto padrão de regras de linter é mínimo e retirado de casos de teste arm-ttk. A extensão e a CLI do Bicep verificam as regras a seguir, que são definidas para o nível de aviso.
- adminusername-should-not-be-literal
- artifacts-parameters
- Limpeza do descompilador
- explicit-values-for-loc-params
- max-asserts
- max-outputs
- max-params
- max-resources
- max-variables
- nested-deployment-template-scoping
- no-conflicting-metadata
- no-deployments-resources
- no-hardcoded-env-urls
- no-hardcoded-location
- no-loc-expr-outside-params
- no-unnecessary-dependson
- no-unused-existing-resources
- no-unused-params
- no-unused-vars
- outputs-should-not-contain-secrets
- prefer-interpolation
- prefer-unquoted-property-names
- secure-parameter-default
- secure-params-in-nested-deploy
- secure-secrets-in-params
- simplify-interpolation
- Simplify-json-null
- use-parent-property
- use-protectedsettings-for-commandtoexecute-secrets
- use-recent-api-versions
- use-recent-module-versions
- use-resource-id-functions
- use-resource-symbol-reference
- use-safe-access
- use-secure-value-for-secure-inputs
- use-stable-resource-identifiers
- use-stable-vm-image
- what-if-short-circuiting
Você pode personalizar o modo como as regras do linter são aplicadas. Para substituir as configurações padrão, adicione um arquivo bicepconfig.json e aplique configurações personalizadas. Para obter mais informações sobre como aplicar essas configurações, confira Adicionar configurações personalizadas no arquivo de configuração bicep.
Usar no Visual Studio Code
A seguinte captura de tela mostra o linter no Visual Studio Code:
No painel PROBLEMAS, há quatro erros, um aviso e uma mensagem de informações mostrada na captura de tela. A mensagem de informações mostra o arquivo de configuração de Bicep usado. Ele só mostra essa informação quando você definir verbose como true no arquivo de configuração.
Passe o cursor do mouse em uma das áreas com problema. O linter fornece os detalhes sobre o erro ou aviso. Uma lâmpada azul também será exibida ao selecionar a área:
Selecione a lâmpada ou o link Correção rápida para ver a solução:
Selecione a solução para corrigir o problema automaticamente.
Usar na CLI do Bicep
A captura de tela a seguir mostra o linter na linha de comando. A saída do comando lint e do comando de build mostra quaisquer violações de regra.
Você pode integrar essas verificações como parte de seus pipelines de CI/CD. Você pode usar uma ação do GitHub para tentar um build do Bicep. Erros irão fazer com que os pipelines falhem.
Silenciar falsos positivos
Às vezes, uma regra pode ter falsos positivos. Por exemplo, talvez seja necessário incluir um link para um armazenamento de blobs diretamente sem usar a função environment().
Nesse caso, você pode desabilitar o aviso apenas para uma linha, não para todo o documento, adicionando #disable-next-line <rule name>
antes da linha com o aviso.
#disable-next-line no-hardcoded-env-urls //Direct download link to my toolset
scriptDownloadUrl: 'https://mytools.blob.core.windows.net/...'
É uma boa prática adicionar um comentário explicando por que a regra não se aplica a esta linha.
Se você quiser suprimir uma regra linter, poderá alterar o nível da regra para Off
em bicepconfig.json. No seguinte exemplo, a regra no-deployments-reesources
foi suprimida:
{
"analyzers": {
"core": {
"rules": {
"no-deployments-resources": {
"level": "off"
}
}
}
}
}
Próximas etapas
- Para obter mais informações sobre como personalizar as regras de linter, confira Adicionar configurações personalizadas no arquivo de configuração Bicep.
- Para obter mais informações sobre como usar o Visual Studio Code e a extensão do Bicep, consulte Início rápido: criar arquivos Bicep com o Visual Studio Code.