Exemplo n.º 1
0
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     attrs = {}
     if parsed_args.name is not None:
         attrs['name'] = str(parsed_args.name)
     if parsed_args.type is not None:
         attrs['type'] = parsed_args.type
     if parsed_args.route_targets is not None:
         attrs['route_targets'] = parsed_args.route_targets
     if parsed_args.import_targets is not None:
         attrs['import_targets'] = parsed_args.import_targets
     if parsed_args.export_targets is not None:
         attrs['export_targets'] = parsed_args.export_targets
     if parsed_args.route_distinguishers is not None:
         attrs['route_distinguishers'] = parsed_args.route_distinguishers
     if parsed_args.vni is not None:
         attrs['vni'] = parsed_args.vni
     if parsed_args.local_pref is not None:
         attrs['local_pref'] = parsed_args.local_pref
     if 'project' in parsed_args and parsed_args.project is not None:
         project_id = nc_osc_utils.find_project(
             self.app.client_manager.identity,
             parsed_args.project,
             parsed_args.project_domain,
         ).id
         attrs['tenant_id'] = project_id
     body = {constants.BGPVPN: attrs}
     obj = client.create_bgpvpn(body)[constants.BGPVPN]
     columns, display_columns = nc_osc_utils.get_columns(obj, _attr_map)
     data = osc_utils.get_dict_properties(obj, columns,
                                          formatters=_formatters)
     return display_columns, data
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     create_method = getattr(
         client, 'create_bgpvpn_%s_assoc' % self._assoc_res_name)
     bgpvpn = client.find_resource(constants.BGPVPN, parsed_args.bgpvpn)
     assoc_res = client.find_resource(self._assoc_res_name,
                                      parsed_args.resource)
     body = {
         self._resource: {
             '%s_id' % self._assoc_res_name: assoc_res['id'],
         },
     }
     if 'project' in parsed_args and parsed_args.project is not None:
         project_id = nc_osc_utils.find_project(
             self.app.client_manager.identity,
             parsed_args.project,
             parsed_args.project_domain,
         ).id
         body[self._resource]['tenant_id'] = project_id
     obj = create_method(bgpvpn['id'], body)[self._resource]
     columns, display_columns = nc_osc_utils.get_columns(
         obj, self._attr_map)
     data = osc_utils.get_dict_properties(obj,
                                          columns,
                                          formatters=self._formatters)
     return display_columns, data
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     ppg_id = _get_id(client, parsed_args.port_pair_group, resource)
     obj = client.show_sfc_port_pair_group(ppg_id)[resource]
     columns, display_columns = nc_osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns)
     return display_columns, data
    def take_action(self, parsed_args):
        client = self.app.client_manager.neutronclient
        create_method = getattr(
            client, 'create_bgpvpn_%s_assoc' % self._assoc_res_name)
        bgpvpn = client.find_resource(constants.BGPVPN, parsed_args.bgpvpn)
        assoc_res = client.find_resource(self._assoc_res_name,
                                         parsed_args.resource)
        body = {
            self._resource: {
                '%s_id' % self._assoc_res_name: assoc_res['id'],
            },
        }
        if 'project' in parsed_args and parsed_args.project is not None:
            project_id = nc_osc_utils.find_project(
                self.app.client_manager.identity,
                parsed_args.project,
                parsed_args.project_domain,
            ).id
            body[self._resource]['tenant_id'] = project_id

        arg2body = getattr(self, '_args2body', None)
        if callable(arg2body):
            body[self._resource].update(
                arg2body(bgpvpn['id'], parsed_args)[self._resource])

        obj = create_method(bgpvpn['id'], body)[self._resource]
        transform = getattr(self, '_transform_resource', None)
        if callable(transform):
            transform(obj)
        columns, display_columns = nc_osc_utils.get_columns(obj,
                                                            self._attr_map)
        data = osc_utils.get_dict_properties(obj, columns,
                                             formatters=self._formatters)
        return display_columns, data
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     attrs = _get_common_attrs(self.app.client_manager, parsed_args)
     obj = client.create_fwaas_firewall_rule({const.FWR: attrs})[const.FWR]
     columns, display_columns = osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns, formatters=_formatters)
     return display_columns, data
Exemplo n.º 6
0
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     fc_id = _get_id(client, parsed_args.flow_classifier, resource)
     obj = client.show_sfc_flow_classifier(fc_id)[resource]
     columns, display_columns = nc_osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns)
     return display_columns, data
