リンター ルール - 安定したリソース識別子を使用する
リソース名では、非決定的な値を使用しないでください。 たとえば、リソース名に newGuid()
や utcNow()
は使用できません。また、既定値として newGuid()
や utcNow()
を使用するパラメーター/変数をリソース名に含めることはできません。
リンター ルールのコード
ルール設定をカスタマイズするには、Bicep 構成ファイルで次の値を使用します。
use-stable-resource-identifiers
解決策
次の例は、utcNow()
がリソース名で使用されているため、このテストに失敗します。
param location string = resourceGroup().location
param time string = utcNow()
resource sa 'Microsoft.Storage/storageAccounts@2023-04-01' = {
name: 'store${toLower(time)}'
location: location
sku: {
name: 'Standard_LRS'
}
kind: 'StorageV2'
properties: {
accessTier: 'Hot'
}
}
これを修正するには、この例から utcNow()
関数を削除します。
param location string = resourceGroup().location
resource sa 'Microsoft.Storage/storageAccounts@2023-04-01' = {
name: 'store${uniqueString(resourceGroup().id)}'
location: location
sku: {
name: 'Standard_LRS'
}
kind: 'StorageV2'
properties: {
accessTier: 'Hot'
}
}
次のステップ
リンターの詳細については、「Bicep リンターの使用方法」を参照してください。