def solace_delete_client_username(options): """ Deletes users / profiles / acl's where neccesary. Has a shutdown only mode which only shutdowns the user Has a force remove now mode which kills everything! Shutdown User Delete User """ for environment in options.environment: solace = SolaceAPI(environment, testmode=options.testmode) try: vpnname = name(options.vpnname, environment) except Exception, e: vpnname = options.vpnname # Users usernames = [] for username in options.username: try: usernames.append(username % environment) except Exception, e: usernames.append(username)
def solace_manage_profile(run_options): """ Deletes profile, solace 6.2+ needs to be scoped to VPN, prior versions are global. :param run_options: the Options Parser instance :return: """ logging.info("Options: %s" % run_options) for environment in run_options.environment: solace = SolaceAPI(environment, testmode=run_options.testmode) # try substitute environment into vpn_name if it is formated '%s_somename' try: vpnname = name(run_options.vpnname, environment) except Exception, e: vpnname = run_options.vpnname # profiles profiles = [] for profile in run_options.profile: try: profiles.append(profile % environment) except Exception, e: profiles.append(profile)
def get_users_of_vpn(self, *args, **kwargs): """ Just return a list of users for a VPN """ vpn_name = args[0] # type: str environment = get_key_from_kwargs("environment", kwargs) # type: str users = [] user1 = {} user1['username'] = name('%s_testproductA', environment) user1['password'] = '******' users.append(user1) return users
def get_queues_of_vpn(self, *args, **kwargs): """ As with VPN, all configs should be finalized before returned. """ vpn_name = args[0] # type: str environment = get_key_from_kwargs("environment", kwargs) # type: str queues = [] queue1 = {} queue1['queue_config'] = {} queue1['queue_config']["exclusive"] = "true" queue1['queue_config']["queue_size"] = "4096" queue1['queue_config']["retries"] = 0 queue1['queue_config']['max_bind_count'] = 1000 queue1['queue_config']['owner'] = name("%s_testproductA", environment) queue1['queue_config']["consume"] = "all" queue1["name"] = "testqueue1" queues.append(queue1) return queues
def get_vpns_by_owner(self, *args, **kwargs): """ return a LIST of vpns groups by some "owner", each VPN contains final config, so all environment overrides and that should be taken care of here! :param environment: the name of the environment """ owner_name = args[0] # type: str environment = get_key_from_kwargs("environment", kwargs) # type: str vpns = [] vpn1 = {} vpn1['owner'] = owner_name vpn1['vpn_config'] = {} vpn1['vpn_config']['spool_size'] = '1024' vpn1['password'] = '******' vpn1['id'] = '%s_testvpn' vpn1['name'] = name(vpn1['id'], environment) vpns.append(vpn1) return vpns
def test_fail(self): with self.assertRaises(Exception): name("test", "test")
def test_valid(self): f = name("test_%s_test", "dev") self.assertEqual(f, "test_dev_test")