Exemplo n.º 7
0
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     attrs = _get_common_attrs(self.app.client_manager, parsed_args)
     obj = client.create_network_log({'log': attrs})['log']
     columns, display_columns = osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns)
     return (display_columns, data)
Exemplo n.º 8
0
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     attrs = {}
     if parsed_args.name is not None:
         attrs['name'] = str(parsed_args.name)
     if parsed_args.type is not None:
         attrs['type'] = parsed_args.type
     if parsed_args.route_targets is not None:
         attrs['route_targets'] = parsed_args.route_targets
     if parsed_args.import_targets is not None:
         attrs['import_targets'] = parsed_args.import_targets
     if parsed_args.export_targets is not None:
         attrs['export_targets'] = parsed_args.export_targets
     if parsed_args.route_distinguishers is not None:
         attrs['route_distinguishers'] = parsed_args.route_distinguishers
     if 'project' in parsed_args and parsed_args.project is not None:
         project_id = nc_osc_utils.find_project(
             self.app.client_manager.identity,
             parsed_args.project,
             parsed_args.project_domain,
         ).id
         attrs['tenant_id'] = project_id
     body = {constants.BGPVPN: attrs}
     obj = client.create_bgpvpn(body)[constants.BGPVPN]
     columns, display_columns = nc_osc_utils.get_columns(obj, _attr_map)
     data = osc_utils.get_dict_properties(obj,
                                          columns,
                                          formatters=_formatters)
     return display_columns, data
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     ppg_id = _get_id(client, parsed_args.port_pair_group, resource)
     obj = client.show_sfc_port_pair_group(ppg_id)[resource]
     columns, display_columns = nc_osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns)
     return display_columns, data
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     fc_id = _get_id(client, parsed_args.flow_classifier, resource)
     obj = client.show_sfc_flow_classifier(fc_id)[resource]
     columns, display_columns = nc_osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns)
     return display_columns, data
Exemplo n.º 11
0
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     attrs = _get_common_attrs(self.app.client_manager, parsed_args)
     body = {resource: attrs}
     obj = client.create_sfc_flow_classifier(body)[resource]
     columns, display_columns = nc_osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns)
     return display_columns, data
Exemplo n.º 12
0
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     attrs = _get_common_attrs(self.app.client_manager, parsed_args)
     obj = client.create_fwaas_firewall_policy(
         {const.FWP: attrs})[const.FWP]
     columns, display_columns = osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns, formatters=_formatters)
     return (display_columns, data)
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     attrs = _get_common_attrs(self.app.client_manager, parsed_args)
     body = {resource: attrs}
     obj = client.create_sfc_flow_classifier(body)[resource]
     columns, display_columns = nc_osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns)
     return display_columns, data
Exemplo n.º 14
0
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     fwg_id = client.find_resource(const.FWG, parsed_args.firewall_group,
                                   cmd_resource='fwaas_' + const.FWG)['id']
     obj = client.show_fwaas_firewall_group(fwg_id)[const.FWG]
     columns, display_columns = osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns, formatters=_formatters)
     return (display_columns, data)
Exemplo n.º 15
0
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     attrs = _get_attrs(self.app.client_manager, parsed_args)
     body = {constants.BGP_PEER: attrs}
     obj = client.create_bgp_peer(body)[constants.BGP_PEER]
     columns, display_columns = nc_osc_utils.get_columns(obj)
     data = utils.get_dict_properties(obj, columns)
     return display_columns, data
Exemplo n.º 16
0
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     id = client.find_resource(constants.BGP_PEER,
                               parsed_args.bgp_peer)['id']
     obj = client.show_bgp_peer(id)[constants.BGP_PEER]
     columns, display_columns = nc_osc_utils.get_columns(obj)
     data = utils.get_dict_properties(obj, columns)
     return display_columns, data
Exemplo n.º 17
0
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     log_id = client.find_resource(
         'log', parsed_args.network_log, cmd_resource=NET_LOG)['id']
     obj = client.show_network_log(log_id)['log']
     columns, display_columns = osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns)
     return (display_columns, data)
Exemplo n.º 18
0
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     id = client.find_resource(constants.BGPVPN, parsed_args.bgpvpn)['id']
     obj = client.show_bgpvpn(id)[constants.BGPVPN]
     columns, display_columns = nc_osc_utils.get_columns(obj, _attr_map)
     data = osc_utils.get_dict_properties(obj, columns,
                                          formatters=_formatters)
     return display_columns, data
