Linter-instellingen toevoegen in het Bicep-configuratiebestand

In een bicepconfig.json-bestand kunt u validatie-instellingen voor de Bicep-linter aanpassen. De linter gebruikt deze instellingen bij het evalueren van uw Bicep-bestanden voor aanbevolen procedures.

In dit artikel worden de instellingen beschreven die beschikbaar zijn voor het werken met de Bicep-linter.

Linter aanpassen

De linter-instellingen zijn beschikbaar onder het analyzers -element. U kunt de linter in- of uitschakelen, regelspecifieke waarden opgeven en het niveau van regels instellen.

In het volgende voorbeeld ziet u de regels die beschikbaar zijn voor configuratie.

{
  "analyzers": {
    "core": {
      "enabled": true,
      "rules": {
        "adminusername-should-not-be-literal": {
          "level": "warning"
        },
        "artifacts-parameters": {
          "level": "warning"
        },
        "decompiler-cleanup": {
          "level": "warning"
        },
        "explicit-values-for-loc-params": {
          "level": "warning"
        },
        "max-asserts": {
          "level": "warning"
        },
        "max-outputs": {
          "level": "warning"
        },
        "max-params": {
          "level": "warning"
        },
        "max-resources": {
          "level": "warning"
        },
        "max-variables": {
          "level": "warning"
        },
        "nested-deployment-template-scoping": {
          "level": "error"
        },
        "no-conflicting-metadata" : {
          "level": "warning"
        },
        "no-deployments-resources" : {
          "level": "warning"
        },
        "no-hardcoded-env-urls": {
          "level": "warning"
        },
        "no-hardcoded-location": {
          "level": "warning"
        },
        "no-loc-expr-outside-params": {
          "level": "warning"
        },
        "no-unnecessary-dependson": {
          "level": "warning"
        },
        "no-unused-existing-resources": {
          "level": "warning"
        },
        "no-unused-params": {
          "level": "warning"
        },
        "no-unused-vars": {
          "level": "warning"
        },
        "outputs-should-not-contain-secrets": {
          "level": "warning"
        },
        "prefer-interpolation": {
          "level": "warning"
        },
        "prefer-unquoted-property-names": {
          "level": "warning"
        },
        "protect-commandtoexecute-secrets": {
          "level": "warning"
        },
        "secure-parameter-default": {
          "level": "warning"
        },
        "secure-params-in-nested-deploy": {
          "level": "warning"
        },
        "secure-secrets-in-params": {
          "level": "warning"
        },
        "simplify-interpolation": {
          "level": "warning"
        },
        "simplify-json-null": {
          "level": "warning"
        },
        "use-parent-property": {
          "level": "warning"
        },
        "use-recent-api-versions": {
          "level": "warning",
          "maxAllowedAgeInDays": 730
        },
        "use-resource-id-functions": {
          "level": "warning"
        },
        "use-resource-symbol-reference": {
          "level": "warning"
        },
        "use-stable-resource-identifiers": {
          "level": "warning"
        },
        "use-stable-vm-image": {
          "level": "warning"
        }
      }
    }
  }
}

De eigenschappen zijn:

  • ingeschakeld: geef waar op voor het inschakelen van linter, onwaar voor het uitschakelen van linter.
  • uitgebreid: geef true op om het bestand bicepconfig.json weer te geven dat wordt gebruikt door Visual Studio Code.
  • regels: geef regelspecifieke waarden op. Elke regel heeft een niveau dat bepaalt hoe de linter reageert wanneer er een schending wordt gevonden.

De beschikbare waarden voor niveau zijn:

niveau Gedrag tijdens de opbouwtijd Gedrag van editor
Error Schendingen worden weergegeven als fouten in de build-uitvoer van de opdrachtregel en zorgt ervoor dat de build mislukt. Code voor overtreding is onderstreept met een rode kronkel en wordt weergegeven op het tabblad Problemen.
Warning Schendingen worden weergegeven als waarschuwingen in de build-uitvoer van de opdrachtregel, maar ze zorgen er niet voor dat de build mislukt. Code voor belediging wordt onderstreept met een gele kronkel en wordt weergegeven op het tabblad Problemen.
Info Schendingen worden niet weergegeven in de build-uitvoer van de opdrachtregel. Code voor overtreding wordt onderstreept met een blauwe kronkel en wordt weergegeven op het tabblad Problemen.
Off Volledig onderdrukt. Volledig onderdrukt.

Omgevings-URL's

Voor de regel over vastgelegde omgevings-URL's kunt u aanpassen welke URL's worden gecontroleerd. Standaard worden de volgende instellingen toegepast:

{
  "analyzers": {
    "core": {
      "enabled": true,
      "rules": {
        "no-hardcoded-env-urls": {
          "level": "warning",
          "disallowedhosts": [
            "api.loganalytics.io",
            "api.loganalytics.iov1",
            "asazure.windows.net",
            "azuredatalakeanalytics.net",
            "azuredatalakestore.net",
            "batch.core.windows.net",
            "core.windows.net",
            "database.windows.net",
            "datalake.azure.net",
            "gallery.azure.com",
            "graph.windows.net",
            "login.microsoftonline.com",
            "management.azure.com",
            "management.core.windows.net",
            "region.asazure.windows.net",
            "trafficmanager.net",
            "vault.azure.net"
          ],
          "excludedhosts": [
            "schema.management.azure.com"
          ]
        }
      }
    }
  }
}

Volgende stappen