如何在ansible-awx中使用node命令运行任务?

时间:2019-08-05 03:26:41

标签: ansible ansible-awx

我正在尝试从AWX的ansible-playbook运行nodejs脚本。 该命令在常规cli中可以正常运行,但是当我从剧本中运行该命令时,它将失败!

可用版本:

ansible 2.5.1
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/dist-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.15+ (default, Nov 27 2018, 23:36:35) [GCC 7.3.0]

这是剧本的最新踪迹:

---
- name: create a new domain in Digital Ocean.
  hosts: localhost
  connection: local
  tasks:
  - name: create a new domain in Digital Ocean.
    shell: "/var/lib/awx/projects/MY_USERNAME/modules/new-domain.js --name={{client_url|quote}} --ip={{server_ip|quote}}"
    args:
      executable: /usr/bin/node

谢谢

1 个答案:

答案 0 :(得分:0)

executable参数实际上会更改您的shell,这不是您要执行的操作。只需尝试:

  tasks:
  - name: create a new domain in Digital Ocean.
    shell: "/usr/bin/node /var/lib/awx/projects/MY_USERNAME/modules/new-domain.js --name={{client_url|quote}} --ip={{server_ip|quote}}"