Exemplo n.º 19
0
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     attrs = _get_common_attrs(self.app.client_manager, parsed_args)
     if parsed_args.name:
         attrs['name'] = str(parsed_args.name)
     obj = client.create_ikepolicy({'ikepolicy': attrs})['ikepolicy']
     columns, display_columns = osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns)
     return display_columns, data
Exemplo n.º 20
0
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     ike_id = client.find_resource(
         'ikepolicy', parsed_args.ikepolicy,
         cmd_resource='ikepolicy')['id']
     obj = client.show_ikepolicy(ike_id)['ikepolicy']
     columns, display_columns = osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns)
     return (display_columns, data)
Exemplo n.º 21
0
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     endpoint_id = client.find_resource(
         'endpoint_group', parsed_args.endpoint_group,
         cmd_resource='endpoint_group')['id']
     obj = client.show_endpoint_group(endpoint_id)['endpoint_group']
     columns, display_columns = osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns)
     return (display_columns, data)
Exemplo n.º 22
0
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     id = client.find_resource(constants.BGPVPN, parsed_args.bgpvpn)['id']
     obj = client.show_bgpvpn(id)[constants.BGPVPN]
     columns, display_columns = nc_osc_utils.get_columns(obj, _attr_map)
     data = osc_utils.get_dict_properties(obj,
                                          columns,
                                          formatters=_formatters)
     return display_columns, data
Exemplo n.º 23
0
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     vpn_id = client.find_resource(
         'vpnservice', parsed_args.vpnservice,
         cmd_resource='vpnservice')['id']
     obj = client.show_vpnservice(vpn_id)['vpnservice']
     columns, display_columns = osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns)
     return (display_columns, data)
Exemplo n.º 24
0
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     fwp_id = client.find_resource(const.FWP,
                                   parsed_args.firewall_policy,
                                   cmd_resource=const.CMD_FWP)['id']
     obj = client.show_fwaas_firewall_policy(fwp_id)[const.FWP]
     columns, display_columns = osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns, formatters=_formatters)
     return (display_columns, data)
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     ipsec_site_id = client.find_resource(
         'ipsec_site_connection', parsed_args.ipsec_site_connection,
         cmd_resource='ipsec_site_connection')['id']
     obj = client.show_ipsec_site_connection(
         ipsec_site_id)['ipsec_site_connection']
     columns, display_columns = osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns, formatters=_formatters)
     return (display_columns, data)
Exemplo n.º 26
0
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     attrs = _get_common_attrs(self.app.client_manager, parsed_args)
     if parsed_args.name:
         attrs['name'] = str(parsed_args.name)
     if parsed_args.router:
         _router_id = self.app.client_manager.network.find_router(
             parsed_args.router).id
         attrs['router_id'] = _router_id
     obj = client.create_vpnservice({'vpnservice': attrs})['vpnservice']
     columns, display_columns = osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns)
     return display_columns, data
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     attrs = _get_common_attrs(self.app.client_manager, parsed_args)
     try:
         body = {resource: attrs}
         obj = client.create_sfc_service_graph(body)[resource]
         columns, display_columns = nc_osc_utils.get_columns(obj, _attr_map)
         data = utils.get_dict_properties(obj, columns)
         return display_columns, data
     except Exception as e:
         msg = (_("Failed to create service graph using '%(pcs)s': %(e)s")
                % {'pcs': parsed_args.branching_points, 'e': e})
         raise exceptions.CommandError(msg)
Exemplo n.º 28
0
 def test_get_columns(self):
     item = {
         'id': 'test-id',
         'tenant_id': 'test-tenant_id',
         # 'name' is not included
         'foo': 'bar',  # unknown attribute
     }
     attr_map = (
         ('id', 'ID', utils.LIST_BOTH),
         ('tenant_id', 'Project', utils.LIST_LONG_ONLY),
         ('name', 'Name', utils.LIST_BOTH),
     )
     columns, display_names = utils.get_columns(item, attr_map)
     self.assertEqual(tuple(['id', 'tenant_id', 'foo']), columns)
     self.assertEqual(tuple(['ID', 'Project', 'foo']), display_names)
