Exemple #1
0
 def __init__(self, repository_location_handle):
     self._handle = check.inst_param(
         repository_location_handle,
         'repository_location_handle',
         PythonEnvRepositoryLocationHandle,
     )
     self.external_repositories = {
         er.name: er for er in sync_get_external_repositories(self._handle)
     }
Exemple #2
0
def test_external_repositories_api():
    repository_location_handle = get_bar_repo_repository_location_handle()
    external_repos = sync_get_external_repositories(repository_location_handle)

    assert len(external_repos) == 1

    external_repository = external_repos[0]

    assert isinstance(external_repository, ExternalRepository)
    assert external_repository.name == "bar_repo"
def test_multi_file_override_workspace():
    workspace = load_workspace_from_yaml_paths([
        file_relative_path(__file__, 'multi_location.yaml'),
        file_relative_path(__file__, 'override_location.yaml'),
    ])
    assert isinstance(workspace, Workspace)
    assert len(workspace.repository_location_handles) == 2
    assert workspace.has_repository_location_handle('loaded_from_file')
    assert workspace.has_repository_location_handle('loaded_from_module')

    # Ensure location `loaded_from_file` has been overridden
    external_repositories = sync_get_external_repositories(
        workspace.get_repository_location_handle('loaded_from_file'))
    assert len(external_repositories) == 1
    assert external_repositories[0].name == "extra_repository"
def test_giant_external_repository():
    repository_location_handle = RepositoryLocationHandle.create_python_env_location(
        loadable_target_origin=LoadableTargetOrigin(
            executable_path=sys.executable,
            module_name="dagster_tests.api_tests.test_api_snapshot_repository",
            attribute="giant_repo",
        ),
        location_name="giant_repo_location",
    )
    external_repos = sync_get_external_repositories(repository_location_handle)

    assert len(external_repos) == 1

    external_repository = external_repos[0]

    assert isinstance(external_repository, ExternalRepository)
    assert external_repository.name == "giant_repo"
Exemple #5
0
def test_multi_file_override_workspace(python_user_process_api):
    with load_workspace_from_yaml_paths(
        [
            file_relative_path(__file__, "multi_location.yaml"),
            file_relative_path(__file__, "override_location.yaml"),
        ],
            python_user_process_api,
    ) as workspace:
        assert isinstance(workspace, Workspace)
        assert len(workspace.repository_location_handles) == 2
        assert workspace.has_repository_location_handle("loaded_from_file")
        assert workspace.has_repository_location_handle("loaded_from_module")

        # Ensure location `loaded_from_file` has been overridden
        external_repositories = sync_get_external_repositories(
            workspace.get_repository_location_handle("loaded_from_file"))
        assert len(external_repositories) == 1
        assert external_repositories[0].name == "extra_repository"