Firstly, you have defined the play that is verifying the packages, which 
needs to be outside the block:

- name: "Verificamos si el paquete esta instalado"
         shell:
           cmd: |
            rpm -q "{{ item }}"
         with_items: "{{ package_names }}"
         register: package_check

So, it should execute before the *block*, save the output to the register 
variable that is *package_check. *And then check the condition for the 
block to execute *when: package_check is succeeded*

Second, Inside the block on this play, you need to define the with_items on 
this play, to tell it which packages to remove.

- name: "Borramos el paquete"
         yum:
           name: "{{ item }}"
           state: absent
         with_items: "{{ package_names }}"

On Friday, August 12, 2022 at 7:38:25 PM UTC+5 [email protected] wrote:

> Additionally, you're looping over package_names.  I think you may need to 
> instead pull this out to another task_list and include_tasks while looping 
> instead.
>
> On Fri, Aug 12, 2022 at 9:35 AM Paul Manno <[email protected]> wrote:
>
>> You need to move this out of the block
>>        - name: "Verificamos si el paquete esta instalado"
>>          shell:
>>            cmd: |
>>             rpm -q "{{ item }}"
>>          with_items: "{{ package_names }}"
>>          register: package_check
>>
>> On Fri, Aug 12, 2022 at 9:29 AM SysAdmin EM <[email protected]> wrote:
>>
>>> Hi, i create a playbook to remove a yum package:
>>>
>>> --- 
>>> - name: "Eliminamos dnsmasq y agregamos dns del endpoint de route53" 
>>>  hosts: servers
>>>  vars: 
>>>    package_names: 
>>>      - dnsmasq 
>>>  become: yes 
>>>  gather_facts: no 
>>>  tasks: 
>>>    - block: 
>>>        - name: "Verificamos si el paquete esta instalado" 
>>>          shell: 
>>>            cmd: | 
>>>             rpm -q "{{ item }}" 
>>>          with_items: "{{ package_names }}" 
>>>          register: package_check 
>>>        - name: "Borramos el paquete" 
>>>          yum: 
>>>            name: "{{ item }}" 
>>>            state: absent 
>>>        - name: "Agregamos IPs de los nuevos DNS de route53" 
>>>          lineinfile: 
>>>            path: /etc/resolv.conf 
>>>            backup: yes 
>>>            state: present 
>>>            line: "{{ item }}" 
>>>          with_items: 
>>>            - 'nameserver 10.54.130.237' 
>>>            - 'nameserver 10.54.131.106' 
>>>            - 'nameserver 169.254.169.253' 
>>>        - name: "Comentamos el primer nameserver ya que no usamos mas" 
>>>          shell: 
>>>            cmd: | 
>>>             sed -i '/nameserver/{s/.*/#&/;:A;n;bA}' /etc/resolv.conf 
>>>      when: package_check is succeeded
>>>
>>> i see this error:
>>>
>>> FAILED! => {"msg": "The conditional check 'package_check is succeeded' 
>>> failed. The error was: The 'failed' test expects a dictionary\n\nThe error 
>>> appears to be in '/etc/ansible/mod_replace/playbook/comment_inser.yaml': 
>>> line 11, column 11, but may\nbe elsewhere in the file depending on the 
>>> exact syntax problem.\n\nThe offending line appears to be:\n\n    - 
>>> block:\n        - name: \"Verificamos si el paquete esta instalado\"\n     
>>>      ^ here\n"}
>>>
>>> any helps?
>>>
>>> -- 
>>> 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 [email protected].
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/ansible-project/CAGUDtnmnbfGuOjgUbTqm3Oa358Z%2B1htBoE6HyyEj2uB8yHXhmw%40mail.gmail.com
>>>  
>>> <https://groups.google.com/d/msgid/ansible-project/CAGUDtnmnbfGuOjgUbTqm3Oa358Z%2B1htBoE6HyyEj2uB8yHXhmw%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>

-- 
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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/2dc8ed32-84d5-47a4-8752-3a9bbc7a52a5n%40googlegroups.com.

Reply via email to