Python Forum

Full Version: Can Python Do This? Asset Management
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hi,
I'm not a python pro but rather a novice at best. I'm looking to maybe build a small little project on the side to better help with my IT asset management inventory. I have about 500+ devices (switches, routers, firewalls, physical desktops, vdi machines, and servers)
I know there are a ton of applications out there that would help me with this but i feel like it might be fun to smash my head against the desk for a few months trying to work this out in python rather then taking the easy way out and paying the money for something like this.

I have a idea of what i would like the application to do and ill list the goals/objectives below. I would like some feedback maybe or just some chatter with others. I think this project if anything else will strengthen my rusty skills in python and heck, maybe ill learn a bunch of new stuff along the way.

Goals:
-allow user to input assets into sqlite database
-assets should have the attributes of asset_type,asset_id,serial_number,hostname,ip_addr,location,os_version and confirmation for new addition
-asset should be able to be removed with one click and confirmation
-would like to ping asset with 1-click box beside asset to see if asset is online
-would like to use the rdp protocol to remote into asset
-should have a easy to view dashboard which can be accessed via web-gui. This would be able to import/export existing assets from a csv file into database

What do you think, Can python do this? :)

mbaker_wv
Goals:
  • allow user to input assets into sqlite database
    look at using sqlite with SQLAlchemy, It will make your life easier with models.
    plain sqlite will work as well, just easier to maintain with SQLalchemy
  • assets should have the attributes of asset_type,asset_id,serial_number,hostname,ip_addr,location,os_version and confirmation for new addition
    look at other systems, decide what tables you need and the fields in them, then build routines to maintain each.
  • asset should be able to be removed with one click and confirmation
    easy python task
  • would like to ping asset with 1-click box beside asset to see if asset is online
    easy python task
  • would like to use the rdp protocol to remote into asset
    there are many packages to help with this. see: https://pypi.org/search/?q=rdp
  • should have a easy to view dashboard which can be accessed via web-gui. This would be able to import/export existing assets from a csv file into database
    My choice would be wxpython
    The best way to sample what's availaable in to install wxpython [inline]pip install wxpython[inline]
    Then download demo code here: https://github.com/wxWidgets/Phoenix/
    run demo with python demo.py run from wxpython phoenix source directory
    PyQt5 is probably the best option, but may have to pay fees if you ever decide to make it a paid for product
about the last point - OP asks for web-gui, while Larz is suggesting GUI frameworks. Look at web-frameworks, like Flask, Django, bottle, etc.
Good point Buran.

Personally I prefer Flask to the others.
Should you choose to go that route, there is an excellent from nothing to finished (and polished) web site tutorial (free) here:
https://blog.miguelgrinberg.com/post/the...ello-world
much appreciated to all that have commented, and wow! there's much to digest here. Ill start looking at all the suggested components. Ill get back to the thread in the next few days with updates and comments. Dance