Linterregel: Artefaktparameter
Diese Regel überprüft, ob die Artefaktparameter ordnungsgemäß definiert sind. Die folgenden Bedingungen müssen erfüllt sein, damit der Test erfolgreich ist:
- Wenn Sie einen Parameter bereitstellen (entweder
_artifactsLocation
oder_artifactsLocationSasToken
), müssen Sie auch den jeweils anderen Parameter angeben. _artifactsLocation
muss eine Zeichenfolge sein.- Wenn
_artifactsLocation
einen Standardwert aufweist, muss dieser entwederdeployment().properties.templateLink.uri
oder einer Rohdaten-URL entsprechen. _artifactsLocationSasToken
muss eine sichere Zeichenfolge sein.- Wenn
_artifactsLocationSasToken
einen Standardwert aufweist, muss dieser eine leere Zeichenfolge sein. - Wenn ein referenziertes Modul einen
_artifactsLocation
- oder einen_artifactsLocationSasToken
-Parameter aufweist, muss ein Wert für diese Parameter übergeben werden, auch wenn sie im Modul über Standardwerte verfügen.
Linter-Regelcode
Verwenden Sie den folgenden Wert in der Bicep-Konfigurationsdatei, um die Regeleinstellungen anzupassen:
artifacts-parameters
Lösung
Im folgenden Beispiel ist der Test nicht erfolgreich, weil _artifactsLocationSasToken
fehlt:
@description('The base URI where artifacts required by this template are located including a trailing \'/\'')
param _artifactsLocation string = deployment().properties.templateLink.uri
...
Im nächsten Beispiel schlägt dieser Test fehl, weil _artifactsLocation
entweder deployment().properties.templateLink.uri
oder eine Rohdaten-URL sein muss, wenn der Standardwert bereitgestellt wird, und der Standardwert von _artifactsLocationSasToken
ist keine leere Zeichenfolge.
@description('The base URI where artifacts required by this template are located including a trailing \'/\'')
param _artifactsLocation string = 'something'
@description('SAS Token for accessing script path')
@secure()
param _artifactsLocationSasToken string = 'something'
...
Dieses Beispiel besteht den Test.
@description('The base URI where artifacts required by this template are located including a trailing \'/\'')
param _artifactsLocation string = deployment().properties.templateLink.uri
@description('SAS Token for accessing script path')
@secure()
param _artifactsLocationSasToken string = ''
...
Nächste Schritte
Weitere Informationen über den Linter finden Sie unter Verwendung des Bicep-Linters.