Linterbeállítások hozzáadása a Bicep-konfigurációs fájlban

A bicepconfig.json fájlban testre szabhatja a Bicep-linter érvényesítési beállításait. A linter ezeket a beállításokat használja a Bicep-fájlok ajánlott eljárásokhoz való kiértékelésekor.

Ez a cikk a Bicep-linter használatához elérhető beállításokat ismerteti.

A linter testreszabása

A linterbeállítások az analyzers elem alatt érhetők el. Engedélyezheti vagy letilthatja a lintert, megadhatja a szabályspecifikus értékeket, és beállíthatja a szabályok szintjét.

Az alábbi példa a konfigurációhoz elérhető szabályokat mutatja be.

{
  "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"
        }
      }
    }
  }
}

A tulajdonságok a következők:

  • enabled: adja meg a true értéket a linter engedélyezéséhez, hamis a linter letiltására.
  • részletes: adja meg az true értéket a Visual Studio Code által használt bicepconfig.json fájl megjelenítéséhez.
  • szabályok: adja meg a szabályspecifikus értékeket. Minden szabály rendelkezik egy szinttel, amely meghatározza, hogy a linter hogyan reagál a szabálysértés észlelésekor.

A szinthez elérhető értékek a következők:

szint Buildelési idő viselkedése A szerkesztő viselkedése
Error A szabálysértések hibákként jelennek meg a parancssori build kimenetében, és a build meghiúsulását okozza. A hibás kódot piros hullámos vonallal aláhúzza a rendszer, és megjelenik a Problémák lapon.
Warning A szabálysértések figyelmeztetésként jelennek meg a parancssori build kimenetében, de nem okozzák a build meghiúsulását. A jogsértő kódot sárga hullámos vonallal aláhúzza a rendszer, és a Problémák lapon jelenik meg.
Info A szabálysértések nem jelennek meg a parancssori build kimenetében. A hibás kódot kék hullámos vonallal aláhúzza a rendszer, és a Problémák lapon jelenik meg.
Off Teljesen el van rejtve. Teljesen el van rejtve.

Környezeti URL-címek

A rögzített környezeti URL-címekre vonatkozó szabály esetében testre szabhatja, hogy mely URL-címek legyenek bejelölve. Alapértelmezés szerint a rendszer a következő beállításokat alkalmazza:

{
  "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"
          ]
        }
      }
    }
  }
}

Következő lépések