Exemplo n.º 29
0
 def test_get_columns(self):
     item = {
         'id': 'test-id',
         'tenant_id': 'test-tenant_id',
         # 'name' is not included
         'foo': 'bar',  # unknown attribute
     }
     attr_map = (
         ('id', 'ID', utils.LIST_BOTH),
         ('tenant_id', 'Project', utils.LIST_LONG_ONLY),
         ('name', 'Name', utils.LIST_BOTH),
     )
     columns, display_names = utils.get_columns(item, attr_map)
     self.assertEqual(tuple(['id', 'tenant_id', 'foo']), columns)
     self.assertEqual(tuple(['ID', 'Project', 'foo']), display_names)
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     show_method = getattr(client,
                           'show_bgpvpn_%s_assoc' % self._assoc_res_name)
     bgpvpn = client.find_resource(constants.BGPVPN, parsed_args.bgpvpn)
     assoc = client.find_resource_by_id(self._resource,
                                        parsed_args.resource_association_id,
                                        cmd_resource='bgpvpn_%s_assoc' %
                                        self._assoc_res_name,
                                        parent_id=bgpvpn['id'])
     obj = show_method(bgpvpn['id'], assoc['id'])[self._resource]
     columns, display_columns = nc_osc_utils.get_columns(
         obj, self._attr_map)
     data = osc_utils.get_dict_properties(obj,
                                          columns,
                                          formatters=self._formatters)
     return display_columns, data
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     show_method = getattr(client,
                           'show_bgpvpn_%s_assoc' % self._assoc_res_name)
     bgpvpn = client.find_resource(constants.BGPVPN, parsed_args.bgpvpn)
     assoc = client.find_resource_by_id(
         self._resource,
         parsed_args.resource_association_id,
         cmd_resource='bgpvpn_%s_assoc' % self._assoc_res_name,
         parent_id=bgpvpn['id'])
     obj = show_method(bgpvpn['id'], assoc['id'])[self._resource]
     transform = getattr(self, '_transform_resource', None)
     if callable(transform):
         transform(obj)
     columns, display_columns = nc_osc_utils.get_columns(obj,
                                                         self._attr_map)
     data = osc_utils.get_dict_properties(obj, columns,
                                          formatters=self._formatters)
     return display_columns, data
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     attrs = _get_common_attrs(self.app.client_manager, parsed_args)
     if parsed_args.vpnservice:
         _vpnservice_id = client.find_resource(
             'vpnservice',
             parsed_args.vpnservice,
             cmd_resource='vpnservice')['id']
         attrs['vpnservice_id'] = _vpnservice_id
     if parsed_args.ikepolicy:
         _ikepolicy_id = client.find_resource(
             'ikepolicy',
             parsed_args.ikepolicy,
             cmd_resource='ikepolicy')['id']
         attrs['ikepolicy_id'] = _ikepolicy_id
     if parsed_args.ipsecpolicy:
         _ipsecpolicy_id = client.find_resource(
             'ipsecpolicy',
             parsed_args.ipsecpolicy,
             cmd_resource='ipsecpolicy')['id']
         attrs['ipsecpolicy_id'] = _ipsecpolicy_id
     if parsed_args.peer_id:
         attrs['peer_id'] = parsed_args.peer_id
     if parsed_args.peer_address:
         attrs['peer_address'] = parsed_args.peer_address
     if parsed_args.psk:
         attrs['psk'] = parsed_args.psk
     if parsed_args.name:
         attrs['name'] = parsed_args.name
     if (bool(parsed_args.local_endpoint_group) !=
             bool(parsed_args.peer_endpoint_group)):
         message = _("You must specify both local and peer endpoint "
                     "groups")
         raise exceptions.CommandError(message)
     if not parsed_args.peer_cidrs and not parsed_args.local_endpoint_group:
         message = _("You must specify endpoint groups or peer CIDR(s)")
         raise exceptions.CommandError(message)
     obj = client.create_ipsec_site_connection(
         {'ipsec_site_connection': attrs})['ipsec_site_connection']
     columns, display_columns = osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns, formatters=_formatters)
     return display_columns, data
Exemplo n.º 33
0
 def take_action(self, parsed_args):
     client = self.app.client_manager.neutronclient
     attrs = _get_common_attrs(self.app.client_manager, parsed_args)
     if parsed_args.name:
         attrs['name'] = str(parsed_args.name)
     attrs['type'] = parsed_args.type
     if parsed_args.type == 'subnet':
         _subnet_ids = [client.find_resource(
             'subnet',
             endpoint,
             cmd_resource='subnet')['id']
             for endpoint in parsed_args.endpoints]
         attrs['endpoints'] = _subnet_ids
     else:
         attrs['endpoints'] = parsed_args.endpoints
     obj = client.create_endpoint_group(
         {'endpoint_group': attrs})['endpoint_group']
     columns, display_columns = osc_utils.get_columns(obj, _attr_map)
     data = utils.get_dict_properties(obj, columns)
     return display_columns, data