cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1427
Views
0
Helpful
0
Replies

EEM Error during execution of ZTP script

Claudia de Luna
Spotlight
Spotlight

Hi,

I'm working with this great ZTP getting started repo


I'm having one issue and that is with the EEM upgrade function.

 

I have a C9300L-24P-4X running Cisco IOS XE Software, Version 16.12.02.

The script works beautifully until I try to install the software with the *deploy_eem_upgrade_script* function.

def deploy_eem_upgrade_script(image):
install_command = 'install add file flash:' + image + ' activate commit'
eem_commands = ['event manager applet upgrade',
'event none maxrun 600',
'action 1.0 cli command "enable"',
'action 2.0 cli command "%s" pattern "[y/n/q]"' % install_command,
'action 2.1 wait 10',
'action 2.2 cli command "n" pattern "proceed"',
'action 2.3 cli command "y"'
]
results = configure(eem_commands)
print("----->>> results of eem_commands:\n" + results)
print '*** Successfully configured upgrade EEM script on device! ***'

Here is the error that I'm getting and its pretty consistent. I've played around with the EEM commands based on some EEM examples I've seen but so far no joy. I don't have a lot of EEM experience so I'm sure that is the problem.

*** Deploying EEM upgrade script ***
Traceback (most recent call last):
File "/bootflash/downloaded_script.py", line 206, in <module>
main()
File "/bootflash/downloaded_script.py", line 174, in main
deploy_eem_upgrade_script(img_cat9k)
File "/bootflash/downloaded_script.py", line 63, in deploy_eem_upgrade_script
results = configure(eem_commands)
File "/usr/lib/python2.7/site-packages/cli/__init__.py", line 185, in configure
raise CLIConfigurationError(results)
cli.CLIConfigurationError: ConfigError: There was a problem with 7 commands while configuring the device.

Here is the error in context:

--- System Configuration Dialog ---

Would you like to enter the initial configuration dialog? [yes/no]:
Loading http://192.168.1.25/ZTP_python.py
Loading http://192.168.1.25/ZTP_python.py day0guestshell installed successfully
Current state is: DEPLOYED
day0guestshell activated successfully
Current state is: ACTIVATED
day0guestshell started successfully
Current state is: RUNNING
Guestshell enabled successfully


HTTP server statistics:
Accepted connections total: 0###### STARTING ZTP SCRIPT ######

*** Obtaining serial number of device.. ***
*** Setting configuration file variable.. ***
*** Config file: FOC.cfg ***
---->>>>> sh_version is

Cisco IOS XE Software, Version 16.12.01
Cisco IOS Software [Gibraltar], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 16.12.1, RELEASE SOFTWARE (fc4)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2019 by Cisco Systems, Inc.
Compiled Tue 30-Jul-19 19:26 by mcpre
Cisco IOS-XE software, Copyright (c) 2005-2019 by cisco Systems, Inc.
All rights reserved. Certain components of Cisco IOS-XE software are
licensed under the GNU General Public License ("GPL") Version 2.0. The
software code licensed under GPL Version 2.0 is free software that comes
with ABSOLUTELY NO WARRANTY. You can redistribute and/or modify such
GPL code under the terms of GPL Version 2.0. For more details, see the
documentation or "License Notice" file accompanying the IOS-XE software,
or the applicable URL provided on the flyer accompanying the IOS-XE
software.
ROM: IOS-XE ROMMON
BOOTLDR: System Bootstrap, Version 16.12.2r, RELEASE SOFTWARE (P)
Switch uptime is 2 minutes
Uptime for this control processor is 3 minutes
System returned to ROM by Image Install
System image file is "flash:packages.conf"
Last reload reason: Image Install
This product contains cryptographic features and is subject to United
States and local country laws governing import, export, transfer and
use. Delivery of Cisco cryptographic products does not imply
third-party authority to import, export, distribute or use encryption.
Importers, exporters, distributors and users are responsible for
compliance with U.S. and local country laws. By using this product you
agree to comply with applicable laws and regulations. If you are unable
to comply with U.S. and local laws, return this product immediately.
A summary of U.S. laws governing Cisco cryptographic products may be found at:
http://www.cisco.com/wwl/export/crypto/tool/stqrg.html
If you require further assistance please contact us by sending email to
export@cisco.com.
Technology Package License Information:
------------------------------------------------------------------------------
Technology-package Technology-package
Current Type Next reboot
------------------------------------------------------------------------------
network-essentials Smart License network-essentials
None Subscription Smart License None
AIR License Level: AIR DNA Advantage
Next reload AIR license Level: AIR DNA Advantage
Smart Licensing Status: UNREGISTERED/EVAL MODE
cisco C9300L-24P-4X (X86) processor with 1344464K/6147K bytes of memory.
Processor board ID FOC2344L53F
1 Virtual Ethernet interface
24 Gigabit Ethernet interfaces
4 Ten Gigabit Ethernet interfaces
2048K bytes of non-volatile configuration memory.
8388608K bytes of physical memory.
1638400K bytes of Crash Files at crashinfo:.
11264000K bytes of Flash at flash:.
0K bytes of WebUI ODM Files at webui:.
Base Ethernet MAC Address : 3c:51:0e:31:52:80
Motherboard Assembly Number : 73-19167-04
Motherboard Serial Number : FOC23443TLK
Model Revision Number : F0
Motherboard Revision Number : C0
Model Number : C9300L-24P-4X
System Serial Number : FOC2344L53F
Switch Ports Model SW Version SW Image Mode
------ ----- ----- ---------- ---------- ----
* 1 29 C9300L-24P-4X 16.12.1 CAT9K_IOSXE INSTALL
Configuration register is 0x102

