''' Created on Nov 4, 2011 @author: mmornati ''' from webui.platforms.abstracts import UpdatePlatform import logging from webui.restserver.communication import callRestServer from webui.platforms.platforms import platforms from webui.platforms.postgresql import settings logger = logging.getLogger(__name__) class PostgreSQLUpdate(UpdatePlatform): def inventoryUpdate(self, user, use_another_task=True): logger.debug("Calling PostgreSQL Inventory") try: response, content = callRestServer(user, None, 'postgresql', 'inventory', None, True, use_another_task) except Exception, err: logger.error('ERROR: ' + str(err)) platforms.register(PostgreSQLUpdate, settings.PLATFORM_NAME)
''' Created on Nov 4, 2011 @author: mmornati ''' from webui.platforms.abstracts import UpdatePlatform import logging from webui.restserver.communication import callRestServer from webui.platforms.platforms import platforms from webui.platforms.postgresql import settings logger = logging.getLogger(__name__) class PostgreSQLUpdate(UpdatePlatform): def inventoryUpdate(self, user, use_another_task=True): logger.debug("Calling PostgreSQL Inventory") try: response, content = callRestServer(user, 'no-filter', 'postgresql', 'inventory', None, True, use_another_task) except Exception, err: logger.error('ERROR: ' + str(err)) platforms.register(PostgreSQLUpdate, settings.PLATFORM_NAME)
#Retrieving applilist for any server controlled by kermit applications = [] if servers: for server in servers: environment = self.extract_environment_level(server) appli = extract_appli_info(server.hostname, environment) if appli: for app in appli: extracted = check_contains(applications, app) if extracted: extracted["deploy"] = extracted["deploy"] + 1 extracted["servers"].append(app["servers"]) else: applications.append(app) return applications def getAppliInfo(self, user, appname): servers = utils.extract_user_servers(user) #Retrieving applilist for any server controlled by kermit applications = [] if servers: for server in servers: environment = self.extract_environment_level(server) appli = extract_appli_details(server.hostname, environment, appname) if appli: applications.extend(appli) return applications platforms.register(WebLogicApplication, settings.PLATFORM_NAME)
logger.debug('Configuring Bar') consoles = [] for console in server_info: #Configure Console console_dict = {"isFolder": True, "title": console['consolename'], "key":console['consolename'], "icon":"console_bar.png", "detailsEnabled": "true", 'url': reverse('bar_console_details', kwargs={'hostname':hostname, 'console_name':console['consolename'], 'resource_name':console['consolename']})} #Configure Batch Archives batch = {'title': 'Batch', 'isFolder':True, "key":"batchlist", "icon":"batch_process.png", "type":"batch", "console":console["consolename"]} bars = [] for bar in console['barlist']: bar_dict = {'title':bar['name'], "key":bar['name'], "icon":"console.png", "type":"bar", "detailsEnabled":"true", "url": reverse('bar_details', kwargs={'hostname':hostname, 'console_name':console['consolename'], 'resource_name':bar['name']})} bars.append(bar_dict) batch['children'] = bars #Configure PoolList pool_menu = {'title': 'Pools', 'isFolder':True, "key":"poollist", "icon":"folder_database.png", "type":"pool", "console":console["consolename"], "detailsEnabled":"true", "url": reverse('bar_pools_details', kwargs={'hostname':hostname, 'console_name':console['consolename'], 'resource_name':console['consolename']})} pools = [] for pool in console['poollist']: pool_url = pool['poolname'].replace('/', '_') pool_dict = {'title':pool['poolname'], "key":pool['poolname'], "icon":"datasource.png", "type":"pool", "detailsEnabled":"true", "url": reverse('bar_pool_details', kwargs={'hostname':hostname, 'console_name':console['consolename'], 'resource_name':pool_url})} pools.append(pool_dict) pool_menu['children'] = pools console_dict['children'] = [batch, pool_menu] consoles.append(console_dict) content['children'] = consoles return content platforms.register(BarServerTree, settings.PLATFORM_NAME)
class VirtualizationServerTree(ServerTree): def getDetailsTree(self, hostname): server_info = read_server_info(hostname) content = {} #Configuring Instances if server_info: content = { "isFolder": False, "title": 'Virtualization', "key": 'Virtualization', "icon": "virtualization.png", "detailsEnabled": "true", 'url': reverse('virtualization_details', kwargs={ 'hostname': hostname, 'instance_name': hostname, 'resource_name': hostname }) } return content platforms.register(VirtualizationServerTree, settings.PLATFORM_NAME)
servers = utils.extract_user_servers_in_path(user, server_path) #Retrieving applilist for any server controlled by kermit applications = [] if servers: for server in servers: environment = self.extract_environment_level(server) appli = extract_appli_info(server.hostname, environment) if appli: for app in appli: extracted = check_contains(applications, app) if extracted: extracted["deploy"] = extracted["deploy"] + 1 extracted["servers"].append(app["servers"]) else: applications.append(app) return applications def getAppliInfo(self, user, appname): servers = utils.extract_user_servers(user) #Retrieving applilist for any server controlled by kermit applications = [] if servers: for server in servers: environment = self.extract_environment_level(server) appli = extract_appli_details(server.hostname, environment, appname) if appli: applications.extend(appli) return applications platforms.register(JBossApplication, settings.PLATFORM_NAME)
''' Created on Nov 4, 2011 @author: mmornati ''' from webui.platforms.abstracts import UpdatePlatform import logging from webui.restserver.communication import callRestServer from webui.platforms.platforms import platforms from webui.platforms.weblogic import settings logger = logging.getLogger(__name__) class WebLogicUpdate(UpdatePlatform): def inventoryUpdate(self, user, use_another_task=True): logger.debug("Calling WebLoginc Inventory") try: response, content = callRestServer(user, 'no-filter', 'a7xows', 'inventory', None, True, use_another_task) except Exception, err: logger.error('ERROR: ' + str(err)) platforms.register(WebLogicUpdate, settings.PLATFORM_NAME)
"icon": "datasource.png", "type": "datasource", "instance": instance['name'], "detailsEnabled": "true", 'url': reverse('jboss_datasource_details', kwargs={ 'hostname': hostname, 'instance_name': instance['name'], 'resource_name': datasource["jndi_name"] }) } dss.append(datasource) datasources['children'] = dss db['children'] = [datasources, applications] dbs.append(db) db_instances['children'] = dbs children = [] children.append(db_instances) content['children'] = children return content platforms.register(JbossServerTree, settings.PLATFORM_NAME)
''' Created on Nov 4, 2011 @author: mmornati ''' from webui.platforms.abstracts import UpdatePlatform import logging from webui.restserver.communication import callRestServer from webui.platforms.platforms import platforms from webui.platforms.jboss import settings logger = logging.getLogger(__name__) class JbossUpdate(UpdatePlatform): def inventoryUpdate(self, user, use_another_task=True): logger.debug("Calling JBoss Inventory") try: response, content = callRestServer(user, 'no-filter', 'jboss', 'inventory', None, True, use_another_task) except Exception, err: logger.error('ERROR: ' + str(err)) platforms.register(JbossUpdate, settings.PLATFORM_NAME)
"detailsEnabled": "true", 'url': reverse('oracledb_instance_details', kwargs={ 'hostname': hostname, 'database_name': instance['instance_name'], 'resource_name': instance['instance_name'] }) } #Configuring Applications # logger.debug('Configuring Tables') # tables = {'title': 'Tables', 'isFolder':True, "key":"tables", "icon":"folder_documents.png", "type":"tables"} # tabs = [] # for table in database['tables']: # tab = {'title':table, "key":table, "icon":"datasource.png", "type":"table", "database":database['name']} # tabs.append(tab) # tables['children'] = tabs # db['children'] = [tables] dbs.append(db) db_instances['children'] = dbs children = [] children.append(db_instances) content['children'] = children return content platforms.register(OracleDBServerTree, settings.PLATFORM_NAME)
db['children'] = [tables] dbs.append(db) db_instances['children'] = dbs users_tree = { 'title': 'Users', 'isFolder': True, "key": "users", "icon": "users.png", "type": "users" } users = [] for user in server_info["users"]: user_tree = { 'title': user['username'], "key": user['username'], "icon": "user.png", "type": "user" } users.append(user_tree) users_tree['children'] = users children = [] children.append(db_instances) children.append(users_tree) content['children'] = children return content platforms.register(PosgreSQLServerTree, settings.PLATFORM_NAME)
''' Created on Nov 4, 2011 @author: mmornati ''' from webui.platforms.abstracts import UpdatePlatform import logging from webui.restserver.communication import callRestServer from webui.platforms.platforms import platforms from webui.platforms.oracledb import settings logger = logging.getLogger(__name__) class OracleDBUpdate(UpdatePlatform): def inventoryUpdate(self, user, use_another_task=True): logger.debug("Calling OracleDB Inventory") try: response, content = callRestServer(user, None, 'oracledb', 'inventory', None, True, use_another_task) except Exception, err: logger.error('ERROR: ' + str(err)) platforms.register(OracleDBUpdate, settings.PLATFORM_NAME)
for database in server_info["databases"]: db = {'title':database['name'], "key":database['name'], "icon":"database.png", "type":"database", "instance":database['name'], "detailsEnabled":"true", 'url': reverse('postgres_db_details', kwargs={'hostname':hostname, 'database_name':database['name'], 'resource_name':database['name']})} #Configuring Applications logger.debug('Configuring Tables') tables = {'title': 'Tables', 'isFolder':True, "key":"tables", "icon":"folder_documents.png", "type":"tables"} tabs = [] for table in database['tables']: tab = {'title':table, "key":table, "icon":"datasource.png", "type":"table", "database":database['name']} tabs.append(tab) tables['children'] = tabs db['children'] = [tables] dbs.append(db) db_instances['children'] = dbs users_tree = {'title': 'Users', 'isFolder':True, "key":"users", "icon":"users.png", "type":"users"} users = [] for user in server_info["users"]: user_tree = {'title':user['username'], "key":user['username'], "icon":"user.png", "type":"user"} users.append(user_tree) users_tree['children'] = users children = [] children.append(db_instances) children.append(users_tree) content['children'] = children return content platforms.register(PosgreSQLServerTree, settings.PLATFORM_NAME)
logger.debug('Configuring Applications') applications = {'title': 'Applications', 'isFolder':True, "key":"applications", "icon":"folder_applications.png", "type":"applications"} apps = [] for appli in server_info['applilist']: if instance['name'] == appli['target']: app = {'title':appli['name'], "key":appli['name'], "icon":"application.png", "type":"application", "instance":instance['name'], "detailsEnabled":"true", 'url': reverse('weblogic_application_details', kwargs={'hostname':hostname, 'resource_name':appli['name']})} apps.append(app) applications['children'] = apps instance_children.append(applications) #configuring datasources logger.debug('Configuring Datasources') db_datasources = {'title': 'Datasources', 'isFolder':True, "key":"datasources", "icon":"folder_database.png", "type":"datasources"} datasources = [] for datasource in server_info['datasources']: if instance['name'] in datasource['target']: ds = {'title':datasource['name'], "key":datasource['name'], "icon":"datasource.png", "type":"datasource", "instance":datasource['name'],"detailsEnabled":"true", 'url': reverse('weblogic_datasource_details', kwargs={'hostname':hostname, 'resource_name':datasource['name']})} datasources.append(ds) db_datasources['children'] = datasources instance_children.append(db_datasources) db['children'] = instance_children instances.append(db) db_instances['children'] = instances children.append(db_instances) content['children'] = children return content platforms.register(WebLogicServerTree, settings.PLATFORM_NAME)
datasource['name'], "icon": "datasource.png", "type": "datasource", "instance": datasource['name'], "detailsEnabled": "true", 'url': reverse('weblogic_datasource_details', kwargs={ 'hostname': hostname, 'resource_name': datasource['name'] }) } datasources.append(ds) db_datasources['children'] = datasources instance_children.append(db_datasources) db['children'] = instance_children instances.append(db) db_instances['children'] = instances children.append(db_instances) content['children'] = children return content platforms.register(WebLogicServerTree, settings.PLATFORM_NAME)
''' Created on Nov 4, 2011 @author: mmornati ''' from webui.platforms.abstracts import UpdatePlatform import logging from webui.restserver.communication import callRestServer from webui.platforms.platforms import platforms from webui.platforms.bar import settings logger = logging.getLogger(__name__) class BarUpdate(UpdatePlatform): def inventoryUpdate(self, user, use_another_task=True): logger.debug("Calling BAR Inventory") try: response, content = callRestServer(user, 'no-filter', 'a7xbar', 'inventory', None, True, use_another_task) except Exception, err: logger.error('ERROR: ' + str(err)) platforms.register(BarUpdate, settings.PLATFORM_NAME)
import logging from webui.platforms.abstracts import ServerTree from webui.platforms.platforms import platforms from webui.platforms.virtualization import settings logger = logging.getLogger(__name__) class VirtualizationServerTree(ServerTree): def getDetailsTree(self, hostname): server_info = read_server_info(hostname) content = {} # Configuring Instances if server_info: content = { "isFolder": False, "title": "Virtualization", "key": "Virtualization", "icon": "virtualization.png", "detailsEnabled": "true", "url": reverse( "virtualization_details", kwargs={"hostname": hostname, "instance_name": hostname, "resource_name": hostname}, ), } return content platforms.register(VirtualizationServerTree, settings.PLATFORM_NAME)
#Retrieving applilist for any server controlled by kermit applications = [] for server in servers: environment = self.extract_environment_level(server) appli = extract_appli_info(server.hostname, environment) if appli: for app in appli: extracted = check_contains(applications, app) if extracted: extracted["deploy"] = extracted["deploy"] + 1 extracted["servers"].append(app["servers"]) else: applications.append(app) return applications def getAppliInfo(self, user, appname): servers = utils.extract_user_servers(user) #Retrieving applilist for any server controlled by kermit applications = [] for server in servers: environment = self.extract_environment_level(server) appli = extract_appli_details(server.hostname, environment, appname) if appli: applications.extend(appli) return applications platforms.register(WebLogicApplication, settings.PLATFORM_NAME)
''' Created on Nov 4, 2011 @author: mmornati ''' from webui.platforms.abstracts import UpdatePlatform import logging from webui.restserver.communication import callRestServer from webui.platforms.platforms import platforms from webui.platforms.oracledb import settings logger = logging.getLogger(__name__) class OracleDBUpdate(UpdatePlatform): def inventoryUpdate(self, user, use_another_task=True): logger.debug("Calling OracleDB Inventory") try: response, content = callRestServer(user, 'no-filter', 'oracledb', 'inventory', None, True, use_another_task) except Exception, err: logger.error('ERROR: ' + str(err)) platforms.register(OracleDBUpdate, settings.PLATFORM_NAME)
''' Created on Nov 4, 2011 @author: mmornati ''' from webui.platforms.abstracts import UpdatePlatform import logging from webui.restserver.communication import callRestServer from webui.platforms.platforms import platforms from webui.platforms.weblogic import settings logger = logging.getLogger(__name__) class WebLogicUpdate(UpdatePlatform): def inventoryUpdate(self, user): logger.debug("Calling WebLoginc Inventory") try: response, content = callRestServer(user, 'no-filter', 'a7xows', 'inventory') except Exception, err: logger.error('ERROR: ' + str(err)) platforms.register(WebLogicUpdate, settings.PLATFORM_NAME)
''' Created on Nov 4, 2011 @author: mmornati ''' from webui.platforms.abstracts import UpdatePlatform import logging from webui.restserver.communication import callRestServer from webui.platforms.platforms import platforms from webui.platforms.jboss import settings logger = logging.getLogger(__name__) class JbossUpdate(UpdatePlatform): def inventoryUpdate(self, user, use_another_task=True): logger.debug("Calling JBoss Inventory") try: response, content = callRestServer(user, None, 'jboss', 'inventory', None, True, use_another_task) except Exception, err: logger.error('ERROR: ' + str(err)) platforms.register(JbossUpdate, settings.PLATFORM_NAME)
server_info = read_server_info(hostname) content = {} #Configuring Instances if server_info: content = {"isFolder": True, "title": 'OracleDB', "key":'OracleDB', "icon":"oracle_db.png"} logger.debug('Configuring Databases') db_instances = {'title': 'Databases', 'isFolder':True, "key":"databases", "icon":"folder_database.png", "type":"databases"} dbs = [] for instance in server_info["instances"]: db = {'title':instance['instance_name'], "key":instance['instance_name'], "icon":"database.png", "type":"database", "instance":instance['instance_name'], "detailsEnabled":"true", 'url': reverse('oracledb_instance_details', kwargs={'hostname':hostname, 'database_name':instance['instance_name'], 'resource_name':instance['instance_name']})} #Configuring Applications # logger.debug('Configuring Tables') # tables = {'title': 'Tables', 'isFolder':True, "key":"tables", "icon":"folder_documents.png", "type":"tables"} # tabs = [] # for table in database['tables']: # tab = {'title':table, "key":table, "icon":"datasource.png", "type":"table", "database":database['name']} # tabs.append(tab) # tables['children'] = tabs # db['children'] = [tables] dbs.append(db) db_instances['children'] = dbs children = [] children.append(db_instances) content['children'] = children return content platforms.register(OracleDBServerTree, settings.PLATFORM_NAME)
db = {'title':instance['id'], "key":instance['id'], "icon":"web_instance.png", "type":"instance", "instance":instance['id'],"detailsEnabled":"true", 'url': reverse('oc4j_instance_details', kwargs={'hostname':hostname, 'instance_name':instance['id'], 'resource_name':instance['id']})} #Configuring Applications logger.debug('Configuring Applications') applications = {'title': 'Applications', 'isFolder':True, "key":"applications", "icon":"folder_applications.png", "type":"applications"} apps = [] for appli in instance['applilist']: app = {'title':appli['name'], "key":appli['name'], "icon":"application.png", "type":"application", "instance":instance['id'], "detailsEnabled":"true", 'url': reverse('oc4j_application_details', kwargs={'hostname':hostname, 'instance_name':instance['id'], 'resource_name':appli['name']})} apps.append(app) applications['children'] = apps #Configuring Datasources logger.debug('Configuring Datasources') datasources = {'title': 'Datasources', 'isFolder':True, "key":"datasources", "icon":"folder_database.png", "type":"datasources", "instance":instance['id'], "detailsEnabled":"true", 'url': reverse('oc4j_datasources_details', kwargs={'hostname':hostname, 'instance_name':instance['id'], 'resource_name':instance['id']})} dss = [] for datasource in instance['datasource']: datasource_url = datasource['name'].replace('/', '_') datasource = {'title':datasource['name'], "key":datasource['name'], "icon":"datasource.png", "type":"datasource", "instance":instance['id'], "detailsEnabled":"true", 'url': reverse('oc4j_datasource_details', kwargs={'hostname':hostname, 'instance_name':instance['id'], 'resource_name':datasource_url})} dss.append(datasource) datasources['children'] = dss db['children'] = [datasources, applications] dbs.append(db) db_instances['children'] = dbs children = [] children.append(db_instances) content['children'] = children return content platforms.register(OC4JServerTree, settings.PLATFORM_NAME)