azure管道的HELM升级/安装问题



我正在尝试创建一个新的命名空间并在azure管道中安装发布名称,但我的管道在一小时后超时。

代码如下:

- task: HelmDeploy@0 
displayName: Dry run for upgrade 
inputs: 
connectionType: $(connectionType) 
azureSubscription: $(azureServiceConnection) 
azureResourceGroup: $(azureResourceGroup) 
kubernetesCluster: $(kubernetesCluster) 
namespace: '$(namespace)' 
command: 'upgrade' 
chartType: 'Name' 
chartName: $(chartName) 
releaseName: $(releaseName) 
valueFile: $(valueFile) 
install: true 
waitForExecution: true 
arguments: '--timeout 1h0m0s --create-namespace --install'
有人能帮忙处理这个案子吗?

答案(我花了大约一天的时间阅读文档,因为我有同样的问题)很简单,你的HelmDeploy任务需要内部Admin RBAC权限。

修复代码的最简单的方法是将useClusterAdmin: true添加到HelmDeploy@0任务中,例如添加最后一行:
- task: HelmDeploy@0 
displayName: Dry run for upgrade 
inputs: 
connectionType: $(connectionType) 
azureSubscription: $(azureServiceConnection) 
azureResourceGroup: $(azureResourceGroup) 
kubernetesCluster: $(kubernetesCluster)
namespace: '$(namespace)' 
command: 'upgrade' 
chartType: 'Name' 
chartName: $(chartName) 
releaseName: $(releaseName) 
valueFile: $(valueFile) 
install: true 
waitForExecution: true 
arguments: '--timeout 1h0m0s --create-namespace --install'
useClusterAdmin: true

为了清楚起见,这将绕过集群的RBAC权限。如果您想要更细粒度的东西,那么参考本讨论,您必须不使用专用的HelmDeploy任务,而使用AzureCLI@2helm upgrade ...

最新更新