Discourse::Utils.execute_command not using path

My plugin needs ansible. I was installing it with apt-get, but that version in debian seems broken, so I tried installing it with pipx install --include-deps ansible. So far so good. Works just fine as either root or discourse. But when my command runs with #!/usr/bin/env ansible-playbook it can’t find it. I’ve done all sorts of things making sure that the path includes ~/.local/pipx/venvs/ansible/bin, and it works in shells, but when Rails runs it, it can’t find it.

create_droplet ansible task failed  error_message: /var/www/discourse/lib/discourse.rb:138:in `exec': /usr/bin/env: ‘ansible-playbook’: No such file or directory

I’m stumped.

I fixed it by installing ansible like this:

PIPX_HOME=/opt/pipx PIPX_BIN_DIR=/usr/local/bin pipx install --force --include-deps ansible 

Now I’m working on getting jmespath installed such that Ansible can find it. :crying_cat_face: