Aturan Linter - parameter artefak
Aturan ini memverifikasi apakah parameter artefak didefinisikan dengan benar. Kondisi berikut harus dipenuhi untuk dapat lolos pengujian ini:
- Jika Anda memberikan satu parameter (baik
_artifactsLocation
atau_artifactsLocationSasToken
), Anda harus memberikan parameter lainnya. _artifactsLocation
harus berupa string.- Jika
_artifactsLocation
memiliki nilai bawaan, itu harus berupadeployment().properties.templateLink.uri
atau URL mentah untuk nilai bawaannya. _artifactsLocationSasToken
harus berupa string yang aman.- Jika
_artifactsLocationSasToken
memiliki nilai default, itu harus berupa string kosong. - Jika modul yang direferensikan memiliki parameter
_artifactsLocation
atau_artifactsLocationSasToken
, nilai harus diteruskan untuk parameter tersebut, meskipun parameter tersebut memiliki nilai default dalam modul.
Kode aturan linter
Gunakan nilai berikut pada file konfigurasi Bicep untuk menyesuaikan pengaturan aturan:
artifacts-parameters
Solusi
Contoh berikut gagal dalam pengujian ini karena _artifactsLocationSasToken
tidak ada:
@description('The base URI where artifacts required by this template are located including a trailing \'/\'')
param _artifactsLocation string = deployment().properties.templateLink.uri
...
Contoh berikutnya gagal dalam pengujian ini karena _artifactsLocation
harus berupa deployment().properties.templateLink.uri
ATAU URL mentah saat nilai default disediakan, dan nilai _artifactsLocationSasToken
default bukan string kosong.
@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'
...
Contoh berikutnya lolos pengujian ini.
@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 = ''
...
Langkah berikutnya
Untuk informasi selengkapnya tentang linter, lihat Menggunakan linter Bicep.