- Access exclusive content
- Connect with peers
- Share your expertise
- Find support resources
06-01-2022 01:45 AM
Hello,
Versions in use:
ansible 2.9.22
pan-python==0.19.0
pandevice==0.14.0
panos firewall 9.1.10
I have created a playbook that adds a DHCP relay element and now i need to do the delete the DHCP relay and haven't found the way.
This is the playbook for adding one:
---
- name: DHCP
hosts: localhost
connection: local
vars:
- ansible_python_interpreter: /usr/bin/env python3
roles:
- role: PaloAltoNetworks.paloaltonetworks
gather_facts: False
tasks:
- name: Grab the credentials
include_vars: 'firewall-secrets.yml'
- name: Create DHCP relay on interface
panos_type_cmd:
ip_address: '{{ ip_address }}'
username: '{{ username }}'
password: '{{ password }}'
cmd: "set"
xpath: "/config/devices/entry[@name='localhost.localdomain']/network/dhcp/interface/entry[@name='a5.22']/relay"
element: "<ip><server><member>10.x.x.x1</member></server><enabled>yes</enabled></ip><ip><server><member>10.x.x.x2</member></server><enabled>yes</enabled></ip>"When trying to delete i have used this:
tasks:
- name: delete DHCP relay on interface
panos_type_cmd:
ip_address: '{{ ip_address }}'
username: '{{ username }}'
password: '{{ password }}'
cmd: "delete"
xpath: "/config/devices/entry[@name='localhost.localdomain']/network/dhcp/interface/entry[@name='a5.22']/relay"
Ansible verbose doesn't give any error,
Its only getting the firewall stuck(i cannot preform any commits until I delete the change) , The main task is to remove the interface "a5.22" using panos_l3_subinterface module. but it doesn't give me to delete a device before I delete the relay.
there is no docs for this - does anyone know how?
Thanks.
09-12-2022 06:29 AM
Hi @batchenr, when adapted to my lab, the code you posted works ok for me:
- name: Create DHCP relay on interface
paloaltonetworks.panos.panos_type_cmd:
provider: "{{ device }}"
cmd: "set"
xpath: "/config/devices/entry[@name='localhost.localdomain']/network/dhcp/interface/entry[@name='{{ interface }}']/relay"
element: "<ip><server><member>{{ relay_ip_1 }}</member><member>{{ relay_ip_2 }}</member></server><enabled>yes</enabled></ip>"
- name: delete DHCP relay on interface
paloaltonetworks.panos.panos_type_cmd:
provider: "{{ device }}"
cmd: "delete"
xpath: "/config/devices/entry[@name='localhost.localdomain']/network/dhcp/interface/entry[@name='{{ interface }}']/relay"
Click Accept as Solution to acknowledge that the answer to your question has been provided.
The button appears next to the replies on topics you’ve started. The member who gave the solution and all future visitors to this topic will appreciate it!
These simple actions take just seconds of your time, but go a long way in showing appreciation for community members and the LIVEcommunity as a whole!
The LIVEcommunity thanks you for your participation!

