首页 文章

无法使用Ansible playbook执行Python脚本

提问于
浏览
0

我有一个运行“vgs”命令的python脚本来检查可用卷组中的可用空间,然后使用lvcreate命令创建lvm .

当我在本地运行这个python脚本时,我可以毫无问题地运行它,并且也可以创建lvm . 但是如果我使用Ansible playbook运行它,我就无法找到 vgs 命令的路径并失败 . 它似乎只是寻找 /usr/bin:/bin 路径 . 请帮忙 .

which: no vgs in (/usr/bin:/bin)", "No Volume Groups Found", "Space Found in Volume Group:"], "warnings": []}

"stderr": "sh: -c: line 0: syntax error near unexpected token `('\nsh: -c: line 0: `{ which: no vgs in (/usr/bin:/bin) -o VG_NAME --noheadings --units m ; } 2>&1'

1 回答

  • 1

    似乎它只是在寻找'/ usr / bin:/ bin'路径 .

    因为交互式和非交互式shell会话调用不同的rc文件集 . 如果在仅由交互式shell提供的rc文件中设置 PATH ,则这些设置将不会反映在非交互式shell中 .

    PATH 添加为任务的环境变量:

    - command: <script_on_target_node>
      environment:
        PATH: <path_string>
    

相关问题