【发布时间】:2022-01-03 05:04:05
【问题描述】:
我有一个 azure devops 管道,用于将 kubernetes 项目部署到 Rancher。在我的 k8s deployment.yaml 文件中,我定义了这样的环境变量:
containers:
- name: frontend
env:
- name: GIT_HASH
value: dummy_value
我希望能够将 GIT_HASH 替换为在 azure yml 管道中创建的值。具体来说,我有一个脚本来获取 git 提交,例如:
- task: Bash@3
displayName: Set the short git hash as a variable
inputs:
targetType: 'inline'
script: |
short_hash=$(git rev-parse --short=7 HEAD)
echo "##vso[task.setvariable variable=git-hash;]$short_hash"
我希望能够将该值作为GIT_HASH 注入到 kubernetes 中。有没有办法做到这一点?我尝试使用qetza.replacetokens.replacetokens-task.replacetokens@3,但无法使用。
【问题讨论】:
-
您是否考虑过使用 Helm 或 Kustomize 来模板化您的部署清单,而不是依赖令牌替换?
-
replacetokens应该可以工作,你能分享一下你到底做了什么吗?我同意丹尼尔的观点,你需要考虑使用 Helm。 -
是的,最终按照@DanielMann 的建议使用了 kustomise - 就像一个魅力!
标签: azure kubernetes azure-devops rancher