Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expired software warranty causes Panorama license check failure #138

Open
fanalytica opened this issue May 16, 2024 · 2 comments
Open

Expired software warranty causes Panorama license check failure #138

fanalytica opened this issue May 16, 2024 · 2 comments

Comments

@fanalytica
Copy link

Describe the bug
For Panorama, the license readiness check will fail if there is an expired software warranty. Setting the license_expired readiness check to false using advanced settings doesn't seem to have any change although I think this check is different from the readiness checks.

To Reproduce
Steps to reproduce the behavior:

  1. Have a Panorama appliance with the included 90 day software warranty that has long since expired
  2. Run the pan-os-upgrade script for the panorama appliance.
  3. The first few checks include running the operational command "request license info"
  4. The 90 day software warranty will return as an element with the value expired == yes

Expected behavior
This is expected based on the logic used in the check_panorama_license function of device.py. The software warranty could be excluded or be available as an option we can choose to exclude in the custom settings.yaml

@cdot65
Copy link
Owner

cdot65 commented May 16, 2024

Unfortunately the library that we are using for performing snapshots and readiness checks panos-upgrade-assurance does not support Panorama, so nothing that you change within the settings.yaml file will affect your Panorama appliances.

@fanalytica
Copy link
Author

I see, thank you for the response. For my personal case I've edited the check_panorama_license function in pan_os_upgrade/components/device.py to ignore if the Software Warranty is expired but I doubt that's universal enough to exclude by default.

# Check if any license entry has expired
        for entry in licenses_element.findall(".//entry"):
            if entry.find("expired").text == "yes" and entry.find("feature").text != "Software warranty":
                return False

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants