def take_action(self, parsed_args):
        self.log.debug("take_action(%s)" % parsed_args)
        client = self.app.client_manager.data_processing
        search_opts = {}
        if parsed_args.plugin:
            search_opts['plugin_name'] = parsed_args.plugin
        if parsed_args.version:
            search_opts['hadoop_version'] = parsed_args.version

        data = client.cluster_templates.list(search_opts=search_opts)

        if parsed_args.name:
            data = utils.get_by_name_substring(data, parsed_args.name)

        if parsed_args.long:
            columns = ('name', 'id', 'plugin_name', 'hadoop_version',
                       'node_groups', 'description')
            column_headers = utils.prepare_column_headers(
                columns, {'hadoop_version': 'version'})

        else:
            columns = ('name', 'id', 'plugin_name', 'hadoop_version')
            column_headers = utils.prepare_column_headers(
                columns, {'hadoop_version': 'version'})

        return (
            column_headers,
            (osc_utils.get_item_properties(
                s,
                columns,
                formatters={
                    'node_groups': _format_node_groups_list
                }
            ) for s in data)
        )
    def take_action(self, parsed_args):
        self.log.debug("take_action(%s)" % parsed_args)
        client = self.app.client_manager.data_processing

        data = client.job_binaries.list()

        if parsed_args.name:
            data = utils.get_by_name_substring(data, parsed_args.name)

        if parsed_args.long:
            columns = ('name', 'id', 'url', 'description', 'is_public',
                       'is_protected')
            column_headers = utils.prepare_column_headers(columns)

        else:
            columns = ('name', 'id', 'url')
            column_headers = utils.prepare_column_headers(columns)

        return (
            column_headers,
            (osc_utils.get_item_properties(
                s,
                columns
            ) for s in data)
        )
示例#3
0
    def take_action(self, parsed_args):
        self.log.debug("take_action(%s)", parsed_args)
        client = self.app.client_manager.data_processing
        search_opts = {}
        if parsed_args.plugin:
            search_opts['plugin_name'] = parsed_args.plugin
        if parsed_args.plugin_version:
            search_opts['hadoop_version'] = parsed_args.plugin_version

        data = client.cluster_templates.list(search_opts=search_opts)

        if parsed_args.name:
            data = utils.get_by_name_substring(data, parsed_args.name)

        if parsed_args.long:
            columns = ('name', 'id', 'plugin_name', 'hadoop_version',
                       'node_groups', 'description')
            column_headers = utils.prepare_column_headers(
                columns, {'hadoop_version': 'plugin_version'})

        else:
            columns = ('name', 'id', 'plugin_name', 'hadoop_version')
            column_headers = utils.prepare_column_headers(
                columns, {'hadoop_version': 'plugin_version'})

        return (column_headers, (osc_utils.get_item_properties(
            s, columns, formatters={'node_groups': _format_node_groups_list})
                                 for s in data))
示例#4
0
    def take_action(self, parsed_args):
        self.log.debug("take_action(%s)" % parsed_args)
        client = self.app.client_manager.data_processing

        data = client.job_executions.list()
        for job in data:
            job.status = job.info['status']

        if parsed_args.status:
            data = [job for job in data
                    if job.info['status'] == parsed_args.status.replace(
                        '-', '').upper()]

        if parsed_args.long:
            columns = ('id', 'cluster id', 'job id', 'status', 'start time',
                       'end time')
            column_headers = utils.prepare_column_headers(columns)

        else:
            columns = ('id', 'cluster id', 'job id', 'status')
            column_headers = utils.prepare_column_headers(columns)

        return (
            column_headers,
            (osc_utils.get_item_properties(
                s,
                columns
            ) for s in data)
        )
示例#5
0
    def take_action(self, parsed_args):
        self.log.debug("take_action(%s)" % parsed_args)
        client = self.app.client_manager.data_processing

        data = client.job_executions.list()
        for job in data:
            job.status = job.info['status']

        if parsed_args.status:
            data = [
                job for job in data if job.info['status'] ==
                parsed_args.status.replace('-', '').upper()
            ]

        if parsed_args.long:
            columns = ('id', 'cluster id', 'job id', 'status', 'start time',
                       'end time')
            column_headers = utils.prepare_column_headers(columns)

        else:
            columns = ('id', 'cluster id', 'job id', 'status')
            column_headers = utils.prepare_column_headers(columns)

        return (column_headers, (osc_utils.get_item_properties(s, columns)
                                 for s in data))
示例#6
0
    def take_action(self, parsed_args):
        self.log.debug("take_action(%s)" % parsed_args)
        client = self.app.client_manager.data_processing
        search_opts = {}
        if parsed_args.plugin:
            search_opts['plugin_name'] = parsed_args.plugin
        if parsed_args.version:
            search_opts['hadoop_version'] = parsed_args.version

        data = client.clusters.list(search_opts=search_opts)

        if parsed_args.name:
            data = utils.get_by_name_substring(data, parsed_args.name)

        if parsed_args.long:
            columns = ('name', 'id', 'plugin_name', 'hadoop_version',
                       'status', 'description', 'default_image_id')
            column_headers = utils.prepare_column_headers(
                columns, {'hadoop_version': 'version',
                          'default_image_id': 'image'})

        else:
            columns = ('name', 'id', 'plugin_name', 'hadoop_version', 'status')
            column_headers = utils.prepare_column_headers(
                columns, {'hadoop_version': 'version',
                          'default_image_id': 'image'})
        return (
            column_headers,
            (osc_utils.get_item_properties(
                s,
                columns
            ) for s in data)
        )
    def test_prepare_column_headers(self):
        columns1 = ['first', 'second_column']
        self.assertEqual(
            ['First', 'Second column'], utils.prepare_column_headers(columns1))

        columns2 = ['First', 'Second column']
        self.assertEqual(
            ['First', 'Second column'], utils.prepare_column_headers(columns2))

        columns3 = ['first', 'second_column']
        self.assertEqual(
            ['First', 'Second'], utils.prepare_column_headers(
                columns3, remap={'second_column': 'second'}))
示例#8
0
    def test_prepare_column_headers(self):
        columns1 = ['first', 'second_column']
        self.assertEqual(['First', 'Second column'],
                         utils.prepare_column_headers(columns1))

        columns2 = ['First', 'Second column']
        self.assertEqual(['First', 'Second column'],
                         utils.prepare_column_headers(columns2))

        columns3 = ['first', 'second_column']
        self.assertEqual(['First', 'Second'],
                         utils.prepare_column_headers(
                             columns3, remap={'second_column': 'second'}))
示例#9
0
    def take_action(self, parsed_args):
        self.log.debug("take_action(%s)" % parsed_args)
        client = self.app.client_manager.data_processing

        search_opts = {}
        if parsed_args.type:
            search_opts['type'] = parsed_args.type
        if parsed_args.plugin:
            search_opts['plugin'] = parsed_args.plugin
            if parsed_args.version:
                search_opts['version'] = parsed_args.version
        elif parsed_args.version:
            raise exceptions.CommandError(
                '--version argument should be specified with --plugin '
                'argument')

        data = client.job_types.list(search_opts=search_opts)
        for job in data:
            plugins = []
            for plugin in job.plugins:
                versions = ", ".join(sorted(plugin["versions"].keys()))
                if versions:
                    versions = "(" + versions + ")"
                plugins.append(plugin["name"] + versions)
            job.plugins = ', '.join(plugins)

        columns = ('name', 'plugins')
        column_headers = utils.prepare_column_headers(columns)

        return (column_headers, (osc_utils.get_item_properties(s, columns)
                                 for s in data))
    def take_action(self, parsed_args):
        self.log.debug("take_action(%s)" % parsed_args)
        client = self.app.client_manager.data_processing
        search_opts = {'type': parsed_args.type} if parsed_args.type else {}

        data = client.data_sources.list(search_opts=search_opts)

        if parsed_args.long:
            columns = DATA_SOURCE_FIELDS
            column_headers = utils.prepare_column_headers(columns)

        else:
            columns = ('name', 'id', 'type')
            column_headers = utils.prepare_column_headers(columns)

        return (column_headers, (osc_utils.get_item_properties(s, columns)
                                 for s in data))
