Dela via


Använda Bicep-linter

Bicep-lintern kontrollerar Bicep-filer efter syntaxfel och överträdelser av bästa praxis. Linter hjälper till att framtvinga kodningsstandarder genom att ge vägledning under utvecklingen. Du kan anpassa metodtipsen för att kontrollera filen.

Linterkrav

Lintern är integrerad i Bicep CLI och Bicep-tillägget för Visual Studio Code. Om du vill använda den måste du ha Bicep CLI version 0.4 eller senare.

Standardregler

Standarduppsättningen med linterregler är minimal och tas från arm-ttk-testfall. Tillägget och Bicep CLI kontrollerar följande regler, som är inställda på varningsnivån.

Linterregel Standardnivå
adminusername-should-not-be-literal varning
artifacts-parameters varning
decompiler-cleanup varning
explicita-värden-för-lokaliseringsparametrar av
max-asserts fel
max-outputs fel
max-params fel
max-resources fel
max-variables fel
nested-deployment-template-scoping fel
ingen-konflikterande-metadata varning
inga-distributions-resurser varning
no-hardcoded-env-urls varning
ingen-hårdkodad-plats av
no-loc-expr-outside-params av
ingen-onödiga-beroenden varning
inga-använda-befintliga-resurser varning
no-unused-imports varning
no-unused-params (inga oanvända parametrar) varning
no-unused-vars varning
utdata-ska-inte-innehålla-hemligheter varning
prefer-interpolation varning
föredra-otciterade-egenskapsnamn varning
skydda-kommandoförattutföra-hemligheter varning
secure-parameter-default varning
secure-params-in-nested-deploy varning
säkra-hemligheter-i-parametrar varning
förenkla interpolering varning
simplify-json-null varning
använd-föräldra-egenskap varning
använd-nyaste-api-versionerna av
use-recent-az-powershell-version varning
använd-nyliga-modulversioner av
use-resource-id-functions av
use-resource-symbol-reference varning
använd-säker-åtkomst varning
använd-säker-värde-för-säkra-indata varning
använd-stabila-ressursidentifierare varning
använd-stabil-vm-bild varning
vad-händer-om-kortslutning av

Du kan aktivera eller inaktivera alla linterregler och styra hur de tillämpas med hjälp av en konfigurationsfil. Om du vill åsidosätta standardbeteendet skapar du enbicepconfig.json fil med dina anpassade inställningar. Mer information om hur du tillämpar dessa inställningar finns i Lägga till anpassade inställningar i Bicep-konfigurationsfilen.

Använda i Visual Studio Code

Följande skärmbild visar lintern i Visual Studio Code:

Bicep-linteranvändning i Visual Studio Code.

I fönstret PROBLEM visas fyra fel, en varning och ett informationsmeddelande på skärmbilden. Informationsmeddelandet visar Bicep-konfigurationsfilen som används. Den visar bara den här informationen när du anger utförligt till sant i konfigurationsfilen.

Hovra musmarkören till ett av problemområdena. Linter ger information om felet eller varningen. Välj området, det visar också en blå glödlampa:

Bicep-linteranvändning i Visual Studio Code – visa snabbkorrigering.

Välj antingen glödlampan eller snabbkorrigeringslänken för att se lösningen:

Bicep-linteranvändning i Visual Studio Code – visa snabbkorrigeringslösning.

Välj lösningen för att åtgärda problemet automatiskt.

Använda i Bicep CLI

Följande skärmbild visar lintern på kommandoraden. Utdata från lint-kommandot och build-kommandot visar eventuella regelöverträdelser.

Bicep-linteranvändning på kommandoraden.

Du kan integrera dessa kontroller som en del av dina CI/CD-pipelines. Du kan använda en GitHub-åtgärd för att försöka skapa en bicep. Fel kommer att misslyckas pipelines.

Tysta falska positiva identifieringar

Ibland kan en regel ha falska positiva identifieringar. Du kan till exempel behöva inkludera en länk till en bloblagring direkt utan att använda funktionen environment(). I det här fallet kan du inaktivera varningen endast för en rad, inte hela dokumentet, genom att lägga till #disable-next-line <rule name> före raden med varningen.

#disable-next-line no-hardcoded-env-urls //Direct download link to my toolset
scriptDownloadUrl: 'https://mytools.blob.core.windows.net/...'

Det är bra att lägga till en kommentar som förklarar varför regeln inte gäller för den här raden.

Om du vill ignorera en linterregel kan du ändra nivån för regeln till Off i bicepconfig.json. I följande exempel no-deployments-resources ignoreras till exempel regeln:

{
  "analyzers": {
    "core": {
      "rules": {
        "no-deployments-resources": {
          "level": "off"
        }
      }
    }
  }
}

Nästa steg