code cleanup
This commit is contained in:
parent
c9cb503190
commit
ef7d318c8c
3 changed files with 44 additions and 25 deletions
34
netbox_agent/cli.py
Normal file
34
netbox_agent/cli.py
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
import argparse
|
||||
import sys
|
||||
from pprint import pprint
|
||||
import netbox_agent.dmidecode as dmidecode
|
||||
from netbox_agent.dell.dell import DellHost
|
||||
from netbox_agent.hp.hp import HPHost
|
||||
|
||||
MANUFACTURERS = {
|
||||
'Dell Inc.': DellHost,
|
||||
'HP': HPHost,
|
||||
'HPE': HPHost,
|
||||
}
|
||||
|
||||
def run(args):
|
||||
manufacturer = dmidecode.get_by_type('Chassis')[0].get('Manufacturer')
|
||||
server = MANUFACTURERS[manufacturer](dmidecode)
|
||||
if args.debug:
|
||||
server.print_debug()
|
||||
if args.register:
|
||||
server.netbox_create()
|
||||
return True
|
||||
|
||||
def main():
|
||||
parser = argparse.ArgumentParser(description='Process some integers.')
|
||||
parser.add_argument('--register', action='store_true',
|
||||
help='Register server in Netbox')
|
||||
parser.add_argument('--debug', action='store_true',
|
||||
help='Print debug informations')
|
||||
|
||||
args = parser.parse_args()
|
||||
return run(args)
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
import sys
|
||||
from pprint import pprint
|
||||
import netbox_agent.dmidecode as dmidecode
|
||||
from netbox_agent.dell.dell import DellHost
|
||||
from netbox_agent.hp.hp import HPHost
|
||||
|
||||
MANUFACTURERS = {
|
||||
'Dell Inc.': DellHost,
|
||||
'HP': HPHost,
|
||||
'HPE': HPHost,
|
||||
}
|
||||
|
||||
def main():
|
||||
manufacturer = dmidecode.get_by_type('Chassis')[0].get('Manufacturer')
|
||||
print(manufacturer)
|
||||
server = MANUFACTURERS[manufacturer](dmidecode)
|
||||
print(server.get_product_name())
|
||||
print(server.get_chassis())
|
||||
print(server.get_service_tag())
|
||||
print(server.get_chassis_service_tag())
|
||||
server.netbox_create()
|
||||
# print(server.get_network_cards())
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
|
|
@ -155,3 +155,13 @@ class ServerBase():
|
|||
server = nb.dcim.devices.get(serial=self.get_service_tag())
|
||||
if not server:
|
||||
self._netbox_create_server()
|
||||
|
||||
def print_debug(self):
|
||||
# FIXME: do something more generic by looping on every get_* methods
|
||||
print('Datacenter:', self.get_datacenter())
|
||||
print('Netbox Datacenter:', self.get_netbox_datacenter())
|
||||
print('Is blade:', self.is_blade())
|
||||
print('Product Name:', self.get_product_name())
|
||||
print('Chassis:', self.get_chassis())
|
||||
print('Chassis service tag:', self.get_chassis_service_tag())
|
||||
print('Service tag:', self.get_service_tag())
|
||||
|
|
|
|||
Loading…
Add table
editor.link_modal.header
Reference in a new issue