schedule upgrades via Python module

Solved
jsteurs
Just browsing

schedule upgrades via Python module

Hi, 

 

I have a usecase where I want to check each couple of weeks via the Meraki Python module  if there are devices that need to be upgraded to latest stable release, and then schedule the upgrade, also via the python module.  

The problem I have is that the Meraki module allows you to reschedule a 'planned" upgrade, but it does not allow 
you to schedule an upgrade for devices that do not run the latest stable firmware, for which no upgrade is scheduled. 

Any suggestions on how to schedule these "upgrades from scratch" would be highly appreciated

 

1 Accepted Solution
JasonM
Meraki Employee
Meraki Employee

Hi @jsteurs and happy Friday!

 

One way that should work for you is to iterate through all of your Networks using the getNetworkFirmwareUpgrades endpoint. This will allow you to make comparisons to what firmware is currently installed vs which firmware are currently available, specifically which is stable, for your need. Additionally, it will show you if any firmware upgrade is already scheduled to be done.

 

If there is a discrepancy between what is stabled vs what is currently installed (with no pending upgrade) then you can use this logic to use the updateNetworkFirmwareUpgrades endpoint to schedule that upgrade to the current stable version.

View solution in original post

4 Replies 4
alemabrahao
Kind of a big deal
Kind of a big deal

You can use the Meraki API to get the firmware status of all devices in your network. You’ll need to iterate over each device and check if it’s running the latest stable firmware. If a device is not running the latest stable firmware, you can schedule an upgrade.But, it's not possible schedule it directly, you need to use the Meraki API and cerate a python script for it.

I am not a Cisco Meraki employee. My suggestions are based on documentation of Meraki best practices and day-to-day experience.

Please, if this post was useful, leave your kudos and mark it as solved.
alemabrahao
Kind of a big deal
Kind of a big deal

Why don't you use the dashboard for this?

 

 

https://documentation.meraki.com/General_Administration/Firmware_Upgrades/Managing_Firmware_Upgrades

I am not a Cisco Meraki employee. My suggestions are based on documentation of Meraki best practices and day-to-day experience.

Please, if this post was useful, leave your kudos and mark it as solved.
JasonM
Meraki Employee
Meraki Employee

Hi @jsteurs and happy Friday!

 

One way that should work for you is to iterate through all of your Networks using the getNetworkFirmwareUpgrades endpoint. This will allow you to make comparisons to what firmware is currently installed vs which firmware are currently available, specifically which is stable, for your need. Additionally, it will show you if any firmware upgrade is already scheduled to be done.

 

If there is a discrepancy between what is stabled vs what is currently installed (with no pending upgrade) then you can use this logic to use the updateNetworkFirmwareUpgrades endpoint to schedule that upgrade to the current stable version.

jsteurs
Just browsing

Thanks, this totally works ! 

Get notified when there are additional replies to this discussion.