*** Upgrade is required. Starting upgrade process.. ***

*** Checking to see if cat9k_iosxe.16.12.02.SPA.bin exists on flash:/ ***
*** The cat9k_iosxe.16.12.02.SPA.bin does NOT exist on flash:/ ***
*** Successfully set "file prompt quiet" on switch ***
---->>>>> tansfere_file is copy http://192.168.1.25/cat9k_iosxe.16.12.02.SPA.bin flash:/
Transferring cat9k_iosxe.16.12.02.SPA.bin to flash:/
Verifying MD5 for flash:/cat9k_iosxe.16.12.02.SPA.bin
*** MD5 hashes match!! ***

*** Deploying EEM upgrade script ***
Traceback (most recent call last):
File "/bootflash/downloaded_script.py", line 206, in <module>
main()
File "/bootflash/downloaded_script.py", line 174, in main
deploy_eem_upgrade_script(img_cat9k)
File "/bootflash/downloaded_script.py", line 63, in deploy_eem_upgrade_script
results = configure(eem_commands)
File "/usr/lib/python2.7/site-packages/cli/__init__.py", line 185, in configure
raise CLIConfigurationError(results)
cli.CLIConfigurationError: ConfigError: There was a problem with 7 commands while configuring the device.


Loading http://192.168.1.25/ZTP_python.py
Loading http://192.168.1.25/ZTP_python.py

HTTP server statistics:
Accepted connections total: 7###### STARTING ZTP SCRIPT ######

*** Obtaining serial number of device.. ***
*** Setting configuration file variable.. ***
*** Config file: FOC2344L53F.cfg ***

 

Here is the working script in its current state:

https://github.com/cldeluna/cisco_ztp/blob/main/ZTP_python_advanced.py

 

On a more strategic note, is an EEM script the only way to go here? Are we limited by Python2 and the modules in the GuestShell?

 

 

Here is a log of the interactive session I'm trying to automate via EEM

 

Switch#install add file flash:cat9k_iosxe.16.12.01.SPA.bin activate commit 
install_add_activate_commit: START Mon Jan 18 19:53:16 UTC 2021

System configuration has been modified.
Press Yes(y) to save the configuration and proceed.
Press No(n) for proceeding without saving the configuration.
Press Quit(q) to exit, you may save configuration and re-enter the command. [y/n/q]n

*Jan 18 19:53:24.163: %INSTALL-5-INSTALL_START_INFO: Switch 1 R0/0: install_engine: Started install one-shot flash:cat9k_iosxe.16.12.01.SPA.bininstall_add_activate_commit: Adding PACKAGE
install_add_activate_commit: Checking whether new add is allowed ....

--- Starting initial file syncing ---
Info: Finished copying flash:cat9k_iosxe.16.12.01.SPA.bin to the selected switch(es)
Finished initial file syncing

--- Starting Add ---
Performing Add on all members
  [1] Add package(s) on switch 1
  [1] Finished Add on switch 1
Checking status of Add on [1]
Add: Passed on [1]
Finished Add

Image added. Version: 16.12.1.0.544
install_add_activate_commit: Activating PACKAGE
Following packages shall be activated:
/flash/cat9k-wlc.16.12.01.SPA.pkg
/flash/cat9k-webui.16.12.01.SPA.pkg
/flash/cat9k-srdriver.16.12.01.SPA.pkg
/flash/cat9k-sipspa.16.12.01.SPA.pkg
/flash/cat9k-sipbase.16.12.01.SPA.pkg
/flash/cat9k-rpboot.16.12.01.SPA.pkg
/flash/cat9k-rpbase.16.12.01.SPA.pkg
/flash/cat9k-guestshell.16.12.01.SPA.pkg
/flash/cat9k-espbase.16.12.01.SPA.pkg
/flash/cat9k-cc_srdriver.16.12.01.SPA.pkg

This operation may require a reload of the system. Do you want to proceed? [y/n]

 

0 Replies 0