Linter-regel - artefactparameters

Met deze regel wordt gecontroleerd of de artefactparameters correct zijn gedefinieerd. Aan de volgende voorwaarden moet worden voldaan om de test door te geven:

  • Als u één parameter opgeeft (of _artifactsLocation_artifactsLocationSasToken), moet u de andere opgeven.
  • _artifactsLocation moet een tekenreeks zijn.
  • Als _artifactsLocation deze een standaardwaarde heeft, moet deployment().properties.templateLink.uri deze een of een onbewerkte URL zijn voor de standaardwaarde.
  • _artifactsLocationSasToken moet een beveiligde tekenreeks zijn.
  • Als _artifactsLocationSasToken er een standaardwaarde is, moet dit een lege tekenreeks zijn.
  • Als een module waarnaar wordt verwezen een _artifactsLocation of _artifactsLocationSasToken parameter heeft, moet een waarde worden doorgegeven voor deze parameters, zelfs als deze standaardwaarden in de module hebben.

Linter-regelcode

Gebruik de volgende waarde in het Bicep-configuratiebestand om regelinstellingen aan te passen:

artifacts-parameters

Oplossing

In het volgende voorbeeld mislukt deze test omdat _artifactsLocationSasToken deze ontbreekt:

@description('The base URI where artifacts required by this template are located including a trailing \'/\'')
param _artifactsLocation string = deployment().properties.templateLink.uri

...

In het volgende voorbeeld mislukt deze test omdat _artifactsLocation het een of een onbewerkte URL moet zijn deployment().properties.templateLink.uri wanneer de standaardwaarde wordt opgegeven en de standaardwaarde van _artifactsLocationSasToken geen lege tekenreeks is.

@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'

...

In dit voorbeeld wordt deze test doorgegeven.

@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 = ''

...

Volgende stappen

Zie Bicep linter gebruiken voor meer informatie over de linter.