使用GitHub Actions和Helm部署到AKS

问题描述

我已经设置了Azure Kubernetes服务,并手动成功部署了多个 Helm图表

我现在想使用GitHub Actions和 Helm 设置CD管道,以在Action触发时部署(即安装和升级)Helm图表。

到目前为止,我只发现不想使用 kubectl 进行部署的Action,但我不想使用它们,因为清单中提供了一些我不想检查的秘密。版本控制,因此决定使用 Helm ,因为它可以在运行helm install命令时使用环境变量提供的值来填充这些秘密:

# without Helm
...
clientId: secretValue

# with Helm
...
clientId: {{ .Values.clientId }}

将以如下方式提供“秘密”: helm install --set clientId = secretValue

现在的问题是如何使用GitHub Actions实现这一目标?有没有我刚刚找不到的“即用型”解决方案,还是必须以完全不同的方式来解决这个问题?

解决方法

似乎我使事情变得比我需要的复杂。

我最终基于 alpine / helm docker镜像编写了一个简单的GitHub Action,并能够成功地将CD管道设置到AKS中。