當我嘗試將圖表推送到 ACR 時出現以下錯誤。你能建議在這里完成的步驟嗎?
“此命令已隱式棄用,因為命令組 'acr helm' 已棄用,并將在未來版本中洗掉。請改用 'helm v3'。”
我按照這篇文章創建了舵圖
https://cloudblogs.microsoft.com/opensource/2018/11/27/tutorial-azure-devops-setup-cicd-pipeline-kubernetes-docker-helm/
這些文章也描述了這個問題,但我不明白需要做什么來解決它。 https://github.com/Azure/azure-cli/issues/14498 https://gitanswer.com/azure-cli-az-acr-helm-commands-not-working-python-663770738 https://github。 com/Azure/azure-cli/issues/14467
這是引發錯誤的yaml腳本
- bash: |
cd $(projectName)
chartPackage=$(ls $(projectName)-$(helmChartVersion).tgz)
az acr helm push \
-n $(registryName) \
-u $(registryLogin) \
-p '$(registryPassword)' \
$chartPackage
Chart.yaml
apiVersion: v1
description: first helm chart create
name: helmApp
version: v0.3.0
uj5u.com熱心網友回復:
Azure 已棄用使用 Az Cli 管理 Helm 圖表的支持。因此,您將需要版本 Helm 客戶端3.7.1來將 Helm 圖表推送到 ACR。
要將 Helm 圖表推送到 ACR,請執行以下步驟:
啟用 OCI 支持
export HELM_EXPERIMENTAL_OCI=1將圖表保存到本地存檔
cd chart-dir helm package .使用
helm registry login命令向注冊表進行身份驗證helm registry login $ACR_NAME.azurecr.io \ --username $USER_NAME \ --password $PASSWORD將圖表作為 OCI 工件推送到注冊表
helm push chart-name-0.1.0.tgz oci://$ACR_NAME.azurecr.io/helm
您可以在 Azure DevOps 管道中使用上述步驟,它將按預期作業。有關將掌舵圖推送到 ACR 的更多資訊,請參閱此檔案。
uj5u.com熱心網友回復:
將變數HELM_EXPERIMENTAL_OCI=1作為 bash 腳本的一部分匯出。ACR 中的 Azure Chart 博物館是 OCI 注冊表,因此需要設定此 ENV 變數才能推送。
仔細檢查問題后,您應該為此設定內置任務
- task: HelmDeploy@0
displayName: Helm save
inputs:
command: save
chartNameForACR: '<chart_name>:<tag>'
chartPathForACR: <chart_dir>
azureSubscriptionEndpointForACR: $(SERVICE_CONNECTION)
azureResourceGroupForACR: $(REGISTRY_RESOURCE_GROUP)
azureContainerRegistry: $(REGISTRY_NAME)
```
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/410383.html
標籤:
