pan-os-python
pan-os-python copied to clipboard
Performing a push to Shared using panos panorama gives error PanDeviceXapiError: commit-all is missing 'commit-all'
Hi All,
I'm trying to create a shared address object using panos.panorama. However I'm not able to proceed with pushing the configuration to the firewalls. I could create objects within device groups and push them successfully to the firewalls under the device group, but I haven't been successful with shared yet. Below is my code.
from panos.panorama import Panorama
from panos.objects import AddressObject
if __name__ == "__main__":
panorama = "10.0.0.1"
username = "USERNAME"
password = "PASSWORD"
pano = Panorama(panorama,username, password)
obj = AddressObject("Sample_Shared_Object", "1.1.1.1")
pano.add(obj)
obj.create()
pano.commit_all(sync=True, sync_all=True)
I'm getting the error on line pano.commit_all(sync=True, sync_all=True)
Exception has occurred: PanDeviceXapiError
commit-all is missing 'commit-all'
pan.xapi.PanXapiError: commit-all is missing 'commit-all'
During handling of the above exception, another exception occurred:
File "C:\palo_alto_python_panos_scripts\Address_Objects\createAddressObjectInShared.py", line 47, in <module>
pano.commit_all(sync=True, sync_all=True)
panos.errors.PanDeviceXapiError: commit-all is missing 'commit-all'
This line was suggested on issue #256 by btorresgil (https://github.com/PaloAltoNetworks/pan-os-python/issues/256). Do you know what I might be missing? arielpa-tr's solution in #256 seem to have used panorama.PanoramaCommitAll() and device group names. Would it be possible to use commit_all() without defining the device group names?
I also tried to add a panorama commit before the commit_all (pano.commit(sync=True, sync_all=True)
), but I'm still getting the error on the pano.commit_all() line.
Any help would be appreciated. Thank you.
Environment:
- Panorama version: 10.2.3
- pan-os-python version: 1.8.1
:tada: Thanks for opening your first issue here! Welcome to the community!