# Path: sahara_tempest_plugin/tests/api/base.py
# CONF = config.CONF
# class InvalidSaharaTestConfiguration(exceptions.TempestException):
# class BaseDataProcessingTest(tempest.test.BaseTestCase):
#     def skip_checks(cls):
#     def setup_clients(cls):
#     def resource_setup(cls):
#     def resource_cleanup(cls):
#     def cleanup_resources(resource_id_list, method):
#     def create_node_group_template(cls, name, plugin_name, hadoop_version,
#                                    node_processes, flavor_id,
#                                    node_configs=None, **kwargs):
#     def create_cluster_template(cls, name, plugin_name, hadoop_version,
#                                 node_groups, cluster_configs=None, **kwargs):
#     def create_data_source(cls, name, type, url, **kwargs):
#     def create_job_binary_internal(cls, name, data):
#     def create_job_binary(cls, name, url, extra=None, **kwargs):
#     def create_job(cls, name, job_type, mains, libs=None, **kwargs):
#     def create_job_template(cls, name, job_type, mains, libs=None, **kwargs):
#     def get_node_group_template(cls, nodegroup='worker1'):
#     def get_cluster_template(cls, node_group_template_ids=None):
#     def wait_for_resource_deletion(cls, resource_id, get_resource):
#         def is_resource_deleted(resource_id):


import testtools
from testtools import testcase as tc
from tempest import config
from tempest.lib import decorators
from tempest.lib.common.utils import data_utils
from sahara_tempest_plugin.tests.api import base as dp_base
                'user': cls.os_primary.credentials.username,
                'password': cls.os_primary.credentials.password
            },
            'type': 'swift'
        }
        cls.swift_data_source = cls.swift_data_source_with_creds.copy()
        del cls.swift_data_source['credentials']

        cls.s3_data_source_with_creds = {
            'url': 's3://sahara-bucket/input-source',
            'description': 'Test data source',
            'credentials': {
                'accesskey': 'username',
                'secretkey': 'key',
                'endpoint': 'localhost',
                'bucket_in_path': False,
                'ssl': False
            },
            'type': 's3'
        }
        cls.s3_data_source = cls.s3_data_source_with_creds.copy()
        del cls.s3_data_source['credentials']

        cls.local_hdfs_data_source = {
            'url': 'input-source',
            'description': 'Test data source',
            'type': 'hdfs'
        }

        cls.external_hdfs_data_source = {

# Path: sahara_tempest_plugin/tests/api/base.py
# CONF = config.CONF
# class InvalidSaharaTestConfiguration(exceptions.TempestException):
# class BaseDataProcessingTest(tempest.test.BaseTestCase):
#     def skip_checks(cls):
#     def setup_clients(cls):
#     def resource_setup(cls):
#     def resource_cleanup(cls):
#     def cleanup_resources(resource_id_list, method):
#     def create_node_group_template(cls, name, plugin_name, hadoop_version,
#                                    node_processes, flavor_id,
#                                    node_configs=None, **kwargs):
#     def create_cluster_template(cls, name, plugin_name, hadoop_version,
#                                 node_groups, cluster_configs=None, **kwargs):
#     def create_data_source(cls, name, type, url, **kwargs):
#     def create_job_binary_internal(cls, name, data):
#     def create_job_binary(cls, name, url, extra=None, **kwargs):
#     def create_job(cls, name, job_type, mains, libs=None, **kwargs):
#     def create_job_template(cls, name, job_type, mains, libs=None, **kwargs):
#     def get_node_group_template(cls, nodegroup='worker1'):
#     def get_cluster_template(cls, node_group_template_ids=None):
#     def wait_for_resource_deletion(cls, resource_id, get_resource):
#         def is_resource_deleted(resource_id):


# Path: sahara_tempest_plugin/tests/api/test_data_sources.py
import testtools
from testtools import testcase as tc
from tempest import config
from tempest.lib import decorators
from tempest.lib.common.utils import data_utils
from sahara_tempest_plugin.tests.api import base as dp_base

                'user': cls.os_primary.credentials.username,
                'password': cls.os_primary.credentials.password
            },
            'type': 'swift'
        }
        cls.swift_data_source = cls.swift_data_source_with_creds.copy()
        del cls.swift_data_source['credentials']

        cls.s3_data_source_with_creds = {
            'url': 's3://sahara-bucket/input-source',
            'description': 'Test data source',
            'credentials': {
                'accesskey': 'username',
                'secretkey': 'key',
                'endpoint': 'localhost',
                'bucket_in_path': False,
                'ssl': False
            },
            'type': 's3'
        }
        cls.s3_data_source = cls.s3_data_source_with_creds.copy()
        del cls.s3_data_source['credentials']

        cls.local_hdfs_data_source = {
            'url': 'input-source',
            'description': 'Test data source',
            'type': 'hdfs'
        }

        cls.external_hdfs_data_source = {

            'url': 'hdfs://172.18.168.2:8020/usr/hadoop/input-source',