Product Database: Now with replacement options for EoL products (V0.4)

Today, I released the next version of the Product Database. There are two primary new features: the product replacement options and the new Product Check. The previous Bulk EoL check was removed and is replaced by the Product Check. These product replacement options (or product migrations) are created based on the data provided by the Cisco EoX API or using an Excel upload. You can also create different product migration sources. This is useful if you want to store the lifecycle data for additional vendors or if you like to add your preferred products. You can also add new product migration sources with a different preference. The preference value of a migration source indicates, which migration path is the most preferred one.

The entire source code for the Version 0.4 and the installation instructions are available on the Product Database GitHub repository.

The Product Check

The new Product Check displays by default the most preferred replacement option for an End of Life product. Optional, you can choose a custom migration source to show the replacement products. This option is hidden by default and can be enabled in the User Profile settings. It’s now also possible to create public product checks that are visible to all users.

New Product Check

Furthermore, the result page for the Product Check was completely redesigned. You get now a single table with almost every information that’s part of the database.

Example Product Check results

By default, all Product Checks that are stored in the database are removed every Sunday.

Recursive lookup of replacement options

As you can see, the Product Check performs a recursive lookup to get a valid replacement Product ID. If the replacement product is also affected by an End of Life announcement, it will perform an additional lookup. This ensures that the replacement option is not also affected by an EoL announcement. As you can see in the last screenshot, the Catalyst 2950 24 Port (WS-C2950-24) is replaced by a Catalyst 2960 Plus (WS-C2960+24TC-S). This is one product generation later. If you want to see the full migration path, you can access the detailed product page as shown in the next screenshot.

Detail Product view

All replacement options are now visible in the detailed product overview. This includes the preferred migration option and the detailed migration paths (the buttons below the preferred migration option). For the WS-C2950-24 the Cisco EoX Migration option is shown in the next screenshot. As you can see, the EoL notice mentioned the WS-C2960-24-S as replacement, but this part is also End of Life. This part is replaced today with an WS-C2960+24TC-S.

Detailed Migration Path

Of course, this all depends on the information that are provided by the Cisco EoX API. Some products have no direct replacement option. In this cases, the value of the comment field and the URLs are stored in the database.

Additional Features

This release contains some additional options for the deployment of the Product Database, including HTTPs (using a custom or self-signed certificate) and an optional integration of Sentry. This is a tool/platform to track and correlate issues. You find more details about the changes in the changelog.

What’s next

I plan to add the following features to the next release (Version 0.5):

  • a parser for the show inventory Cisco IOS command (to use these data as source for the Product Check) – based on this post about TextFSM
  • more product information based on the Cisco Product Information API
  • finish API implementation (including Token based authentication)
  • allow the user to report an issue/suggest a change if some data are wrong or missing in the database
  • add a documentation/user manual

If you have additional ideas or feedback or if you find some issue with the tool, please create an issue on GitHub or leave a comment below. Thank you.


  1. Vladimir says:

    Henry Hello!

    Thank you for such a wonderful service!

    Please tell me how to upgrade from version 0.3 to version 0.4
    I am a bit do not understand how to do it

    Thank You in advance for Your response!

    • Henry
      Henry says:

      Hi Vladimir, to update an existing Server you need to re-run the Ansible playbook used during the initial setup. You just need to change the site_source_branch variable value to the version that you want to use (in this case v0.4).

  2. K Sidd says:

    Hi.. this is a great tool. Wondering how did you get the EoX API access? As I don’t see it listed as available when I log in to apiconsole at /Kash

Comments are closed.