Re: [ansible-project] Getting command not found when executing using shell module

2020-03-17 Thread Stefan Hornburg (Racke)
On 3/17/20 8:05 AM, Shifa Shaikh wrote:
> Here is my playbook:
> 
> cat test.yml
> 
> |
> -name:Play2
>   hosts:targetserver
>   tasks:
> 
>     -copy:src=./centosscript.sh dest=~mode=775
>     -shell:~/centosscript.sh
> |
> 
> 
> Here is my shell script:
> 
> cat centosscript.sh
> |
> #/bin/ksh
> grabip=`ip r | grep kernel`
> |
> 
> I also tried 
> 
> |
> grabip=`ifconfig | grep inet`
> |
> 
> 
> cat myhosts
> |
> [targetserver]
> 10.9.9.26
> |
> 
> I get the following error when i run the playbook:
> 
> |
> TASK
> [copy]*
> changed:[10.9.9.26]
> 
> 
> TASK
> [shell]
> fatal:[10.9.9.26]:FAILED!=>{"changed":true,"cmd":"~/centosscript.sh","delta":"0:00:00.122291","end":"2020-03-17
> 12:18:49.485014","msg":"non-zero return code","rc":1,"start":"2020-03-17
> 12:18:49.362723","stderr":"/home/user1/centosscript.sh: line 2: ip: command 
> not
> found","stderr_lines":["/home/user1/centosscript.sh: line 2: ip: command not 
> found"],"stdout":"","stdout_lines":[]}
> 
> 
> PLAY RECAP
> **
> 10.9.9.26                :ok=1   changed=1   unreachable=0   failed=1   
> skipped=0   rescued=0   ignored=0
> |
> 
> When i run ip r or ifconfig commands they work fine on the target server. 
> 
> Can you please help overcome this issue ?

Ansible is running the shell non-interactive, thus it uses a different 
environment.

Possible solutions:

- Use full paths for ip / ipconfig
- Define PATH in your script
- Define PATH in env parameter in your task

Regards
   Racke

> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Ansible Project" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to
> ansible-project+unsubscr...@googlegroups.com 
> .
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/ansible-project/0022ac55-f5e6-429c-a446-b2193939e655%40googlegroups.com
> .


-- 
Ecommerce and Linux consulting + Perl and web application programming.
Debian and Sympa administration. Provisioning with Ansible.

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to ansible-project+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/8e8feadc-e4de-2524-4766-938443c99868%40linuxia.de.


signature.asc
Description: OpenPGP digital signature


[ansible-project] Getting command not found when executing using shell module

2020-03-17 Thread Shifa Shaikh
Here is my playbook:

cat test.yml

- name: Play 2
  hosts: targetserver
  tasks:

- copy: src=./centosscript.sh dest=~ mode=775
- shell: ~/centosscript.sh


Here is my shell script:

cat centosscript.sh
#/bin/ksh
grabip=`ip r | grep kernel`

I also tried 

grabip=`ifconfig | grep inet`


cat myhosts
[targetserver]
10.9.9.26

I get the following error when i run the playbook:

TASK [copy] 
*
changed: [10.9.9.26]


TASK [shell] 

fatal: [10.9.9.26]: FAILED! => {"changed": true, "cmd": "~/centosscript.sh", 
"delta": "0:00:00.122291", "end": "2020-03-17 12:18:49.485014", "msg": 
"non-zero 
return code", "rc": 1, "start": "2020-03-17 12:18:49.362723", "stderr": 
"/home/user1/centosscript.sh: 
line 2: ip: command not found", "stderr_lines": ["/home/user1/centosscript.sh: 
line 2: ip: command not found"], "stdout": "", "stdout_lines": []}


PLAY RECAP 
**
10.9.9.26 : ok=1changed=1unreachable=0failed=1 
   skipped=0rescued=0ignored=0

When i run ip r or ifconfig commands they work fine on the target server. 

Can you please help overcome this issue ?

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to ansible-project+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/0022ac55-f5e6-429c-a446-b2193939e655%40googlegroups.com.