![](/img/trans.png)
[英]Azure Bicep ( key vault secret passing as a parameter to local variable)
[英]Azure SQL Server CICD Bicep and Key Vault
我已經構建了一個 CICD 管道來部署 Azure SQL 服務器和數據庫,此過程的一部分是從 Key Vault 中的秘密中獲取用戶名和密碼。 YAML 中的 Key Vault 任務可以運行並可以訪問 Vault,但是當它調用 Azure CLI 任務來執行 Bicep 時,它會失敗並出現以下錯誤:
ERROR: Unable to parse parameter: **
我的代碼:
steps:
- task: AzureKeyVault@2
displayName: 'Download Key Vault Secrets'
inputs:
connectedServiceName: ${{ parameters.AzureResourceManagerConnection }}
keyVaultName: ${{ parameters.keyVaultName }}
secretsFilter: '*'
- task: AzureCLI@2
displayName: '${{ parameters.deploymentType }}: ${{ parameters.targetEnvironment }} ${{ parameters.product }}'
inputs:
azureSubscription: ${{ parameters.AzureResourceManagerConnection }}
scriptType: 'ps'
scriptLocation: 'inlineScript'
inlineScript: |
$tags = "${{ parameters.releaseFolder }}/${{ parameters.targetEnvironment }}/tags.json"
$products = "${{ parameters.releaseFolder }}/${{ parameters.targetEnvironment }}/products.json"
$productDeploymentFile = "${{ parameters.releaseFolder }}/SQLServer.bicep"
az --version
az deployment group ${{ parameters.deploymentType }} --name ${{ parameters.targetEnvironment }}-${{ parameters.product }}-products-deployment --resource-group ${{ parameters.resourceGroup }} --template-file $productDeploymentFile --parameters $tags $products "$(sql-admin-username)" "$(sql-admin-password)" --mode ${{ parameters.deploymentMode }}
和二頭肌文件:
param tags object
param sqlServers array
param sqlDatbases array
param sqlAdminUserName string
@secure()
param sqlAdminPassword string
resource sqlServer 'Microsoft.Sql/servers@2021-08-01-preview' = [for sql in sqlServers: {
name: sql.Name
location: sql.location
properties: {
administratorLogin: sqlAdminUserName
administratorLoginPassword: sqlAdminPassword
administrators: {
azureADOnlyAuthentication: false
administratorType: sql.administratorType
principalType: sql.principalType
login: sql.login
sid: sql.sid
tenantId: sql.tenantId
}
}
tags: tags
}]
有什么明顯不正確的地方嗎?
查看您的 yaml 文件,您傳遞內聯參數的方式不正確(請參閱文檔),您還需要指定參數名稱:
az deployment group `
...
--parameters `
sqlAdminUserName="$(sql-admin-username)" `
sqlAdminPassword="$(sql-admin-password)" `
...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.