使用https://github.com/concourse/concourse:latest(4.2.2)。
当我拥有一个concourse-ci管道文档时,我可以使用((var))和{{var}}之类的变量-但是,如何传递带有诸如这样的变量的文件
params:
kubectl: | k8s/mykubectl # a template file that has variables
然后该文件包含以下内容:
run test --image=testme:((mytag)) --port ((myport))
我如何获得替代这些变量的途径,例如ansible模板模块将做的事情。
谢谢您的建议!
答案 0 :(得分:0)
我不知道Concourse-CI,所以不确定我是否正确理解了您的问题。
但是,如果您的问题是:我如何确保Ansible不会解释模板文件的某些部分?我建议您使用raw
标签来逃避模板块。
{% raw %}
run test --image=testme:((mytag)) --port ((myport))
{% endraw %}
答案 1 :(得分:0)
我使用https://github.com/kelseyhightower/confd找到了答案。
基本上基于Alpine构建docker映像,并在其PATH中使用confd二进制文件。然后使用该图像作为任务资源,以基于模板和KVPS的某些来源生成文件。使用confd作为KVP时,您可以使用领事,保险库等,而我使用的.yml文件也可以正常工作。
希望有帮助!