Erroring out when trying to the upgrade of the firewalls
Opened this issue ยท 3 comments
Describe the bug
A clear and concise description of what the bug is.
The Error message is a 'TypeError: 'NoneType' object does not support the context manager protocol'.
To Reproduce
Steps to reproduce the behavior:
- Go to folder for the repo pan-os-upgrade
- Run the command ' pan-os-upgrade firewall'
- Enter the firewall details
- See error: TypeError: 'NoneType' object does not support the context manager protocol
Expected behavior
The script should successfully upgrade the firewall to the target OS version
**Screenshots and text from the script: **
[admin@spopvcladcaph01 pan-os-upgrade]$ pan-os-upgrade firewall
Firewall hostname or IP: 10.52.184.49
Firewall username: axxxx
Firewall password:
Target version: 10.2.6-h1
Dry Run? [Y/n]: Y
Welcome to the PAN-OS upgrade tool
This script software is provided on an 'as-is' basis with no warranties, and no support provided.
The selected firewall
subcommand will upgrade a single Firewall appliance.
Settings: No settings.yaml file was found, default values will be used.
You can create a settings.yaml file with 'pan-os-upgrade settings' command.
๐ 10.52.184.49: Connection to the appliance successful.
๐ N1122322R-exh-pan-b: 015354000084294 10.52.184.49
๐ N1122322R-exh-pan-b: HA mode: passive
๐ N1122322R-exh-pan-b: Local state: passive, Local version: 10.1.10, Peer version: 10.1.10
โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ Traceback (most recent call last) โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ
โ /home/admin/.local/lib/python3.11/site-packages/pan_os_upgrade/main.py:245 in firewall โ
โ โ
โ 242 โ ) โ
โ 243 โ โ
โ 244 โ # Perform upgrade โ
โ โฑ 245 โ upgrade_firewall( โ
โ 246 โ โ dry_run=dry_run, โ
โ 247 โ โ firewall=device, โ
โ 248 โ โ settings_file=SETTINGS_FILE, โ
โ โ
โ โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ locals โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ โ
โ โ banner = '\x1b[1;33m===============================================================โฆ โ โ
โ โ device = <Firewall '015354000084294' None at 0x7f3ea7894a10> โ โ
โ โ dry_run = True โ โ
โ โ hostname = '10.52.184.49' โ โ
โ โ password = 'IPvas2.0' โ โ
โ โ target_version = '10.2.6-h1' โ โ
โ โ username = 'admin' โ โ
โ โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ โ
โ โ
โ /home/admin/.local/lib/python3.11/site-packages/pan_os_upgrade/components/upgrade.py:669 in โ
โ upgrade_firewall โ
โ โ
โ 666 โ โ
โ 667 โ # If firewall is part of HA pair, determine if it's active or passive โ
โ 668 โ if ha_details: โ
โ โฑ 669 โ โ proceed_with_upgrade, peer_firewall = handle_firewall_ha( โ
โ 670 โ โ โ dry_run=dry_run, โ
โ 671 โ โ โ hostname=hostname, โ
โ 672 โ โ โ settings_file=settings_file, โ
โ โ
โ โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ locals โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ โ
โ โ deploy_info = 'passive' โ โ
โ โ dry_run = True โ โ
โ โ firewall = <Firewall '015354000084294' None at 0x7f3ea7894a10> โ โ
โ โ firewall_details = <SystemSettings 0x7f3ea78a2d50> โ โ
โ โ ha_details = { โ โ
โ โ โ 'result': { โ โ
โ โ โ โ 'enabled': 'yes', โ โ
โ โ โ โ 'group': { โ โ
โ โ โ โ โ 'mode': 'Active-Passive', โ โ
โ โ โ โ โ 'local-info': { โ โ
โ โ โ โ โ โ 'url-compat': 'Match', โ โ
โ โ โ โ โ โ 'app-version': '8811-8573', โ โ
โ โ โ โ โ โ 'gpclient-version': 'Not Installed', โ โ
โ โ โ โ โ โ 'build-rel': '10.1.10', โ โ
โ โ โ โ โ โ 'ha2-port': 'ethernet1/5', โ โ
โ โ โ โ โ โ 'av-version': '0', โ โ
โ โ โ โ โ โ 'url-version': '0000.00.00.000', โ โ
โ โ โ โ โ โ 'ha1-backup-ipaddr': '192.168.10.12/29', โ โ
โ โ โ โ โ โ 'active-passive': { โ โ
โ โ โ โ โ โ โ 'passive-link-state': 'auto', โ โ
โ โ โ โ โ โ โ 'monitor-fail-holddown': '1' โ โ
โ โ โ โ โ โ }, โ โ
โ โ โ โ โ โ 'platform-model': 'PA-VM', โ โ
โ โ โ โ โ โ ... +49 โ โ
โ โ โ โ โ }, โ โ
โ โ โ โ โ 'peer-info': { โ โ
โ โ โ โ โ โ 'app-version': '8811-8573', โ โ
โ โ โ โ โ โ 'gpclient-version': 'Not Installed', โ โ
โ โ โ โ โ โ 'VMS': '2.1.10', โ โ
โ โ โ โ โ โ 'url-version': '0000.00.00.000', โ โ
โ โ โ โ โ โ 'ha1-backup-ipaddr': '192.168.10.11', โ โ
โ โ โ โ โ โ 'av-version': '0', โ โ
โ โ โ โ โ โ 'platform-model': 'PA-VM', โ โ
โ โ โ โ โ โ 'ha2-ipaddr': '192.168.11.3', โ โ
โ โ โ โ โ โ 'ha1-ipaddr': '192.168.10.3', โ โ
โ โ โ โ โ โ 'ha2-backup-ipaddr': '192.168.11.11', โ โ
โ โ โ โ โ โ ... +26 โ โ
โ โ โ โ โ }, โ โ
โ โ โ โ โ 'link-monitoring': { โ โ
โ โ โ โ โ โ 'failure-condition': 'any', โ โ
โ โ โ โ โ โ 'enabled': 'yes', โ โ
โ โ โ โ โ โ 'groups': {} โ โ
โ โ โ โ โ }, โ โ
โ โ โ โ โ 'path-monitoring': { โ โ
โ โ โ โ โ โ 'virtual-wire': {}, โ โ
โ โ โ โ โ โ 'failure-condition': 'any', โ โ
โ โ โ โ โ โ 'enabled': 'yes', โ โ
โ โ โ โ โ โ 'vlan': {}, โ โ
โ โ โ โ โ โ 'virtual-router': { โ โ
โ โ โ โ โ โ โ 'entry': [ โ โ
โ โ โ โ โ โ โ โ { โ โ
โ โ โ โ โ โ โ โ โ 'failure-condition': 'any', โ โ
โ โ โ โ โ โ โ โ โ 'name': 'trust-vr', โ โ
โ โ โ โ โ โ โ โ โ 'enabled': 'yes', โ โ
โ โ โ โ โ โ โ โ โ 'ping-interval': '6000', โ โ
โ โ โ โ โ โ โ โ โ 'ping-count': '10', โ โ
โ โ โ โ โ โ โ โ โ 'destination-groups': { โ โ
โ โ โ โ โ โ โ โ โ โ 'entry': [ โ โ
โ โ โ โ โ โ โ โ โ โ โ { โ โ
โ โ โ โ โ โ โ โ โ โ โ โ 'dest-ip': { โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ 'entry': [ โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ { โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ
โ โ 'status': 'up', โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ 'addr': โ โ
โ โ '203.48.105.145' โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ } โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ ] โ โ
โ โ โ โ โ โ โ โ โ โ โ โ }, โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ
โ โ 'failure-condition': 'any', โ โ
โ โ โ โ โ โ โ โ โ โ โ โ 'enabled': 'yes', โ โ
โ โ โ โ โ โ โ โ โ โ โ โ 'name': 'trust-vr' โ โ
โ โ โ โ โ โ โ โ โ โ โ } โ โ
โ โ โ โ โ โ โ โ โ โ ] โ โ
โ โ โ โ โ โ โ โ โ } โ โ
โ โ โ โ โ โ โ โ }, โ โ
โ โ โ โ โ โ โ โ { โ โ
โ โ โ โ โ โ โ โ โ 'failure-condition': 'all', โ โ
โ โ โ โ โ โ โ โ โ 'name': 'untrust-vr', โ โ
โ โ โ โ โ โ โ โ โ 'enabled': 'yes', โ โ
โ โ โ โ โ โ โ โ โ 'ping-interval': '6000', โ โ
โ โ โ โ โ โ โ โ โ 'ping-count': '10', โ โ
โ โ โ โ โ โ โ โ โ 'destination-groups': { โ โ
โ โ โ โ โ โ โ โ โ โ 'entry': [ โ โ
โ โ โ โ โ โ โ โ โ โ โ { โ โ
โ โ โ โ โ โ โ โ โ โ โ โ 'dest-ip': { โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ 'entry': [ โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ { โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ
โ โ 'status': 'up', โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ 'addr': โ โ
โ โ '203.42.188.169' โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ } โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ ] โ โ
โ โ โ โ โ โ โ โ โ โ โ โ }, โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ
โ โ 'failure-condition': 'all', โ โ
โ โ โ โ โ โ โ โ โ โ โ โ 'enabled': 'yes', โ โ
โ โ โ โ โ โ โ โ โ โ โ โ 'name': โ โ
โ โ 'untrust-vr' โ โ
โ โ โ โ โ โ โ โ โ โ โ } โ โ
โ โ โ โ โ โ โ โ โ โ ] โ โ
โ โ โ โ โ โ โ โ โ } โ โ
โ โ โ โ โ โ โ โ } โ โ
โ โ โ โ โ โ โ ] โ โ
โ โ โ โ โ โ } โ โ
โ โ โ โ โ }, โ โ
โ โ โ โ โ 'running-sync': 'synchronized', โ โ
โ โ โ โ โ 'running-sync-enabled': 'yes' โ โ
โ โ โ โ } โ โ
โ โ โ } โ โ
โ โ } โ โ
โ โ hostname = 'N1122322R-exh-pan-b' โ โ
โ โ settings_file = <dynaconf.base.LazySettings object at 0x7f3eaf77f490> โ โ
โ โ settings_file_path = PosixPath('/home/admin/pan-os-upgrade/settings.yaml') โ โ
โ โ target_devices_to_revisit = None โ โ
โ โ target_devices_to_revisit_lock = None โ โ
โ โ target_version = '10.2.6-h1' โ โ
โ โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ โ
โ โ
โ /home/admin/.local/lib/python3.11/site-packages/pan_os_upgrade/components/ha.py:248 in โ
โ handle_firewall_ha โ
โ โ
โ 245 โ ) โ
โ 246 โ โ
โ 247 โ # Check if the firewall is in the revisit list โ
โ โฑ 248 โ with target_devices_to_revisit_lock: โ
โ 249 โ โ is_device_to_revisit = target_device in target_devices_to_revisit โ
โ 250 โ โ
โ 251 โ if is_device_to_revisit: โ
โ โ
โ โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ locals โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ โ
โ โ deploy_info = 'passive' โ โ
โ โ dry_run = True โ โ
โ โ ha_details = { โ โ
โ โ โ 'result': { โ โ
โ โ โ โ 'enabled': 'yes', โ โ
โ โ โ โ 'group': { โ โ
โ โ โ โ โ 'mode': 'Active-Passive', โ โ
โ โ โ โ โ 'local-info': { โ โ
โ โ โ โ โ โ 'url-compat': 'Match', โ โ
โ โ โ โ โ โ 'app-version': '8811-8573', โ โ
โ โ โ โ โ โ 'gpclient-version': 'Not Installed', โ โ
โ โ โ โ โ โ 'build-rel': '10.1.10', โ โ
โ โ โ โ โ โ 'ha2-port': 'ethernet1/5', โ โ
โ โ โ โ โ โ 'av-version': '0', โ โ
โ โ โ โ โ โ 'url-version': '0000.00.00.000', โ โ
โ โ โ โ โ โ 'ha1-backup-ipaddr': '192.168.10.12/29', โ โ
โ โ โ โ โ โ 'active-passive': { โ โ
โ โ โ โ โ โ โ 'passive-link-state': 'auto', โ โ
โ โ โ โ โ โ โ 'monitor-fail-holddown': '1' โ โ
โ โ โ โ โ โ }, โ โ
โ โ โ โ โ โ 'platform-model': 'PA-VM', โ โ
โ โ โ โ โ โ ... +49 โ โ
โ โ โ โ โ }, โ โ
โ โ โ โ โ 'peer-info': { โ โ
โ โ โ โ โ โ 'app-version': '8811-8573', โ โ
โ โ โ โ โ โ 'gpclient-version': 'Not Installed', โ โ
โ โ โ โ โ โ 'VMS': '2.1.10', โ โ
โ โ โ โ โ โ 'url-version': '0000.00.00.000', โ โ
โ โ โ โ โ โ 'ha1-backup-ipaddr': '192.168.10.11', โ โ
โ โ โ โ โ โ 'av-version': '0', โ โ
โ โ โ โ โ โ 'platform-model': 'PA-VM', โ โ
โ โ โ โ โ โ 'ha2-ipaddr': '192.168.11.3', โ โ
โ โ โ โ โ โ 'ha1-ipaddr': '192.168.10.3', โ โ
โ โ โ โ โ โ 'ha2-backup-ipaddr': '192.168.11.11', โ โ
โ โ โ โ โ โ ... +26 โ โ
โ โ โ โ โ }, โ โ
โ โ โ โ โ 'link-monitoring': { โ โ
โ โ โ โ โ โ 'failure-condition': 'any', โ โ
โ โ โ โ โ โ 'enabled': 'yes', โ โ
โ โ โ โ โ โ 'groups': {} โ โ
โ โ โ โ โ }, โ โ
โ โ โ โ โ 'path-monitoring': { โ โ
โ โ โ โ โ โ 'virtual-wire': {}, โ โ
โ โ โ โ โ โ 'failure-condition': 'any', โ โ
โ โ โ โ โ โ 'enabled': 'yes', โ โ
โ โ โ โ โ โ 'vlan': {}, โ โ
โ โ โ โ โ โ 'virtual-router': { โ โ
โ โ โ โ โ โ โ 'entry': [ โ โ
โ โ โ โ โ โ โ โ { โ โ
โ โ โ โ โ โ โ โ โ 'failure-condition': 'any', โ โ
โ โ โ โ โ โ โ โ โ 'name': 'trust-vr', โ โ
โ โ โ โ โ โ โ โ โ 'enabled': 'yes', โ โ
โ โ โ โ โ โ โ โ โ 'ping-interval': '6000', โ โ
โ โ โ โ โ โ โ โ โ 'ping-count': '10', โ โ
โ โ โ โ โ โ โ โ โ 'destination-groups': { โ โ
โ โ โ โ โ โ โ โ โ โ 'entry': [ โ โ
โ โ โ โ โ โ โ โ โ โ โ { โ โ
โ โ โ โ โ โ โ โ โ โ โ โ 'dest-ip': { โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ 'entry': [ โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ { โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ
โ โ 'status': 'up', โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ 'addr': โ โ
โ โ '203.48.105.145' โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ } โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ ] โ โ
โ โ โ โ โ โ โ โ โ โ โ โ }, โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ
โ โ 'failure-condition': 'any', โ โ
โ โ โ โ โ โ โ โ โ โ โ โ 'enabled': 'yes', โ โ
โ โ โ โ โ โ โ โ โ โ โ โ 'name': 'trust-vr' โ โ
โ โ โ โ โ โ โ โ โ โ โ } โ โ
โ โ โ โ โ โ โ โ โ โ ] โ โ
โ โ โ โ โ โ โ โ โ } โ โ
โ โ โ โ โ โ โ โ }, โ โ
โ โ โ โ โ โ โ โ { โ โ
โ โ โ โ โ โ โ โ โ 'failure-condition': 'all', โ โ
โ โ โ โ โ โ โ โ โ 'name': 'untrust-vr', โ โ
โ โ โ โ โ โ โ โ โ 'enabled': 'yes', โ โ
โ โ โ โ โ โ โ โ โ 'ping-interval': '6000', โ โ
โ โ โ โ โ โ โ โ โ 'ping-count': '10', โ โ
โ โ โ โ โ โ โ โ โ 'destination-groups': { โ โ
โ โ โ โ โ โ โ โ โ โ 'entry': [ โ โ
โ โ โ โ โ โ โ โ โ โ โ { โ โ
โ โ โ โ โ โ โ โ โ โ โ โ 'dest-ip': { โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ 'entry': [ โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ { โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ
โ โ 'status': 'up', โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ 'addr': โ โ
โ โ '203.42.188.169' โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ } โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ ] โ โ
โ โ โ โ โ โ โ โ โ โ โ โ }, โ โ
โ โ โ โ โ โ โ โ โ โ โ โ โ โ
โ โ 'failure-condition': 'all', โ โ
โ โ โ โ โ โ โ โ โ โ โ โ 'enabled': 'yes', โ โ
โ โ โ โ โ โ โ โ โ โ โ โ 'name': โ โ
โ โ 'untrust-vr' โ โ
โ โ โ โ โ โ โ โ โ โ โ } โ โ
โ โ โ โ โ โ โ โ โ โ ] โ โ
โ โ โ โ โ โ โ โ โ } โ โ
โ โ โ โ โ โ โ โ } โ โ
โ โ โ โ โ โ โ ] โ โ
โ โ โ โ โ โ } โ โ
โ โ โ โ โ }, โ โ
โ โ โ โ โ 'running-sync': 'synchronized', โ โ
โ โ โ โ โ 'running-sync-enabled': 'yes' โ โ
โ โ โ โ } โ โ
โ โ โ } โ โ
โ โ } โ โ
โ โ hostname = 'N1122322R-exh-pan-b' โ โ
โ โ local_state = 'passive' โ โ
โ โ local_version = '10.1.10' โ โ
โ โ peer_version = '10.1.10' โ โ
โ โ settings_file = <dynaconf.base.LazySettings object at 0x7f3eaf77f490> โ โ
โ โ settings_file_path = PosixPath('/home/admin/pan-os-upgrade/settings.yaml') โ โ
โ โ target_device = <Firewall '015354000084294' None at 0x7f3ea7894a10> โ โ
โ โ target_devices_to_revisit = None โ โ
โ โ target_devices_to_revisit_lock = None โ โ
โ โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ โ
โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ
TypeError: 'NoneType' object does not support the context manager protocol
Desktop (please complete the following information):
- OS: [e.g. Linux]
Hi,
I couldn't replicate the issue. Could you please confirm you are using the latest version of the tool ( which should be 1.3.10 ) as of now. You may check this with the poetry version
command.
If you are using the latest version could you please provide the following details:
- Are you targeting an HA pair or a standalone firewall ?
- Provide debug log of the firewall upgrade after setting to DEBUG logging. You may do so by running
pan-os-upgrade settings
and setLogging level [INFO]:
prompt toDEBUG
, leave all the rest to default selections.
Thanks,
Hi, Thanks for confirmation. So I will close the issue if you don't have the problem anymore?