def get_data(self, parsed_args): self.log.debug('get_data(%s)' % parsed_args) quantum_client = self.get_client() quantum_client.format = parsed_args.request_format body = self.args2body(parsed_args) _extra_values = parse_args_to_dict(parsed_args.value_specs) body[self.resource].update(_extra_values) obj_creator = getattr(quantum_client, "create_%s" % self.resource) data = obj_creator(body) # {u'network': {u'id': u'e9424a76-6db4-4c93-97b6-ec311cd51f19'}} info = self.resource in data and data[self.resource] or None if info: print >> self.app.stdout, _('Created a new %s:' % self.resource) else: info = {'': ''} for k, v in info.iteritems(): if isinstance(v, list): value = "" for _item in v: if value: value += "\n" if isinstance(_item, dict): value += utils.dumps(_item) else: value += str(_item) info[k] = value elif v is None: info[k] = '' return zip(*sorted(info.iteritems()))
def get_data(self, parsed_args): self.log.debug('run(%s)' % parsed_args) quantum_client = self.get_client() quantum_client.format = parsed_args.request_format quota = {} for resource in ('network', 'subnet', 'port'): if getattr(parsed_args, resource): quota[resource] = self._validate_int( resource, getattr(parsed_args, resource)) value_specs = parsed_args.value_specs if value_specs: quota.update(quantumv20.parse_args_to_dict(value_specs)) obj_updator = getattr(quantum_client, "update_%s" % self.resource) tenant_id = get_tenant_id(parsed_args.tenant_id, quantum_client) data = obj_updator(tenant_id, {self.resource: quota}) if self.resource in data: for k, v in data[self.resource].iteritems(): if isinstance(v, list): value = "" for _item in v: if value: value += "\n" if isinstance(_item, dict): value += utils.dumps(_item) else: value += str(_item) data[self.resource][k] = value elif v is None: data[self.resource][k] = '' return zip(*sorted(data[self.resource].iteritems())) else: return None
def get_data(self, parsed_args): self.log.debug('get_data(%s)' % parsed_args) quantum_client = self.get_client() quantum_client.format = parsed_args.request_format tenant_id = get_tenant_id(parsed_args.tenant_id, quantum_client) params = {} obj_shower = getattr(quantum_client, "show_%s" % self.resource) data = obj_shower(tenant_id, **params) if self.resource in data: for k, v in data[self.resource].iteritems(): if isinstance(v, list): value = "" for _item in v: if value: value += "\n" if isinstance(_item, dict): value += utils.dumps(_item) else: value += str(_item) data[self.resource][k] = value elif v is None: data[self.resource][k] = '' return zip(*sorted(data[self.resource].iteritems())) else: return None
def get_data(self, parsed_args): self.log.debug('get_data(%s)' % parsed_args) quantum_client = self.get_client() quantum_client.format = parsed_args.request_format params = {} if parsed_args.show_details: params = {'verbose': 'True'} if parsed_args.fields: params = {'fields': parsed_args.fields} if self.allow_names: _id = find_resourceid_by_name_or_id(quantum_client, self.resource, parsed_args.id) else: _id = parsed_args.id obj_shower = getattr(quantum_client, "show_%s" % self.resource) data = obj_shower(_id, **params) if self.resource in data: for k, v in data[self.resource].iteritems(): if isinstance(v, list): value = "" for _item in v: if value: value += "\n" if isinstance(_item, dict): value += utils.dumps(_item) else: value += str(_item) data[self.resource][k] = value elif isinstance(v, dict): value = utils.dumps(v) data[self.resource][k] = value elif v is None: data[self.resource][k] = '' return zip(*sorted(data[self.resource].iteritems())) else: return None
def _format_external_gateway_info(router): try: return utils.dumps(router['external_gateway_info']) except Exception: return ''
def _format_fixed_ips(port): try: return '\n'.join([utils.dumps(ip) for ip in port['fixed_ips']]) except Exception: return ''
def _to_json(self, data): return utils.dumps(data)