Beispiel #1
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        body = {}
        network_id = parsed_args.network_id
        if parsed_args.name is not None:
            body['name'] = str(parsed_args.name)
        if parsed_args.description is not None:
            body['description'] = str(parsed_args.description)
        if parsed_args.admin_state_up is not None:
            body['admin_state_up'] = parsed_args.admin_state_up
        if parsed_args.tags is not None:
            tags = {}
            for tag in parsed_args.tags:
                tags.update(tag)
            body['tags'] = tags

        dic = network_client.update_network(network_id, body={
            'network': body
        }).get('network')
        columns = utils.get_columns(dic)
        obj = to_obj.Network(dic)
        data = utils.get_item_properties(
            obj, columns, formatters={'subnets': utils.format_list})
        return (columns, data)
Beispiel #2
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        body = {'load_balancer_interface': {}}
        loadbalancer_interface_id = parsed_args.loadbalancer_interface_id
        utils.update_dict(
            parsed_args, body['load_balancer_interface'],
            ['description', 'network_id', 'ip_address', 'virtual_ip_address'])

        if parsed_args.network_id == '0':
            body["load_balancer_interface"]["network_id"] = None

        if parsed_args.ip_address == '0':
            body["load_balancer_interface"]["ip_address"] = None

        if parsed_args.virtual_ip_address == '0':
            body["load_balancer_interface"]["virtual_ip_address"] = None

        if parsed_args.vrid == 0:
            body["load_balancer_interface"]["virtual_ip_properties"] = None
        elif parsed_args.vrid:
            body["load_balancer_interface"]["virtual_ip_properties"] = {
                "protocol": "vrrp",
                "vrid": parsed_args.vrid,
            }

        dic = network_client.update_loadbalancer_interface(
            loadbalancer_interface_id, body).get('load_balancer_interface')
        columns = utils.get_columns(dic)
        obj = to_obj.LoadBalancerInterface(dic)
        data = utils.get_item_properties(
            obj,
            columns,
        )
        return (columns, data)
Beispiel #3
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        body = {'subnet': {}}
        subnet_id = parsed_args.subnet_id
        if parsed_args.name:
            body['subnet'].update({'name': parsed_args.name})
        if parsed_args.description:
            body['subnet'].update({'description': parsed_args.description})
        if parsed_args.no_gateway:
            body['subnet'].update({'gateway_ip': None})
        elif parsed_args.gateway_ip:
            body['subnet'].update({'gateway_ip': parsed_args.gateway_ip})
        if not (parsed_args.enable_dhcp is None):
            body['subnet'].update({'enable_dhcp': parsed_args.enable_dhcp})
        if parsed_args.dns_nameservers:
            body['subnet']['dns_nameservers'] = parsed_args.dns_nameservers
        if parsed_args.ntp_servers:
            body['subnet']['ntp_servers'] = parsed_args.ntp_servers
        if parsed_args.host_routes:
            body['subnet']['host_routes'] = parsed_args.host_routes
        if parsed_args.tags:
            tags = {}
            for tag in parsed_args.tags:
                tags.update(tag)
            body['subnet'].update({'tags': tags})

        dic = network_client.update_subnet(
            subnet_id, body=body).get('subnet')
        columns = utils.get_columns(dic)
        obj = to_obj.Subnet(dic)
        data = utils.get_item_properties(
            obj, columns,)
        return (columns, data)
Beispiel #4
0
 def take_action(self, parsed_args):
     sss_client = self.app.client_manager.sss
     tenant_id = parsed_args.tenant_id
     tenant = sss_client.show_tenant(tenant_id)
     columns = utils.get_columns(tenant)
     obj = objectify(tenant)
     data = utils.get_item_properties(obj, columns)
     return columns, data
Beispiel #5
0
 def take_action(self, parsed_args):
     sss_client = self.app.client_manager.sss
     user_id = parsed_args.user_id
     user = sss_client.show_user(user_id)
     columns = utils.get_columns(user)
     obj = objectify(user)
     data = utils.get_item_properties(obj, columns)
     return columns, data
Beispiel #6
0
 def take_action(self, parsed_args):
     sss_client = self.app.client_manager.sss
     contract_id = parsed_args.contract_id
     contract = sss_client.show_contract(contract_id)
     columns = utils.get_columns(contract)
     obj = objectify(contract)
     data = utils.get_item_properties(obj, columns)
     return columns, data
