-
Notifications
You must be signed in to change notification settings - Fork 21
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
ASR920 IOS XE filename _get_version_from_file() issues #7
Comments
Updated the pattern in the dev branch to this: Changing to |
Seems sane, thanks. ASR920 being pain in other ways, it doesn't support the same Instead of LMK and ill break this in to a separate case once I figure out how cisco 'actually' wants one to use this. |
First step: research & document the install process. |
From what I can see, there is no This platform also requires(?) a ROMMON upgrade, which is a separate file and separate command. That second part seems out of scope, but if there's an easy way to tie this device type to that upgrade method somehow, or better yet, specify the preferred method in the config, that would be keen. |
Upgrade one manually and document each command for both IOS and ROMMON. |
Finally had a chance to look further at this. First, rommon, while important, seems out of scope for this ticket. I've opened issue 8 for this. Out of the 4 possible methods that are currently available in iosfw, only
It has a similar command using So, the only supported upgrade process on this platform is good 'ol copy. We typically use HTTP, but I do not know if that's supported here (or is it secretly and undocumented?) Per config, it says tftp and ftp only. In our case, HTTP is preferred so we don't have to setup an FTP server. Also TFTP is ungodly slow as we all know. Images for this platform are approximately 400m.
|
Added an exception to |
I was finally able to test this out, consider it working! A few other notes, which arent necessarily related, but came up when testing:
|
Latest dev commit includes several bugfixes for |
Just did this, checked the changes in the config file which now recommend "1" as immediate. set it to that, worked great. settings in my config for future humans:
|
Thanks for reporting back. |
I am testing iosfw on an ASR920 with this filename:
asr920-universalk9_npe.16.09.05f.SPA.bin
It fails with:
Cisco appears to have thrown a wrench in to _get_version_from_file() in that the 'f' character is inserted in this IOS version. The problematic line in iosfw.py is:
pattern = r"(\d+\.\d+\.\d+)\.SPA"
browsing filenames on downloads for this device, some releases have a letter there, some do not:
https://software.cisco.com/download/home/286288711/type/282046477/release/Fuji-16.9.5f
I see an example of "f" in my case, "a" in another case.
I tested changing from pattern
(\d+\.\d+\.\d+)\.SPA
to
(\d+\.\d+\.\d+)([a-z]|)\.SPA
And it seemed to work (on regexpal.com), but there's something off about the pipe followed by nothing.. I'm not sure the most efficient way to match a string OR nothing.
Another potential issue after this is that this will return a string instead of an integer, which I suspect may break something further in the code.
The text was updated successfully, but these errors were encountered: