是否有使用Ansible添加头盔仓库的方法?我正在尝试将其自动化,作为剧本的一部分,该剧本引导集群,安装头盔并添加稳定的回购协议。
除了添加回购位,一切正常。
我在我的Yaml定义中有此任务
- name: Add helm stable repo
shell: helm repo add stable https://kubernetes-charts.storage.googleapis.com
但是我得到了错误
"changed": true, "cmd": "helm repo add stable https://kubernetes-charts.storage.googleapis.com/", "/bin/sh: 1: helm: not found" "stderr_lines": ["/bin/sh: 1: helm: not found"]
这很奇怪,因为确实安装了头盔。我可以ssh进入盒子并运行
helm version --short
v3.2.0+ge11b7ce
当我跑步时
helm repo add stable https://kubernetes-charts.storage.googleapis.com/
直接,它有效。但不是通过ansible。
有任何想法吗?
通过执行使它起作用
- name: Add helm stable repo
become: yes
become_user: vagrant
shell: helm repo add stable {{ helm_stable_repo }}
args:
executable: /bin/bash
register: "results"
- debug:
var: results
好像我只需要让它以用户vagrant
的身份运行。
我添加了executable: /bin/bash
以强制其使用/bin/bash
最终并不需要。
和debug
标志以查看结果。