Beispiel #7
0
 def take_action(self, parsed_args):
     sss_client = self.app.client_manager.sss
     contract_id = parsed_args.contract_id
     target_month = parsed_args.target_month
     billing = sss_client.show_billing(contract_id, target_month)
     columns = utils.get_columns(billing)
     obj = objectify(billing)
     data = utils.get_item_properties(obj, columns)
     return (columns, data)
Beispiel #8
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        network_id = parsed_args.network_id

        dic = network_client.show_network(network_id).get('network')
        columns = utils.get_columns(dic)
        obj = to_obj.Network(dic)
        data = utils.get_item_properties(
            obj, columns, formatters={'subnets': utils.format_list})
        return (columns, data)
Beispiel #9
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        common_function_pool_id = parsed_args.common_function_pool_id

        dic = network_client.show_common_function_pool(common_function_pool_id).get('common_function_pool')
        columns = utils.get_columns(dic)
        obj = to_obj.CommonFunctionPool(dic)
        data = utils.get_item_properties(
            obj, columns,)
        return (columns, data)
Beispiel #10
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        firewall_interface_id = parsed_args.firewall_interface_id

        dic = network_client.show_firewall_interface(firewall_interface_id).get('firewall_interface')
        columns = utils.get_columns(dic)
        obj = to_obj.FirewallInterface(dic)
        data = utils.get_item_properties(
            obj, columns,)
        return (columns, data)
Beispiel #11
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        loadbalancer_plan_id = parsed_args.loadbalancer_plan_id

        dic = network_client.show_loadbalancer_plan(loadbalancer_plan_id).get('load_balancer_plan')
        columns = utils.get_columns(dic)
        obj = to_obj.LoadBalancerPlan(dic)
        data = utils.get_item_properties(
            obj, columns,)
        return columns, data
Beispiel #12
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        pport_id = parsed_args.physical_port_id

        dic = network_client.show_physical_port(pport_id).get('physical_port')
        columns = utils.get_columns(dic)
        obj = to_obj.PhysicalPort(dic)
        data = utils.get_item_properties(
            obj, columns,)
        return (columns, data)
Beispiel #13
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        dic = network_client.get_quotas_tenant().get('quota')
        columns = utils.get_columns(dic)
        obj = to_obj.Quota(dic)
        data = utils.get_item_properties(
            obj,
            columns,
        )
        return columns, data
Beispiel #14
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        subnet_id = parsed_args.subnet_id

        dic = network_client.show_subnet(subnet_id).get('subnet')
        columns = utils.get_columns(dic)
        obj = to_obj.Subnet(dic)
        data = utils.get_item_properties(
            obj, columns,)
        return columns, data
Beispiel #15
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        public_ip_id = parsed_args.public_ip_id

        dic = network_client.show_public_ip(public_ip_id).get('public_ip')
        columns = utils.get_columns(dic)
        obj = to_obj.PubicIP(dic)
        data = utils.get_item_properties(
            obj, columns,)
        return columns, data
Beispiel #16
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        subnet_id = parsed_args.subnet_id

        dic = network_client.show_subnet(subnet_id).get('subnet')
        dic['dns_nameservers'] = [ns for ns in dic['dns_nameservers'] if ns != '0.0.0.0']
        columns = utils.get_columns(dic)
        obj = to_obj.Subnet(dic)
        data = utils.get_item_properties(
            obj, columns,)
        return columns, data
Beispiel #17
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        ra_id = parsed_args.reserve_address_id

        dic = network_client.show_reserve_address(ra_id).get('reserve_address')
        columns = utils.get_columns(dic)
        obj = to_obj.ReservedAddress(dic)
        data = utils.get_item_properties(
            obj,
            columns,
        )
        return columns, data
Beispiel #18
0
    def take_action(self, parsed_args):
        sss_client = self.app.client_manager.sss
        body = {}
        if parsed_args.user_id is not None:
            body['user_id'] = str(parsed_args.user_id)
        if parsed_args.tenant_id is not None:
            body['tenant_id'] = str(parsed_args.tenant_id)

        role = sss_client.create_role(body)
        columns = utils.get_columns(role)
        obj = objectify(role)
        data = utils.get_item_properties(obj, columns)
        return columns, data
Beispiel #19
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        qos_id = parsed_args.qos_option_id

        dic = network_client.show_qos_option(qos_id).get('qos_option')
        columns = utils.get_columns(dic)
        obj = to_obj.QosOption(dic)
        data = utils.get_item_properties(
            obj,
            columns,
        )
        return columns, data
Beispiel #20
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        vpnsv_id = parsed_args.vpn_service_id

        dic = network_client.show_vpn_service(vpnsv_id).get('vpn_service')
        columns = utils.get_columns(dic)
        obj = to_obj.VPNService(dic)
        data = utils.get_item_properties(
            obj,
            columns,
        )
        return columns, data
