def do_chassis_list(cc, args): """List the chassis.""" if args.detail: fields = res_fields.CHASSIS_DETAILED_RESOURCE.fields field_labels = res_fields.CHASSIS_DETAILED_RESOURCE.labels sort_fields = res_fields.CHASSIS_DETAILED_RESOURCE.sort_fields sort_field_labels = res_fields.CHASSIS_DETAILED_RESOURCE.sort_labels elif args.fields: utils.check_for_invalid_fields( args.fields[0], res_fields.CHASSIS_DETAILED_RESOURCE.fields) resource = res_fields.Resource(args.fields[0]) fields = resource.fields field_labels = resource.labels sort_fields = res_fields.CHASSIS_DETAILED_RESOURCE.sort_fields sort_field_labels = res_fields.CHASSIS_DETAILED_RESOURCE.sort_labels else: fields = res_fields.CHASSIS_RESOURCE.fields field_labels = res_fields.CHASSIS_RESOURCE.labels sort_fields = fields sort_field_labels = field_labels params = utils.common_params_for_list(args, sort_fields, sort_field_labels) chassis = cc.chassis.list(**params) cliutils.print_list(chassis, fields, field_labels=field_labels, sortby_index=None)
def do_node_port_list(cc, args): """List the ports associated with a node.""" if args.detail: fields = res_fields.PORT_DETAILED_RESOURCE.fields field_labels = res_fields.PORT_DETAILED_RESOURCE.labels elif args.fields: utils.check_for_invalid_fields( args.fields[0], res_fields.PORT_DETAILED_RESOURCE.fields) resource = res_fields.Resource(args.fields[0]) fields = resource.fields field_labels = resource.labels else: fields = res_fields.PORT_RESOURCE.fields field_labels = res_fields.PORT_RESOURCE.labels sort_fields = res_fields.PORT_DETAILED_RESOURCE.sort_fields sort_field_labels = res_fields.PORT_DETAILED_RESOURCE.sort_labels params = utils.common_params_for_list(args, sort_fields, sort_field_labels) ports = cc.node.list_ports(args.node, **params) cliutils.print_list(ports, fields, field_labels=field_labels, sortby_index=None)
def do_node_list(cc, args): """List the nodes which are registered with the Ironic service.""" params = {} if args.associated is not None: params['associated'] = utils.bool_argument_value("--associated", args.associated) if args.maintenance is not None: params['maintenance'] = utils.bool_argument_value("--maintenance", args.maintenance) if args.provision_state is not None: params['provision_state'] = args.provision_state if args.detail: fields = res_fields.NODE_DETAILED_RESOURCE.fields field_labels = res_fields.NODE_DETAILED_RESOURCE.labels elif args.fields: utils.check_for_invalid_fields( args.fields[0], res_fields.NODE_DETAILED_RESOURCE.fields) resource = res_fields.Resource(args.fields[0]) fields = resource.fields field_labels = resource.labels else: fields = res_fields.NODE_RESOURCE.fields field_labels = res_fields.NODE_RESOURCE.labels sort_fields = res_fields.NODE_DETAILED_RESOURCE.sort_fields sort_field_labels = res_fields.NODE_DETAILED_RESOURCE.sort_labels params.update(utils.common_params_for_list(args, sort_fields, sort_field_labels)) nodes = cc.node.list(**params) cliutils.print_list(nodes, fields, field_labels=field_labels, sortby_index=None)
def do_portgroup_list(cc, args): """List the portgroups.""" params = {} if args.address is not None: params['address'] = args.address if args.node is not None: params['node'] = args.node if args.detail: fields = res_fields.PORTGROUP_DETAILED_RESOURCE.fields field_labels = res_fields.PORTGROUP_DETAILED_RESOURCE.labels elif args.fields: utils.check_for_invalid_fields( args.fields[0], res_fields.PORTGROUP_DETAILED_RESOURCE.fields) resource = res_fields.Resource(args.fields[0]) fields = resource.fields field_labels = resource.labels else: fields = res_fields.PORTGROUP_RESOURCE.fields field_labels = res_fields.PORTGROUP_RESOURCE.labels sort_fields = res_fields.PORTGROUP_DETAILED_RESOURCE.sort_fields sort_field_labels = res_fields.PORTGROUP_DETAILED_RESOURCE.sort_labels params.update( utils.common_params_for_list(args, sort_fields, sort_field_labels)) portgroup = cc.portgroup.list(**params) cliutils.print_list(portgroup, fields, field_labels=field_labels, sortby_index=None, json_flag=args.json)
def do_node_port_list(cc, args): """List the ports associated with a node.""" if args.detail: fields = res_fields.PORT_DETAILED_RESOURCE.fields field_labels = res_fields.PORT_DETAILED_RESOURCE.labels elif args.fields: utils.check_for_invalid_fields( args.fields[0], res_fields.PORT_DETAILED_RESOURCE.fields) resource = res_fields.Resource(args.fields[0]) fields = resource.fields field_labels = resource.labels else: fields = res_fields.PORT_RESOURCE.fields field_labels = res_fields.PORT_RESOURCE.labels sort_fields = res_fields.PORT_DETAILED_RESOURCE.sort_fields sort_field_labels = res_fields.PORT_DETAILED_RESOURCE.sort_labels params = utils.common_params_for_list(args, sort_fields, sort_field_labels) ports = cc.node.list_ports(args.node, **params) cliutils.print_list(ports, fields, field_labels=field_labels, sortby_index=None, json_flag=args.json)
def do_chassis_list(cc, args): """List the chassis.""" if args.detail: fields = res_fields.CHASSIS_DETAILED_RESOURCE.fields field_labels = res_fields.CHASSIS_DETAILED_RESOURCE.labels elif args.fields: utils.check_for_invalid_fields( args.fields[0], res_fields.CHASSIS_DETAILED_RESOURCE.fields) resource = res_fields.Resource(args.fields[0]) fields = resource.fields field_labels = resource.labels else: fields = res_fields.CHASSIS_RESOURCE.fields field_labels = res_fields.CHASSIS_RESOURCE.labels sort_fields = res_fields.CHASSIS_DETAILED_RESOURCE.sort_fields sort_field_labels = res_fields.CHASSIS_DETAILED_RESOURCE.sort_labels params = utils.common_params_for_list(args, sort_fields, sort_field_labels) chassis = cc.chassis.list(**params) cliutils.print_list(chassis, fields, field_labels=field_labels, sortby_index=None)
def do_volume_target_list(cc, args): """List the volume targets.""" params = {} if args.node is not None: params['node'] = args.node if args.detail: fields = res_fields.VOLUME_TARGET_DETAILED_RESOURCE.fields field_labels = res_fields.VOLUME_TARGET_DETAILED_RESOURCE.labels elif args.fields: utils.check_for_invalid_fields( args.fields[0], res_fields.VOLUME_TARGET_DETAILED_RESOURCE.fields) resource = res_fields.Resource(args.fields[0]) fields = resource.fields field_labels = resource.labels else: fields = res_fields.VOLUME_TARGET_RESOURCE.fields field_labels = res_fields.VOLUME_TARGET_RESOURCE.labels sort_fields = res_fields.VOLUME_TARGET_DETAILED_RESOURCE.sort_fields sort_field_labels = ( res_fields.VOLUME_TARGET_DETAILED_RESOURCE.sort_labels) params.update(utils.common_params_for_list(args, sort_fields, sort_field_labels)) volume_target = cc.volume_target.list(**params) cliutils.print_list(volume_target, fields, field_labels=field_labels, sortby_index=None, json_flag=args.json)
def do_port_list(cc, args): """List the ports.""" params = {} if args.address is not None: params['address'] = args.address if args.detail: fields = res_fields.PORT_DETAILED_RESOURCE.fields field_labels = res_fields.PORT_DETAILED_RESOURCE.labels elif args.fields: utils.check_for_invalid_fields( args.fields[0], res_fields.PORT_DETAILED_RESOURCE.fields) resource = res_fields.Resource(args.fields[0]) fields = resource.fields field_labels = resource.labels else: fields = res_fields.PORT_RESOURCE.fields field_labels = res_fields.PORT_RESOURCE.labels sort_fields = res_fields.PORT_DETAILED_RESOURCE.sort_fields sort_field_labels = res_fields.PORT_DETAILED_RESOURCE.sort_labels params.update(utils.common_params_for_list(args, sort_fields, sort_field_labels)) port = cc.port.list(**params) cliutils.print_list(port, fields, field_labels=field_labels, sortby_index=None, json_flag=args.json)
def do_volume_target_list(cc, args): """List the volume targets.""" params = {} if args.node is not None: params['node'] = args.node if args.detail: fields = res_fields.VOLUME_TARGET_DETAILED_RESOURCE.fields field_labels = res_fields.VOLUME_TARGET_DETAILED_RESOURCE.labels elif args.fields: utils.check_for_invalid_fields( args.fields[0], res_fields.VOLUME_TARGET_DETAILED_RESOURCE.fields) resource = res_fields.Resource(args.fields[0]) fields = resource.fields field_labels = resource.labels else: fields = res_fields.VOLUME_TARGET_RESOURCE.fields field_labels = res_fields.VOLUME_TARGET_RESOURCE.labels sort_fields = res_fields.VOLUME_TARGET_DETAILED_RESOURCE.sort_fields sort_field_labels = ( res_fields.VOLUME_TARGET_DETAILED_RESOURCE.sort_labels) params.update( utils.common_params_for_list(args, sort_fields, sort_field_labels)) volume_target = cc.volume_target.list(**params) cliutils.print_list(volume_target, fields, field_labels=field_labels, sortby_index=None, json_flag=args.json)
def do_node_list(cc, args): """List the nodes which are registered with the Ironic service.""" params = {} if args.associated is not None: params['associated'] = utils.bool_argument_value( "--associated", args.associated) if args.maintenance is not None: params['maintenance'] = utils.bool_argument_value( "--maintenance", args.maintenance) if args.provision_state is not None: params['provision_state'] = args.provision_state if args.detail: fields = res_fields.NODE_DETAILED_RESOURCE.fields field_labels = res_fields.NODE_DETAILED_RESOURCE.labels elif args.fields: utils.check_for_invalid_fields( args.fields[0], res_fields.NODE_DETAILED_RESOURCE.fields) resource = res_fields.Resource(args.fields[0]) fields = resource.fields field_labels = resource.labels else: fields = res_fields.NODE_RESOURCE.fields field_labels = res_fields.NODE_RESOURCE.labels sort_fields = res_fields.NODE_DETAILED_RESOURCE.sort_fields sort_field_labels = res_fields.NODE_DETAILED_RESOURCE.sort_labels params.update( utils.common_params_for_list(args, sort_fields, sort_field_labels)) nodes = cc.node.list(**params) cliutils.print_list(nodes, fields, field_labels=field_labels, sortby_index=None)
def do_volume_target_show(cc, args): """Show detailed information about a volume target.""" fields = args.fields[0] if args.fields else None utils.check_for_invalid_fields( fields, res_fields.VOLUME_TARGET_DETAILED_RESOURCE.fields) utils.check_empty_arg(args.volume_target, '<id>') volume_target = cc.volume_target.get(args.volume_target, fields=fields) _print_volume_target_show(volume_target, fields=fields, json=args.json)
def do_chassis_show(cc, args): """Show detailed information about a chassis.""" utils.check_empty_arg(args.chassis, '<chassis>') fields = args.fields[0] if args.fields else None utils.check_for_invalid_fields(fields, res_fields.CHASSIS_DETAILED_RESOURCE.fields) chassis = cc.chassis.get(args.chassis, fields=fields) _print_chassis_show(chassis, fields=fields)
def do_chassis_show(cc, args): """Show detailed information about a chassis.""" utils.check_empty_arg(args.chassis, '<chassis>') fields = args.fields[0] if args.fields else None utils.check_for_invalid_fields( fields, res_fields.CHASSIS_DETAILED_RESOURCE.fields) chassis = cc.chassis.get(args.chassis, fields=fields) _print_chassis_show(chassis, fields=fields)
def do_node_show(cc, args): """Show detailed information about a node.""" fields = args.fields[0] if args.fields else None utils.check_empty_arg(args.node, "<id>") utils.check_for_invalid_fields(fields, res_fields.NODE_DETAILED_RESOURCE.fields) if args.instance_uuid: node = cc.node.get_by_instance_uuid(args.node, fields=fields) else: node = cc.node.get(args.node, fields=fields) _print_node_show(node, fields=fields)
def do_volume_connector_show(cc, args): """Show detailed information about a volume connector.""" fields = args.fields[0] if args.fields else None utils.check_for_invalid_fields( fields, res_fields.VOLUME_CONNECTOR_DETAILED_RESOURCE.fields) utils.check_empty_arg(args.volume_connector, '<id>') volume_connector = cc.volume_connector.get(args.volume_connector, fields=fields) _print_volume_connector_show(volume_connector, fields=fields, json=args.json)
def do_port_show(cc, args): """Show detailed information about a port.""" fields = args.fields[0] if args.fields else None utils.check_for_invalid_fields( fields, res_fields.PORT_DETAILED_RESOURCE.fields) if args.address: port = cc.port.get_by_address(args.port, fields=fields) else: utils.check_empty_arg(args.port, '<id>') port = cc.port.get(args.port, fields=fields) _print_port_show(port, fields=fields, json=args.json)
def do_node_show(cc, args): """Show detailed information about a node.""" fields = args.fields[0] if args.fields else None utils.check_empty_arg(args.node, '<id>') utils.check_for_invalid_fields( fields, res_fields.NODE_DETAILED_RESOURCE.fields) if args.instance_uuid: node = cc.node.get_by_instance_uuid(args.node, fields=fields) else: node = cc.node.get(args.node, fields=fields) _print_node_show(node, fields=fields, json=args.json)
def do_portgroup_show(cc, args): """Show detailed information about a portgroup.""" fields = args.fields[0] if args.fields else None utils.check_for_invalid_fields( fields, res_fields.PORTGROUP_DETAILED_RESOURCE.fields) if args.address: portgroup = cc.portgroup.get_by_address(args.portgroup, fields=fields) else: utils.check_empty_arg(args.portgroup, '<id>') portgroup = cc.portgroup.get(args.portgroup, fields=fields) _print_portgroup_show(portgroup, fields=fields, json=args.json)
def do_chassis_node_list(cc, args): """List the nodes contained in a chassis.""" if args.detail: fields = res_fields.NODE_DETAILED_RESOURCE.fields field_labels = res_fields.NODE_DETAILED_RESOURCE.labels elif args.fields: utils.check_for_invalid_fields( args.fields[0], res_fields.NODE_DETAILED_RESOURCE.fields) resource = res_fields.Resource(args.fields[0]) fields = resource.fields field_labels = resource.labels else: fields = res_fields.NODE_RESOURCE.fields field_labels = res_fields.NODE_RESOURCE.labels params = utils.common_params_for_list(args, fields, field_labels) nodes = cc.chassis.list_nodes(args.chassis, **params) cliutils.print_list(nodes, fields, field_labels=field_labels, sortby_index=None)
def test_check_for_invalid_fields(self): self.assertIsNone(utils.check_for_invalid_fields( ['a', 'b'], ['a', 'b', 'c'])) # 'd' is not a valid field self.assertRaises(exc.CommandError, utils.check_for_invalid_fields, ['a', 'd'], ['a', 'b', 'c'])