# Validate setting is removed from a configuration

**URL:** <https://forum.ansible.com/t/validate-setting-is-removed-from-a-configuration/23082>\
**Category:** Ansible Project\
**Created:** [November 23, 2016, 3:25pm UTC](https://forum.ansible.com/t/validate-setting-is-removed-from-a-configuration/23082 "2016-11-23T15:25:06Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Eric\_Marquez](https://avatars.discourse-cdn.com/v4/letter/e/9d8465/32.png) [@Eric\_Marquez](https://forum.ansible.com/u/Eric_Marquez)\
**Post date:** [November 23, 2016, 3:25pm UTC](https://forum.ansible.com/t/validate-setting-is-removed-from-a-configuration/23082/1 "2016-11-23T15:25:06Z")

</div>

I'm working with some Dell OS 9 switches. I'm attempting to remove a command from the configuration. That part works. The part I'm having problems with is validating it was indeed removed from the configuration.

How do I do a validation check to ensure and command does not exist or is not contained in a result.

For example, I am removing the line from the configuration: "neighbor MUX\_IPV4Clst[1-20] distribute-list external-prefix out", but there are multiple group names that will match and all are being removed.

- name: show running bgp  
&nbsp;&nbsp;dellos9\_command:  
&nbsp;&nbsp;&nbsp;&nbsp;provider: "{{ cli }}"  
&nbsp;&nbsp;&nbsp;&nbsp;commands:  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- "do show run bgp | grep MUX\_IPV4Clst3 | grep distribute"  
# wait\_for:  
# - result.stdout ne 'distribute-list'  
&nbsp;&nbsp;register: output

- name: debug  
&nbsp;&nbsp;debug: var=output

- name: check bgp  
&nbsp;&nbsp;shell: "echo {{ output.stdout\_lines[0] }}"  
# when:  
# - output != "distribute-list"  
&nbsp;&nbsp;when: output.stdout.find('distribute-list') != -1

TASK [removeprefix : show running bgp] \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*  
task path: /mnt/c/Users/emarq/Documents/Source/Repos/Solutions.Network.Automation/MAS/Ansible/dell/force10/roles/removeprefix/tasks/main.yml:27  
Using module file /usr/lib/python2.7/dist-packages/ansible/modules/core/network/dellos9/dellos9\_command.py  
\<10.10.234.98\> ESTABLISH LOCAL CONNECTION FOR USER: emarq  
\<10.10.234.98\> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo $HOME/.ansible/tmp/ansible-tmp-1479914628.77-259380380959531 `" && echo ansible-tmp-1479914628.77-259380380959531="` echo $HOME/.ansible/tmp/ansible-tmp-1479914628.77-259380380959531 `" ) && sleep 0'  
\<10.10.234.98\> PUT /tmp/tmpgRL22M TO /home/emarq/.ansible/tmp/ansible-tmp-1479914628.77-259380380959531/dellos9\_command.py  
\<10.10.234.98\> EXEC /bin/sh -c 'chmod u+x /home/emarq/.ansible/tmp/ansible-tmp-1479914628.77-259380380959531/ /home/emarq/.ansible/tmp/ansible-tmp-1479914628.77-259380380959531/dellos9\_command.py && sleep 0'  
\<10.10.234.98\> EXEC /bin/sh -c '/usr/bin/python /home/emarq/.ansible/tmp/ansible-tmp-1479914628.77-259380380959531/dellos9\_command.py; rm -rf "/home/emarq/.ansible/tmp/ansible-tmp-1479914628.77-259380380959531/" \> /dev/null 2\>&1 && sleep 0'  
ok: [rr1-n22-r13-4048hl-5-1b] =\> {  
&nbsp;&nbsp;&nbsp;&nbsp;"changed": false,  
&nbsp;&nbsp;&nbsp;&nbsp;"invocation": {  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"module\_args": {  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"auth\_pass": null,  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"authorize": false,  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"commands": [  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"do show run bgp | grep MUX\_IPV4Clst3 | grep distribute"  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;],  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"host": "10.10.234.98",  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"interval": 1,  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"password": null,  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"port": null,  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"provider": {  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"host": "10.10.234.98",  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"ssh\_keyfile": "/srv/tftpboot/masd-rsa.pub",  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"transport": "cli",  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"username": "admin"  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;},  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"retries": 10,  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"ssh\_keyfile": "/srv/tftpboot/masd-rsa.pub",  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"timeout": 10,  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"transport": "cli",  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"username": "admin",  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"wait\_for": null  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;},  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"module\_name": "dellos9\_command"  
&nbsp;&nbsp;&nbsp;&nbsp;},  
&nbsp;&nbsp;&nbsp;&nbsp;"stdout": [  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"do show run bgp | grep MUX\_IPV4Clst3 | grep distribu\u001b[52D \u001b[55D$run bgp | grep MUX\_IPV4Clst3 | grep distribute\n neighbor MUX\_IPV4Clst3 distribute-list external-prefix out"  
&nbsp;&nbsp;&nbsp;&nbsp;],  
&nbsp;&nbsp;&nbsp;&nbsp;"stdout\_lines": [  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"do show run bgp | grep MUX\_IPV4Clst3 | grep distribu\u001b[52D \u001b[55D$run bgp | grep MUX\_IPV4Clst3 | grep distribute",  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" neighbor MUX\_IPV4Clst3 distribute-list external-prefix out"  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]  
&nbsp;&nbsp;&nbsp;&nbsp;],  
&nbsp;&nbsp;&nbsp;&nbsp;"warnings":   
}

TASK [removeprefix : debug] \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*  
task path: /mnt/c/Users/emarq/Documents/Source/Repos/Solutions.Network.Automation/MAS/Ansible/dell/force10/roles/removeprefix/tasks/main.yml:36  
ok: [rr1-n22-r13-4048hl-5-1b] =\> {  
&nbsp;&nbsp;&nbsp;&nbsp;"output": {  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"changed": false,  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"stdout": [  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"do show run bgp | grep MUX\_IPV4Clst3 | grep distribu\u001b[52D \u001b[55D$run bgp | grep MUX\_IPV4Clst3 | grep distribute\n neighbor MUX\_IPV4Clst3 distribute-list external-prefix out"  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;],  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"stdout\_lines": [  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"do show run bgp | grep MUX\_IPV4Clst3 | grep distribu\u001b[52D \u001b[55D$run bgp | grep MUX\_IPV4Clst3 | grep distribute",  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" neighbor MUX\_IPV4Clst3 distribute-list external-prefix out"  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;],  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"warnings":   
&nbsp;&nbsp;&nbsp;&nbsp;}  
}

TASK [removeprefix : check bgp] \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*  
task path: /mnt/c/Users/emarq/Documents/Source/Repos/Solutions.Network.Automation/MAS/Ansible/dell/force10/roles/removeprefix/tasks/main.yml:39  
fatal: [rr1-n22-r13-4048hl-5-1b]: FAILED! =\> {  
&nbsp;&nbsp;&nbsp;&nbsp;"failed": true,  
&nbsp;&nbsp;&nbsp;&nbsp;"msg": "The conditional check 'output.stdout.find('distribute-list') != -1' failed. The error was: error while evaluating conditional (output.stdout.find('distribute-list') != -1): 'list object' has no attribute 'find'\n\nThe error appears to have been in '/mnt/c/Users/emarq/Documents/Source/Repos/Solutions.Network.Automation/MAS/Ansible/dell/force10/roles/removeprefix/tasks/main.yml': line 39, column 3, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n- name: check bgp\n ^ here\n"  
}  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;to retry, use: --limit @/mnt/c/Users/emarq/Documents/Source/Repos/Solutions.Network.Automation/MAS/Ansible/dell/force10/removetorprefix.retry

PLAY RECAP \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*  
rr1-n22-r13-4048hl-5-1b : ok=9 changed=5 unreachable=0 failed=1