Beispiel #21
0
 def take_action(self, parsed_args):
     rca_client = self.app.client_manager.rca
     name = parsed_args.name
     try:
         user = rca_client.users.get(name)
         printout = user._info
     except exceptions.ClientException as clientexp:
         printout = {"code": clientexp.code, "message": clientexp.message}
     columns = utils.get_columns(printout)
     data = utils.get_item_properties(
         objectify(printout),
         columns,
         formatters={'vpn_endpoints': utils.format_list_of_dicts})
     return columns, data
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        colocation_logical_link_id = parsed_args.colocation_logical_link_id

        dic = network_client.show_colo_logical_link(
            colocation_logical_link_id).get('colocation_logical_link')
        columns = utils.get_columns(dic)
        obj = to_obj.ColoLogicalLink(dic)
        data = utils.get_item_properties(
            obj,
            columns,
        )
        return columns, data
Beispiel #23
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        interdc_service_id = parsed_args.interdc_service_id

        dic = network_client.show_interdc_service(interdc_service_id).get(
            'interdc_service')
        columns = utils.get_columns(dic)
        obj = to_obj.InterDCService(dic)
        data = utils.get_item_properties(
            obj,
            columns,
        )
        return columns, data
Beispiel #24
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        fic_gateway_id = parsed_args.fic_gateway_id

        dic = network_client.show_fic_gateway(fic_gateway_id).get(
            'fic_gateway')
        columns = utils.get_columns(dic)
        obj = to_obj.FICGateway(dic)
        data = utils.get_item_properties(
            obj,
            columns,
        )
        return columns, data
Beispiel #25
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        firewall_id = parsed_args.firewall_id
        body = {}
        body.update({"username": parsed_args.username})
        dic = network_client.reset_password_firewall(firewall_id, body=body)
        columns = utils.get_columns(dic)
        obj = to_obj.Firewall(dic)
        data = utils.get_item_properties(
            obj,
            columns,
        )
        return columns, data
Beispiel #26
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        body = {'common_function_gateway': {}}
        utils.update_dict(parsed_args, body['common_function_gateway'],
                          ['name', 'description', 'common_function_pool_id'])

        dic = network_client.create_cfgw(body).get('common_function_gateway')
        columns = utils.get_columns(dic)
        obj = to_obj.CommonFunctionGateway(dic)
        data = utils.get_item_properties(
            obj,
            columns,
        )
        return (columns, data)
Beispiel #27
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        body = {'load_balancer': {}}
        utils.update_dict(parsed_args, body['load_balancer'], [
            'name', 'description', 'load_balancer_plan_id', 'availability_zone'
        ])

        dic = network_client.create_loadbalancer(body).get('load_balancer')
        columns = utils.get_columns(dic)
        obj = to_obj.LoadBalancer(dic)
        data = utils.get_item_properties(
            obj,
            columns,
        )
        return columns, data
Beispiel #28
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        body = {'public_ip': {}}
        utils.update_dict(
            parsed_args, body['public_ip'],
            ['name', 'description', 'internet_gw_id', 'submask_length'])

        dic = network_client.create_public_ip(body).get('public_ip')
        columns = utils.get_columns(dic)
        obj = to_obj.PubicIP(dic)
        data = utils.get_item_properties(
            obj,
            columns,
        )
        return columns, data
Beispiel #29
0
    def take_action(self, parsed_args):
        sss_client = self.app.client_manager.sss
        contract_id = parsed_args.contract_id
        target_month = parsed_args.target_month
        billing = sss_client.show_billing(contract_id, target_month)
        columns = utils.get_columns(billing)
        obj = objectify(billing)

        try:
            obj.charge_data = json.dumps(obj.charge_data, indent=2)
        except:
            # Ignore prettify if exception raised
            pass

        data = utils.get_item_properties(obj, columns)
        return (columns, data)
Beispiel #30
0
    def take_action(self, parsed_args):
        network_client = self.app.client_manager.network

        body = {'interdc_interface': {}}
        interdc_interface_id = parsed_args.interdc_interface_id
        utils.update_dict(parsed_args, body['interdc_interface'],
                          ['name', 'description'])

        dic = network_client.update_interdc_interface(
            interdc_interface_id, body=body).get('interdc_interface')
        columns = utils.get_columns(dic)
        obj = to_obj.InterDCInterface(dic)
        data = utils.get_item_properties(
            obj,
            columns,
        )
        return columns, data