def __init__(self): super(NodeAction, self).__init__() self.args = [ Args.get_env_arg(), group( Args.get_list_arg("List all nodes."), Args.get_set_arg("Set role for specific node."), Args.get_delete_arg("Delete specific node from environment."), Args.get_network_arg("Node network configuration."), Args.get_disk_arg("Node disk configuration."), Args.get_deploy_arg("Deploy specific nodes."), Args.get_provision_arg("Provision specific nodes.")), group( Args.get_default_arg("Get default configuration of some node"), Args.get_download_arg( "Download configuration of specific node"), Args.get_upload_arg("Upload configuration to specific node")), Args.get_dir_arg( "Select directory to which download node attributes"), Args.get_node_arg("Node id."), Args.get_force_arg("Bypassing parameter validation."), Args.get_all_arg("Select all nodes."), Args.get_role_arg("Role to assign for node.") ] self.flag_func_map = (("set", self.set), ("delete", self.delete), ("network", self.attributes), ("disk", self.attributes), ("deploy", self.start), ("provision", self.start), (None, self.list))
def __init__(self): super(EnvironmentAction, self).__init__() self.args = [ Args.get_env_arg(), group( Args.get_list_arg("List all available environments"), Args.get_set_arg("Set environment parameters e.g., its name"), Args.get_delete_arg( "Delete environment with a specific id or name"), Args.get_create_arg("Create a new environment with " "specific release id and name"), ), Args.get_release_arg("Release id"), Args.get_force_arg("Do it anyway"), Args.get_name_arg("Environment name"), Args.get_nst_arg("Set network segment type"), Args.get_deployment_tasks_arg("Environment tasks configuration"), Args.get_attributes_arg("Environment attributes"), group( Args.get_download_arg( "Download configuration of specific cluster"), Args.get_upload_arg( "Upload configuration to specific cluster")), Args.get_dir_arg( "Select directory to which download release attributes"), ] self.flag_func_map = (("deployment-tasks", self.deployment_tasks), ("attributes", self.attributes), ("create", self.create), ("set", self.set), ("delete", self.delete), (None, self.list))
def __init__(self): super(EnvironmentAction, self).__init__() self.args = [ Args.get_env_arg(), group( Args.get_list_arg( "List all available environments" ), Args.get_set_arg( "Set environment parameters (e.g name, deployment mode)" ), Args.get_delete_arg( "Delete environment with specific env or name" ), Args.get_create_arg( "Create a new environment with " "specific release id and name" ), Args.get_update_arg( "Update OS to specified release id for given env" ) ), Args.get_release_arg( "Release id" ), Args.get_force_arg( "Do it anyway" ), Args.get_name_arg( "Environment name" ), Args.get_mode_arg( "Set deployment mode for specific environment" ), Args.get_net_arg( "Set network mode for specific environment" ), Args.get_nst_arg( "Set network segment type" ), Args.get_deployment_tasks_arg("Environment tasks configuration"), Args.get_attributes_arg("Environment attributes"), group( Args.get_download_arg( "Download configuration of specific cluster"), Args.get_upload_arg( "Upload configuration to specific cluster") ), Args.get_dir_arg( "Select directory to which download release attributes"), ] self.flag_func_map = ( ("deployment-tasks", self.deployment_tasks), ("attributes", self.attributes), ("create", self.create), ("set", self.set), ("delete", self.delete), ("update", self.update), (None, self.list) )
def __init__(self): super(EnvironmentAction, self).__init__() self.args = [ Args.get_env_arg(), group( Args.get_list_arg("List all available environments."), Args.get_set_arg( "Set environment parameters (e.g name, deployment mode)"), Args.get_delete_arg( "Delete environment with specific env or name"), Args.get_create_arg("Create a new environment with " "specific release id and name."), Args.get_update_arg( "Update OS to specified release id for given env.")), Args.get_release_arg("Release id"), Args.get_name_arg("environment name"), Args.get_mode_arg("Set deployment mode for specific environment."), Args.get_net_arg("Set network mode for specific environment."), Args.get_nst_arg("Set network segment type"), Args.get_deployment_tasks_arg("Environment tasks configuration."), group( Args.get_download_arg( "Download configuration of specific cluster"), Args.get_upload_arg( "Upload configuration to specific cluster")), Args.get_dir_arg( "Select directory to which download release attributes"), ] self.flag_func_map = (("deployment-tasks", self.deployment_tasks), ("create", self.create), ("set", self.set), ("delete", self.delete), ("update", self.update), (None, self.list))
def __init__(self): super(NodeAction, self).__init__() self.args = [ Args.get_env_arg(), group( Args.get_list_arg("List all nodes."), Args.get_set_arg("Set role for specific node."), Args.get_delete_arg("Delete specific node from environment."), Args.get_attributes_arg("Node attributes."), Args.get_network_arg("Node network configuration."), Args.get_disk_arg("Node disk configuration."), Args.get_deploy_arg("Deploy specific nodes."), Args.get_hostname_arg("Set node hostname."), Args.get_node_name_arg("Set node name."), Args.get_delete_from_db_arg( "Delete specific nodes only from fuel db.\n" "User should still delete node from cobbler"), Args.get_provision_arg("Provision specific nodes."), ), group( Args.get_default_arg( "Get default configuration of some node"), Args.get_download_arg( "Download configuration of specific node"), Args.get_upload_arg( "Upload configuration to specific node") ), Args.get_dir_arg( "Select directory to which download node attributes"), Args.get_node_arg("Node id."), Args.get_force_arg("Bypassing parameter validation."), Args.get_all_arg("Select all nodes."), Args.get_role_arg("Role to assign for node."), group( Args.get_skip_tasks(), Args.get_tasks() ), Args.get_graph_endpoint(), Args.get_graph_startpoint(), ] self.flag_func_map = ( ("set", self.set), ("delete", self.delete), ("network", self.attributes), ("disk", self.attributes), ("deploy", self.start), ("provision", self.start), ("hostname", self.set_hostname), ("name", self.set_name), ("delete-from-db", self.delete_from_db), ("tasks", self.execute_tasks), ("skip", self.execute_tasks), ("end", self.execute_tasks), ("start", self.execute_tasks), ("attributes", self.node_attributes), (None, self.list) )
def __init__(self): super(NodeAction, self).__init__() self.args = [ Args.get_env_arg(), group( Args.get_list_arg("List all nodes."), Args.get_set_arg("Set role for specific node."), Args.get_delete_arg("Delete specific node from environment."), Args.get_network_arg("Node network configuration."), Args.get_disk_arg("Node disk configuration."), Args.get_deploy_arg("Deploy specific nodes."), Args.get_hostname_arg("Set node hostname."), Args.get_node_name_arg("Set node name."), Args.get_delete_from_db_arg( "Delete specific nodes only from fuel db.\n" "User should still delete node from cobbler"), Args.get_provision_arg("Provision specific nodes."), ), group( Args.get_default_arg( "Get default configuration of some node"), Args.get_download_arg( "Download configuration of specific node"), Args.get_upload_arg( "Upload configuration to specific node") ), Args.get_dir_arg( "Select directory to which download node attributes"), Args.get_node_arg("Node id."), Args.get_force_arg("Bypassing parameter validation."), Args.get_all_arg("Select all nodes."), Args.get_role_arg("Role to assign for node."), group( Args.get_skip_tasks(), Args.get_tasks() ), Args.get_graph_endpoint(), Args.get_graph_startpoint(), ] self.flag_func_map = ( ("set", self.set), ("delete", self.delete), ("network", self.attributes), ("disk", self.attributes), ("deploy", self.start), ("provision", self.start), ("hostname", self.set_hostname), ("name", self.set_name), ("delete-from-db", self.delete_from_db), ("tasks", self.execute_tasks), ("skip", self.execute_tasks), ("end", self.execute_tasks), ("start", self.execute_tasks), (None, self.list) )
def __init__(self): super(NetworkGroupAction, self).__init__() self.args = ( Args.get_env_arg(), Args.get_name_arg("Name of new network group."), Args.get_node_group_arg("ID of node group."), Args.get_release_arg("Release ID this network group belongs to."), Args.get_vlan_arg("VLAN of network."), Args.get_cidr_arg("CIDR of network."), Args.get_gateway_arg("Gateway of network."), Args.get_network_group_arg("ID of network group."), Args.get_meta_arg("Metadata in JSON format to override default " "network metadata."), group( Args.get_create_network_arg( "Create a new network group for the specified " " node group."), Args.get_delete_arg("Delete specified network groups."), Args.get_list_arg("List all network groups."), Args.get_set_arg("Set network group parameters."))) self.flag_func_map = ( ("create", self.create), ("delete", self.delete), ("set", self.set), (None, self.list), )
def __init__(self): super(PluginAction, self).__init__() self.args = [ Args.group( Args.get_list_arg( "List of all registered plugins."), Args.get_plugin_install_arg( "Install and register plugin package"), Args.get_plugin_remove_arg( "Remove and unregister plugin"), Args.get_plugin_register_arg( "Register installed plugin"), Args.get_plugin_unregister_arg( "Unregister plugin"), Args.get_plugin_update_arg( "Update installed plugin"), Args.get_plugin_downgrade_arg( "Downgrade installed plugin"), Args.get_plugin_sync_arg( "Synchronise plugins with API service")), Args.get_plugin_arg("Plugin id."), Args.get_force_arg("Force action") ] self.flag_func_map = ( ("install", self.install), ("remove", self.remove), ("update", self.update), ("downgrade", self.downgrade), ("sync", self.sync), ("register", self.register), ("unregister", self.unregister), (None, self.list), )
def __init__(self): super(OpenstackConfigAction, self).__init__() self.args = ( Args.get_env_arg(), Args.get_file_arg("Openstack configuration file"), Args.get_single_node_arg("Node ID"), Args.get_single_role_arg("Node role"), Args.get_config_id_arg("Openstack config ID"), Args.get_deleted_arg("Get deleted configurations"), group( Args.get_list_arg("List openstack configurations"), Args.get_download_arg( "Download current openstack configuration"), Args.get_upload_arg("Upload new openstack configuration"), Args.get_delete_arg("Delete openstack configuration"), Args.get_execute_arg("Apply openstack configuration"), required=True, ) ) self.flag_func_map = ( ('list', self.list), ('download', self.download), ('upload', self.upload), ('delete', self.delete), ('execute', self.execute) )
def __init__(self): super(GraphAction, self).__init__() self.args = ( Args.get_env_arg(), Args.get_render_arg( "Render graph from DOT to PNG" ), Args.get_download_arg( "Download graph of specific cluster" ), Args.get_dir_arg( "Select target dir to render graph." ), Args.group( Args.get_skip_tasks(), Args.get_tasks() ), Args.get_graph_endpoint(), Args.get_graph_startpoint(), Args.get_remove_type_arg(self.task_types), Args.get_parents_arg(), ) self.flag_func_map = ( ('render', self.render), ('download', self.download), )
def __init__(self): super(OpenstackConfigAction, self).__init__() self.args = ( Args.get_env_arg(), Args.get_file_arg("Openstack configuration file"), Args.get_node_arg("Node IDs list"), Args.get_single_role_arg("Node role"), Args.get_config_id_arg("Openstack config ID"), Args.get_deleted_arg("Get deleted configurations"), Args.get_force_arg("Force configuration update"), group( Args.get_list_arg("List openstack configurations"), Args.get_download_arg( "Download current openstack configuration"), Args.get_upload_arg("Upload new openstack configuration"), Args.get_delete_arg("Delete openstack configuration"), Args.get_execute_arg("Apply openstack configuration"), required=True, ) ) self.flag_func_map = ( ('list', self.list), ('download', self.download), ('upload', self.upload), ('delete', self.delete), ('execute', self.execute) )
def __init__(self): super(FactAction, self).__init__() self.args = [ Args.get_env_arg(required=True), group( Args.get_delete_arg( "Delete current {0} data.".format(self.action_name) ), Args.get_download_arg( "Download current {0} data.".format(self.action_name) ), Args.get_upload_arg( "Upload current {0} data.".format(self.action_name) ), Args.get_default_arg( "Download default {0} data.".format(self.action_name) ), required=True ), Args.get_dir_arg( "Directory with {0} data.".format(self.action_name) ), Args.get_node_arg( "Node ids." ), ] self.flag_func_map = ( ("default", self.default), ("upload", self.upload), ("delete", self.delete), ("download", self.download) )
def __init__(self): super(NetworkGroupAction, self).__init__() self.args = ( Args.get_env_arg(), Args.get_name_arg("Name of new network group."), Args.get_node_group_arg("ID of node group."), Args.get_release_arg("Release ID this network group belongs to."), Args.get_vlan_arg("VLAN of network."), Args.get_cidr_arg("CIDR of network."), Args.get_gateway_arg("Gateway of network."), Args.get_network_group_arg("ID of network group."), Args.get_meta_arg("Metadata in JSON format to override default " "network metadata."), group( Args.get_create_network_arg( "Create a new network group for the specified " " node group." ), Args.get_delete_arg("Delete specified network groups."), Args.get_list_arg("List all network groups."), Args.get_set_arg("Set network group parameters.") ) ) self.flag_func_map = ( ("create", self.create), ("delete", self.delete), ("set", self.set), (None, self.list), )
def __init__(self): super(TaskAction, self).__init__() self.args = [ group(Args.get_list_arg("List all tasks"), Args.get_delete_arg("Delete task with some task-id.")), Args.get_force_arg("Force deletion"), Args.get_task_arg("Task id.") ] self.flag_func_map = (("delete", self.delete), (None, self.list))
def __init__(self): super(NotificationsAction, self).__init__() self.args = [ Args.group( Args.get_list_arg("List all available notifications."), Args.get_notify_send_arg("Send notification"), Args.get_notify_mark_as_read_arg( "Mark notification(s) as read ('*' to mark all as read)."), ), Args.group( Args.get_notify_topic_arg("Notification topic (severity)"), ), Args.get_notify_all_messages_arg( "Select all messages (only unread by default)."), ] self.flag_func_map = ( ("send", self.send), ("mark-as-read", self.mark_as_read), (None, self.list), )
def __init__(self): super(NetworkAction, self).__init__() self.args = ( Args.get_env_arg(required=True), Args.get_dir_arg("Directory with network data."), group(Args.get_download_arg( "Download current network configuration."), Args.get_verify_arg("Verify current network configuration."), Args.get_upload_arg("Upload changed network configuration."), required=True)) self.flag_func_map = (("upload", self.upload), ("verify", self.verify), ("download", self.download))
def __init__(self): super(NetworkAction, self).__init__() self.args = ( Args.get_env_arg(required=True), Args.get_dir_arg("Directory with network data."), group( Args.get_download_arg("Download current network configuration."), Args.get_verify_arg("Verify current network configuration."), Args.get_upload_arg("Upload changed network configuration."), required=True, ), ) self.flag_func_map = (("upload", self.upload), ("verify", self.verify), ("download", self.download))
def __init__(self): super(SettingsAction, self).__init__() self.args = ( Args.get_env_arg(required=True), group( Args.get_download_arg("Modify current configuration."), Args.get_default_arg("Open default configuration."), Args.get_upload_arg("Save current changes in configuration."), required=True), Args.get_dir_arg("Directory with configuration data.")) self.flag_func_map = (("upload", self.upload), ("default", self.default), ("download", self.download))
def __init__(self): super(NodeAction, self).__init__() self.args = [ Args.get_env_arg(), group( Args.get_list_arg("List all nodes."), Args.get_set_arg("Set role for specific node."), Args.get_delete_arg("Delete specific node from environment."), Args.get_network_arg("Node network configuration."), Args.get_disk_arg("Node disk configuration."), Args.get_deploy_arg("Deploy specific nodes."), Args.get_provision_arg("Provision specific nodes.") ), group( Args.get_default_arg( "Get default configuration of some node"), Args.get_download_arg( "Download configuration of specific node"), Args.get_upload_arg( "Upload configuration to specific node") ), Args.get_dir_arg( "Select directory to which download node attributes"), Args.get_node_arg("Node id."), Args.get_force_arg("Bypassing parameter validation."), Args.get_all_arg("Select all nodes."), Args.get_role_arg("Role to assign for node.") ] self.flag_func_map = ( ("set", self.set), ("delete", self.delete), ("network", self.attributes), ("disk", self.attributes), ("deploy", self.start), ("provision", self.start), (None, self.list) )
def __init__(self): super(NetworkTemplateAction, self).__init__() self.args = ( Args.get_env_arg(required=True), Args.get_dir_arg("Directory with network templates."), group( Args.get_download_arg("Download current network template configuration."), Args.get_upload_arg("Upload changed network template configuration."), Args.get_delete_arg("Delete network template configuration."), required=True, ), ) self.flag_func_map = (("upload", self.upload), ("download", self.download), ("delete", self.delete))
def __init__(self): super(TaskAction, self).__init__() self.args = [ group( Args.get_list_arg("List all tasks"), Args.get_delete_arg("Delete task with some task-id") ), Args.get_force_arg("Force deletion"), Args.get_task_arg("Task id") ] self.flag_func_map = ( ("delete", self.delete), (None, self.list) )
def __init__(self): super(ReleaseAction, self).__init__() self.args = [ group( Args.get_list_arg("List all available releases."), Args.get_config_arg("Configure release with --release"), ), Args.get_release_arg("Specify release id to configure"), Args.get_username_arg("Username for release credentials"), Args.get_password_arg("Password for release credentials"), Args.get_satellite_arg("Satellite server hostname"), Args.get_activation_key_arg("activation key") ] self.flag_func_map = (("config", self.configure_release), (None, self.list))
def __init__(self): super(DeploymentTasksAction, self).__init__() self.args = [ group(Args.get_list_arg("List all deployment tasks"), ), Args.get_single_task_arg(required=True), Args.get_deployment_node_arg("Node ids."), Args.get_status_arg( "Statuses: pending, error, ready, running, skipped"), Args.get_tasks_names_arg( "Show deployment history for specific deployment tasks names " "and group output by task"), Args.get_show_parameters_arg("Show deployment tasks parameters"), Args.get_include_summary_arg("Show deployment tasks summary"), ] self.flag_func_map = ((None, self.list), )
def __init__(self): super(NodeGroupAction, self).__init__() self.args = ( Args.get_env_arg(), Args.get_list_arg("List all node groups."), Args.get_name_arg("Name of new node group."), Args.get_group_arg("ID of node group."), Args.get_node_arg("List of nodes to assign specified group to."), group( Args.get_create_arg( "Create a new node group in the specified environment."), Args.get_assign_arg("Download current network configuration."), Args.get_delete_arg("Verify current network configuration."), )) self.flag_func_map = (("create", self.create), ("delete", self.delete), ("assign", self.assign), (None, self.list))
def __init__(self): super(SettingsAction, self).__init__() self.args = ( Args.get_env_arg(required=True), group( Args.get_download_arg("Modify current configuration."), Args.get_default_arg("Open default configuration."), Args.get_upload_arg("Save current changes in configuration.") ), Args.get_dir_arg("Directory with configuration data.") ) self.flag_func_map = ( ("upload", self.upload), ("default", self.default), ("download", self.download) )
def __init__(self): super(NetworkTemplateAction, self).__init__() self.args = ( Args.get_env_arg(required=True), Args.get_dir_arg("Directory with network templates."), group( Args.get_download_arg( "Download current network template configuration."), Args.get_upload_arg( "Upload changed network template configuration."), Args.get_delete_arg("Delete network template configuration."), required=True)) self.flag_func_map = (("upload", self.upload), ("download", self.download), ("delete", self.delete))
def __init__(self): super(ReleaseAction, self).__init__() self.args = [ group( Args.get_list_arg("List all available releases."), Args.get_config_arg("Configure release with --release"), ), Args.get_release_arg("Specify release id to configure"), Args.get_username_arg("Username for release credentials"), Args.get_password_arg("Password for release credentials"), Args.get_satellite_arg("Satellite server hostname"), Args.get_activation_key_arg("activation key") ] self.flag_func_map = ( ("config", self.configure_release), (None, self.list) )
def __init__(self): super(EnvironmentAction, self).__init__() self.args = [ Args.get_env_arg(), group( Args.get_list_arg( "List all available environments." ), Args.get_set_arg( "Set environment parameters (e.g name, deployment mode)" ), Args.get_delete_arg( "Delete environment with specific env or name" ), Args.get_create_arg( "Create a new environment with " "specific release id and name." ), Args.get_update_arg( "Update OS to specified release id for given env." ) ), Args.get_release_arg( "Release id" ), Args.get_name_arg( "environment name" ), Args.get_mode_arg( "Set deployment mode for specific environment." ), Args.get_net_arg( "Set network mode for specific environment." ), Args.get_nst_arg( "Set network segment type" ) ] self.flag_func_map = ( ("create", self.create), ("set", self.set), ("delete", self.delete), ("update", self.update), (None, self.list) )
def __init__(self): super(GraphAction, self).__init__() self.args = ( Args.get_env_arg(), Args.get_render_arg("Render graph from DOT to PNG"), Args.get_download_arg("Download graph of specific cluster"), Args.get_dir_arg("Select target dir to render graph."), Args.group(Args.get_skip_tasks(), Args.get_tasks()), Args.get_graph_endpoint(), Args.get_graph_startpoint(), Args.get_remove_type_arg(self.task_types), Args.get_parents_arg(), Args.get_tred_arg("Apply transitive reduction filter for graph."), ) self.flag_func_map = ( ('render', self.render), ('download', self.download), )
def __init__(self): super(ReleaseAction, self).__init__() self.args = [ Args.get_release_arg('Specify particular release id'), Args.get_list_arg("List all available releases."), Args.get_network_arg("Node network configuration."), Args.get_dir_arg( "Select directory to which download release attributes"), group( Args.get_download_arg( "Download configuration of specific release"), Args.get_upload_arg( "Upload configuration to specific release") ) ] self.flag_func_map = ( ('network', self.network), (None, self.list), )
def __init__(self): # NOTE(dshulyak) this serializers are really messed up # it gets overwritten in several places self.file_serializer = FileFormatBasedSerializer() self.args = [ Args.get_list_arg("List all roles"), Args.get_release_arg("Release id"), Args.get_str_arg("role", help="Name of the role"), Args.get_file_arg("File with role description"), group(Args.get_create_arg("Create role from file"), Args.get_boolean_arg("update", help="Update role from file"), Args.get_delete_arg("Delete role from fuel")) ] self.flag_func_map = ( ("delete", self.delete), ("create", self.create), ("update", self.update), ("role", self.item), (None, self.list), )
def __init__(self): super(FactAction, self).__init__() self.args = [ Args.get_env_arg(required=True), group(Args.get_delete_arg("Delete current {0} data.".format( self.action_name)), Args.get_download_arg("Download current {0} data.".format( self.action_name)), Args.get_upload_arg("Upload current {0} data.".format( self.action_name)), Args.get_default_arg("Download default {0} data.".format( self.action_name)), required=True), Args.get_dir_arg("Directory with {0} data.".format( self.action_name)), Args.get_node_arg("Node ids."), ] self.flag_func_map = (("default", self.default), ("upload", self.upload), ("delete", self.delete), ("download", self.download))
def __init__(self): super(ReleaseAction, self).__init__() self.args = [ Args.get_release_arg('Specify particular release id'), Args.get_list_arg("List all available releases."), Args.get_network_arg("Release network configuration."), Args.get_deployment_tasks_arg("Release tasks configuration."), Args.get_sync_deployment_tasks_arg(), Args.get_file_pattern_arg(), Args.get_dir_arg( "Select directory to which download release attributes"), group( Args.get_download_arg( "Download configuration of specific release"), Args.get_upload_arg( "Upload configuration to specific release")) ] self.flag_func_map = ( ('sync-deployment-tasks', self.sync_deployment_tasks), ('deployment-tasks', self.deployment_tasks), ('network', self.network), (None, self.list), )
def __init__(self): super(DeploymentTasksAction, self).__init__() self.args = [ group( Args.get_list_arg("List all deployment tasks"), ), Args.get_single_task_arg(required=True), Args.get_deployment_node_arg( "Node ids." ), Args.get_status_arg( "Statuses: pending, error, ready, running, skipped" ), Args.get_tasks_names_arg( "Show deployment history for specific deployment tasks names " "and group output by task" ), Args.get_show_parameters_arg( "Show deployment tasks parameters" ) ] self.flag_func_map = ( (None, self.list), )
def __init__(self): super(NodeGroupAction, self).__init__() self.args = ( Args.get_env_arg(), Args.get_list_arg("List all node groups."), Args.get_name_arg("Name of new node group."), Args.get_group_arg("ID of node group."), Args.get_node_arg("List of nodes to assign specified group to."), group( Args.get_create_arg( "Create a new node group in the specified environment." ), Args.get_assign_arg( "Assign nodes to the specified node group."), Args.get_delete_arg( "Delete specified node groups."), ) ) self.flag_func_map = ( ("create", self.create), ("delete", self.delete), ("assign", self.assign), (None, self.list) )
def __init__(self): # NOTE(dshulyak) this serializers are really messed up # it gets overwritten in several places self.file_serializer = FileFormatBasedSerializer() self.args = [ Args.get_list_arg("List all roles"), Args.get_release_arg("Release id"), Args.get_str_arg("role", help="Name of the role"), Args.get_file_arg("File with role description"), group( Args.get_create_arg("Create role from file"), Args.get_boolean_arg("update", help="Update role from file"), Args.get_delete_arg("Delete role from fuel") ) ] self.flag_func_map = ( ("delete", self.delete), ("create", self.create), ("update", self.update), ("role", self.item), (None, self.list), )