def do_component_show(cs, args): """Show details about a component.""" component = _find_component(cs, args.component) keys = ['_links'] final_dict = utils.remove_values_from_manager_dict(component, keys) final_dict = utils.check_json_pretty_value_for_dict(final_dict) utils.print_dict(final_dict)
def do_device_show(cs, args): """Show details about a device.""" device = _find_device(cs, args.mac) keys = ['_links', 'hardware_profile'] final_dict = utils.remove_values_from_manager_dict(device, keys) final_dict = utils.check_json_value_for_dict(final_dict) utils.print_dict(final_dict)
def do_node_show(cs, args): """Show details about a node in a zone.""" node = _find_node(cs, args.zone, args.node) keys = ['_links'] final_dict = utils.remove_values_from_manager_dict(node, keys) final_dict = utils.check_json_value_for_dict(final_dict) utils.print_dict(final_dict)
def do_role_show(cs, args): """Show details about a role.""" role = _find_role(cs, args.zone, args.role) keys = ['_links'] final_dict = utils.remove_values_from_manager_dict(role, keys) final_dict = utils.check_json_pretty_value_for_dict(final_dict) utils.print_dict(final_dict)
def do_profile_show(cs, args): """Show details about a profile by architecture.""" profile = _find_profile(cs, args.architecture, args.profile) keys = ['_links'] final_dict = utils.remove_values_from_manager_dict(profile, keys) final_dict = utils.check_json_pretty_value_for_dict(final_dict) utils.print_dict(final_dict)
def do_profile_json(cs, args): """Gets the JSON of the profile.""" profile = _find_profile(cs, args.architecture, args.profile) keys = ['_links'] final_dict = utils.remove_values_from_manager_dict(profile, keys) profile = {'profile': ''} profile.update({'profile': final_dict}) print(json.dumps(profile))
def do_zone_json(cs, args): """Gets the JSON of the zone.""" zone = _find_zone(cs, args.zone) keys = ['_links'] final_dict = utils.remove_values_from_manager_dict(zone, keys) zone = {'zone': ''} zone.update({'zone': final_dict}) print(json.dumps(zone))
def do_role_component_json(cs, args): """Gets the JSON of the component by zone and role.""" zone = _find_zone(cs, args.zone) role = _find_role(cs, args.zone, args.role) component = args.component component_zone_role = cs.components.get_zone_role(zone, role, component) keys = ['_links'] final_dict = utils.remove_values_from_manager_dict(component_zone_role, keys) print(json.dumps({'component': final_dict}))
def do_role_component_show(cs, args): """Show details about a component by zone and role.""" zone = _find_zone(cs, args.zone) role = _find_role(cs, args.zone, args.role) component = args.component component_zone_role = cs.components.get_zone_role(zone, role, component) keys = ['_links'] final_dict = utils.remove_values_from_manager_dict(component_zone_role, keys) final_dict = utils.check_json_pretty_value_for_dict(final_dict) utils.print_dict(final_dict)
def do_service_execute(cs, args): """Execute a service by zone, role and component.""" zone = _find_zone(cs, args.zone) role = _find_role(cs, args.zone, args.role) component = _find_component(cs, args.component) service = _find_service(cs, args.zone, args.role, args.component, args.service) node = _find_node(cs, args.zone, args.node) task = cs.tasks.execute_service(zone, role, component, service, node) final_dict = utils.remove_values_from_manager_dict(task, []) final_dict = utils.check_json_value_for_dict(final_dict) utils.print_dict(final_dict)
def do_profile_create(cs, args): """Add a new profile by architecture.""" _validate_extension_file(args.profile, 'json') architecture = _find_architecture(cs, args.architecture) data = _validate_json_format_file(args.profile) data['profile']['name'] = args.name profile = cs.profiles.create(architecture, data) keys = ['_links'] final_dict = utils.remove_values_from_manager_dict(profile, keys) final_dict = utils.check_json_pretty_value_for_dict(final_dict) utils.print_dict(final_dict)
def do_architecture_create(cs, args): """Add a new architecture. :param cs: :param args: """ _validate_extension_file(args.architecture, 'arc') with open(args.architecture) as f: architecture = cs.architectures.create(json.load(f)) keys = ['_links'] final_dict = utils.remove_values_from_manager_dict(architecture, keys) final_dict = utils.check_json_pretty_value_for_dict(final_dict) utils.print_dict(final_dict)
def do_zone_create(cs, args): """Add a new zone by architecture according to a JSON profile.""" _validate_extension_file(args.zone, 'json') architecture = _find_architecture(cs, args.architecture) file = _validate_json_format_file(args.zone) base_profile = file['profile'] for key, value in base_profile.items(): if key == 'name': base_profile.update({key: args.name}) zone = {'zone': ''} zone.update({'zone': base_profile}) zone = cs.zones.create(architecture, zone) keys = ['_links'] final_dict = utils.remove_values_from_manager_dict(zone, keys) final_dict = utils.check_json_pretty_value_for_dict(final_dict) utils.print_dict(final_dict)
def do_datastore_show(cs, args): """Show details about a datastore.""" datastore = _find_datastore(cs, args.datastore) keys = ['actions'] final_dict = utils.remove_values_from_manager_dict(datastore, keys) utils.print_dict(final_dict)