예제 #1
0
def pytest_configure(config):
    global botocore_client
    global gcp_client
    global gsuite_client
    global heroku_client

    # monkeypatch cache.set to serialize datetime.datetime's
    patch_cache_set(config)

    profiles = config.getoption("--aws-profiles")
    project_id = config.getoption("--gcp-project-id")
    organization = config.getoption("--organization")

    botocore_client = BotocoreClient(
        profiles=profiles,
        cache=config.cache,
        debug_calls=config.getoption("--debug-calls"),
        debug_cache=config.getoption("--debug-cache"),
        offline=config.getoption("--offline"),
    )

    gcp_client = GCPClient(
        project_id=project_id,
        cache=config.cache,
        debug_calls=config.getoption("--debug-calls"),
        debug_cache=config.getoption("--debug-cache"),
        offline=config.getoption("--offline"),
    )

    heroku_client = HerokuAdminClient(
        organization=organization,
        # cache=config.cache,
        cache=None,
        debug_calls=config.getoption("--debug-calls"),
        debug_cache=config.getoption("--debug-cache"),
        offline=config.getoption("--offline"),
    )

    config.custom_config = custom_config.CustomConfig(
        config.getoption("--config"))

    try:
        if any(x for x in config.args if "gsuite" in x):
            gsuite_client = GsuiteClient(
                domain=config.custom_config.gsuite.domain,
                offline=config.getoption("--offline"),
            )
        else:
            gsuite_client = GsuiteClient(domain="", offline=True)
    except AttributeError as e:
        gsuite_client = GsuiteClient(domain="", offline=True)
예제 #2
0
def pytest_configure(config):
    global botocore_client
    global gcp_client
    global gsuite_client
    global heroku_client

    # monkeypatch cache.set to serialize datetime.datetime's
    patch_cache_set(config)

    profiles = config.getoption('--aws-profiles')
    project_id = config.getoption('--gcp-project-id')
    organization = config.getoption('--organization')

    botocore_client = BotocoreClient(
        profiles=profiles,
        cache=config.cache,
        debug_calls=config.getoption('--debug-calls'),
        debug_cache=config.getoption('--debug-cache'),
        offline=config.getoption('--offline'))

    gcp_client = GCPClient(project_id=project_id,
                           cache=config.cache,
                           debug_calls=config.getoption('--debug-calls'),
                           debug_cache=config.getoption('--debug-cache'),
                           offline=config.getoption('--offline'))

    heroku_client = HerokuAdminClient(
        organization=organization,
        # cache=config.cache,
        cache=None,
        debug_calls=config.getoption('--debug-calls'),
        debug_cache=config.getoption('--debug-cache'),
        offline=config.getoption('--offline'))

    config.custom_config = custom_config.CustomConfig(
        config.getoption('--config'))

    if any(x for x in config.args if 'gsuite' in x):
        gsuite_client = GsuiteClient(domain=config.custom_config.gsuite.domain,
                                     offline=config.getoption('--offline'))
    else:
        gsuite_client = GsuiteClient(domain='', offline=True)
예제 #3
0
def pytest_configure(config):
    global botocore_client
    global gcp_client
    global gsuite_client
    global custom_config_global

    # run with -p 'no:cacheprovider'
    cache = config.cache if hasattr(config, "cache") else None
    if cache:
        # monkeypatch cache.set to serialize datetime.datetime's
        patch_cache_set(config)

    profiles = config.getoption("--aws-profiles")
    aws_regions = (config.getoption("--aws-regions").split(",")
                   if config.getoption("--aws-regions") else [])

    project_id = config.getoption("--gcp-project-id")
    folder_id = config.getoption("--gcp-folder-id")
    if project_id is not None and folder_id is not None:
        raise Exception(
            "--gcp-project-id and --gcp-folder-id are mutually exclusive arguments"
        )

    organization = config.getoption("--organization")

    botocore_client = BotocoreClient(
        profiles=profiles,
        regions=aws_regions,
        cache=cache,
        debug_calls=config.getoption("--debug-calls"),
        debug_cache=config.getoption("--debug-cache"),
        offline=config.getoption("--offline"),
    )

    gcp_client = GCPClient(
        project_id=project_id,
        folder_id=folder_id,
        cache=cache,
        debug_calls=config.getoption("--debug-calls"),
        debug_cache=config.getoption("--debug-cache"),
        offline=config.getoption("--offline"),
    )

    custom_config_global = custom_config.CustomConfig(
        config.getoption("--config"))
    config.custom_config = custom_config_global

    try:
        if any(x for x in config.args if "gsuite" in x):
            gsuite_client = GsuiteClient(
                domain=config.custom_config.gsuite.domain,
                offline=config.getoption("--offline"),
            )
        else:
            gsuite_client = GsuiteClient(domain="", offline=True)
    except AttributeError as e:
        gsuite_client = GsuiteClient(domain="", offline=True)

    # register custom marker for rationale (used in report)
    config.addinivalue_line(
        "markers",
        "rationale(reason): (optional) rationale behind the test. (null if not set)",
    )