Ansible shell未运行Helm命令

问题描述 投票:0回答:1

是否有使用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。

有任何想法吗?

shell ansible kubernetes-helm
1个回答
0
投票

通过执行使它起作用

- 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标志以查看结果。

© www.soinside.com 2019 - 2024. All rights reserved.