示例#11
0
    def take_action(self, parsed_args):
        self.log.debug("take_action(%s)" % parsed_args)
        client = self.app.client_manager.data_processing
        data = client.plugins.list()

        if parsed_args.long:
            columns = ("name", "title", "versions", "description")
            column_headers = utils.prepare_column_headers(columns)

        else:
            columns = ("name", "versions")
            column_headers = utils.prepare_column_headers(columns)

        return (
            column_headers,
            (osc_utils.get_item_properties(s, columns, formatters={"versions": osc_utils.format_list}) for s in data),
        )
示例#12
0
    def take_action(self, parsed_args):
        self.log.debug("take_action(%s)" % parsed_args)
        client = self.app.client_manager.data_processing
        data = client.plugins.list()

        if parsed_args.long:
            columns = ('name', 'title', 'versions', 'description')
            column_headers = utils.prepare_column_headers(columns)

        else:
            columns = ('name', 'versions')
            column_headers = utils.prepare_column_headers(columns)

        return (column_headers, (osc_utils.get_item_properties(
            s,
            columns,
            formatters={'versions': osc_utils.format_list},
        ) for s in data))
示例#13
0
    def take_action(self, parsed_args):
        self.log.debug("take_action(%s)", parsed_args)
        client = self.app.client_manager.data_processing

        data = client.job_binaries.list()

        if parsed_args.name:
            data = utils.get_by_name_substring(data, parsed_args.name)

        if parsed_args.long:
            columns = ('name', 'id', 'url', 'description', 'is_public',
                       'is_protected')
            column_headers = utils.prepare_column_headers(columns)

        else:
            columns = ('name', 'id', 'url')
            column_headers = utils.prepare_column_headers(columns)

        return (column_headers, (osc_utils.get_item_properties(s, columns)
                                 for s in data))
    def take_action(self, parsed_args):
        self.log.debug("take_action(%s)" % parsed_args)
        client = self.app.client_manager.data_processing
        search_opts = {'type': parsed_args.type} if parsed_args.type else {}

        data = client.data_sources.list(search_opts=search_opts)

        if parsed_args.long:
            columns = DATA_SOURCE_FIELDS
            column_headers = utils.prepare_column_headers(columns)

        else:
            columns = ('name', 'id', 'type')
            column_headers = utils.prepare_column_headers(columns)

        return (
            column_headers,
            (osc_utils.get_item_properties(
                s,
                columns
            ) for s in data)
        )
示例#15
0
    def take_action(self, parsed_args):
        self.log.debug("take_action(%s)" % parsed_args)
        client = self.app.client_manager.data_processing

        search_opts = {}
        if parsed_args.type:
            search_opts['type'] = parsed_args.type
        if parsed_args.plugin:
            search_opts['plugin'] = parsed_args.plugin
            if parsed_args.version:
                search_opts['version'] = parsed_args.version
        elif parsed_args.version:
            raise exceptions.CommandError(
                '--version argument should be specified with --plugin '
                'argument')

        data = client.job_types.list(search_opts=search_opts)
        for job in data:
            plugins = []
            for plugin in job.plugins:
                versions = ", ".join(sorted(plugin["versions"].keys()))
                if versions:
                    versions = "(" + versions + ")"
                plugins.append(plugin["name"] + versions)
            job.plugins = ', '.join(plugins)

        columns = ('name', 'plugins')
        column_headers = utils.prepare_column_headers(columns)

        return (
            column_headers,
            (osc_utils.get_item_properties(
                s,
                columns
            ) for s in data)
        )