Esempio n. 1
0
@unique
class Key(Enum):
    '''Enum for Env Config Keys'''
    imported_envs = auto()
    channels = auto()
    packages = auto()
    git_tag_for_env = auto()
    git_tag = auto()
    feedstock = auto()
    recipes = auto()
    external_dependencies = auto()
    patches = auto()


_PACKAGE_SCHEMA = {
    Key.feedstock.name: utils.make_schema_type(str, True),
    Key.git_tag.name: utils.make_schema_type(str),
    Key.recipes.name: utils.make_schema_type([str]),
    Key.channels.name: utils.make_schema_type([str]),
    Key.patches.name: utils.make_schema_type([str])
}

_ENV_CONFIG_SCHEMA = {
    Key.imported_envs.name: utils.make_schema_type([str]),
    Key.channels.name: utils.make_schema_type([str]),
    Key.git_tag_for_env.name: utils.make_schema_type(str),
    Key.external_dependencies.name: utils.make_schema_type([str]),
    Key.packages.name: utils.make_schema_type([_PACKAGE_SCHEMA])
}

Esempio n. 2
0
from inputs import Argument
from errors import OpenCEError, Error

COMMAND = 'feedstock'
DESCRIPTION = 'Test a feedstock as part of Open-CE'
ARGUMENTS = [Argument.CONDA_ENV_FILE, Argument.TEST_WORKING_DIRECTORY, Argument.TEST_LABELS]

@unique
class Key(Enum):
    '''Enum for Test File Keys'''
    tests = auto()
    name = auto()
    command = auto()

_TEST_SCHEMA ={
    Key.name.name: utils.make_schema_type(str, True),
    Key.command.name: utils.make_schema_type(str, True)
}

_TEST_FILE_SCHEMA = {
    Key.tests.name: utils.make_schema_type([_TEST_SCHEMA])
}

class TestCommand():
    """
    Contains a test to run within a given conda environment.

    Args:
        name (str): The name describing the test.
        conda_env (str): The name of the conda environment that the test will be run in.
        bash_command (str): The bash command to run.