conditional statement and if it is true , it should accept yes and continue for next step if not then it should terminate

38 views
Skip to first unread message

Manish Kumar

unread,
Oct 14, 2019, 5:47:53 AM10/14/19
to Ansible Project
Hi All,

I am trying to implement an conditional statement and if it is true , it should accept yes and continue for next step if not then it should terminate .  Below playbook is not reading vaue like what we do in shell script with Echo "..."  read value etc.

Any help ?


- hosts: localhost
  gather_facts: False
  
  tasks:
   - name: Fetch Java version
     shell: java -version 2>&1 | grep version | awk '{print $3}' | sed 's/"//g'     
     register: java_result
 
   - debug:
       msg: "{{ java_result.stdout }}"
   - name: condition when passed
     debug: msg="passed"
     when: java_result.stdout != "1.8.0_131"
  vars_prompt:
   - name: condition 
     prompt: " Do you want to continue?"
     confirm: yes
     debug: msg= "stop"
     when: java_result.stdout == "1.8.0_131"

Thanks,
Manish

Stefan Hornburg (Racke)

unread,
Oct 14, 2019, 5:59:25 AM10/14/19
to ansible...@googlegroups.com
On 10/14/19 11:47 AM, Manish Kumar wrote:
> Hi All,
>
> I am trying to implement an conditional statement and if it is true , it should accept yes and continue for next step if
> not then it should terminate .  Below playbook is not reading vaue like what we do in shell script with Echo "..."  read
> value etc.
>
> Any help ?

I would suggest to use the assert module to make sure a condition is met and bails out if the condition is false.

Regards
Racke

>
>
> - hosts: localhost
>   gather_facts: False
>   
>   tasks:
>    - name: Fetch Java version
>      shell: java -version 2>&1 | grep version | awk '{print $3}' | sed 's/"//g'     
>      register: java_result
>  
>    - debug:
>        msg: "{{ java_result.stdout }}"
>    - name: condition when passed
>      debug: msg="passed"
>      when: java_result.stdout != "1.8.0_131"
>   vars_prompt:
>    - name: condition 
>      prompt: " Do you want to continue?"
>      confirm: yes
>      debug: msg= "stop"
>      when: java_result.stdout == "1.8.0_131"
>
> Thanks,
> Manish
>
> --
> 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-proje...@googlegroups.com <mailto:ansible-proje...@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/ansible-project/c8fbf8af-ea96-4c4b-8433-63fdcee86654%40googlegroups.com
> <https://groups.google.com/d/msgid/ansible-project/c8fbf8af-ea96-4c4b-8433-63fdcee86654%40googlegroups.com?utm_medium=email&utm_source=footer>.


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

signature.asc
Reply all
Reply to author
Forward
0 new messages