Aracılığıyla paylaş


Linter kuralı - yapıt parametreleri

Bu kural yapıt parametrelerinin doğru tanımlanıp tanımlanmadığını doğrular. Testi geçmek için aşağıdaki koşulların karşılanması gerekir:

  • Bir parametre ( _artifactsLocation veya _artifactsLocationSasToken) sağlarsanız, diğerini sağlamanız gerekir.
  • _artifactsLocation bir dize olmalıdır.
  • Varsayılan bir değere sahipse _artifactsLocation , varsayılan değeri için ya da deployment().properties.templateLink.uri ham URL olmalıdır.
  • _artifactsLocationSasToken güvenli bir dize olmalıdır.
  • Varsayılan bir değere sahipse _artifactsLocationSasToken , boş bir dize olmalıdır.
  • Başvurulan bir modülün _artifactsLocation veya _artifactsLocationSasToken parametresi varsa, modülde varsayılan değerlere sahip olsalar bile bu parametreler için bir değer geçirilmelidir.

Linter kural kodu

Kural ayarlarını özelleştirmek için Bicep yapılandırma dosyasında aşağıdaki değeri kullanın:

artifacts-parameters

Çözüm

Aşağıdaki örnek eksik olduğundan _artifactsLocationSasToken bu testte başarısız oluyor:

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

...

Varsayılan değer sağlandığında veya ham BIR URL olması deployment().properties.templateLink.uri gerektiğinden ve _artifactsLocationSasToken varsayılan değeri boş bir dize olmadığından sonraki örnek bu testte _artifactsLocation başarısız olur.

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

...

Bu örnek bu testi geçer.

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

...

Sonraki adımlar

Lint hakkında daha fazla bilgi için bkz . Bicep linter'i kullanma.