Differential D4918 Diff 25032 python_modules/dagster-test/dagster_test/dagster_core_docker_buildkite/__init__.py
Changeset View
Changeset View
Standalone View
Standalone View
python_modules/dagster-test/dagster_test/dagster_core_docker_buildkite/__init__.py
import os | import os | ||||
import subprocess | import subprocess | ||||
import sys | import sys | ||||
from dagster import check | from dagster import check | ||||
from dagster.core.definitions.reconstructable import ReconstructableRepository | from dagster.core.definitions.reconstructable import ReconstructableRepository | ||||
from dagster.core.host_representation import InProcessRepositoryLocation | from dagster.core.host_representation import ( | ||||
InProcessRepositoryLocationOrigin, | |||||
RepositoryLocation, | |||||
RepositoryLocationHandle, | |||||
) | |||||
from dagster.utils import file_relative_path, git_repository_root | from dagster.utils import file_relative_path, git_repository_root | ||||
IS_BUILDKITE = os.getenv("BUILDKITE") is not None | IS_BUILDKITE = os.getenv("BUILDKITE") is not None | ||||
def test_repo_path(): | def test_repo_path(): | ||||
return os.path.join( | return os.path.join( | ||||
git_repository_root(), | git_repository_root(), | ||||
Show All 18 Lines | def build_and_tag_test_image(tag): | ||||
# Build and tag local dagster test image | # Build and tag local dagster test image | ||||
return subprocess.check_output( | return subprocess.check_output( | ||||
["../../build_core.sh", base_python, tag], cwd=test_repo_path(), stderr=subprocess.STDOUT | ["../../build_core.sh", base_python, tag], cwd=test_repo_path(), stderr=subprocess.STDOUT | ||||
) | ) | ||||
def get_test_project_external_pipeline(pipeline_name): | def get_test_project_external_pipeline(pipeline_name): | ||||
return ( | return ( | ||||
InProcessRepositoryLocation( | RepositoryLocation.from_handle( | ||||
RepositoryLocationHandle.create_from_repository_location_origin( | |||||
InProcessRepositoryLocationOrigin( | |||||
ReconstructableRepository.for_file( | ReconstructableRepository.for_file( | ||||
file_relative_path(__file__, "test_pipelines/repo.py"), | file_relative_path(__file__, "test_pipelines/repo.py"), | ||||
"define_demo_execution_repo", | "define_demo_execution_repo", | ||||
) | ) | ||||
) | ) | ||||
) | |||||
) | |||||
.get_repository("demo_execution_repo") | .get_repository("demo_execution_repo") | ||||
.get_full_external_pipeline(pipeline_name) | .get_full_external_pipeline(pipeline_name) | ||||
) | ) | ||||
def get_default_docker_image_tag(): | def get_default_docker_image_tag(): | ||||
# Detect the python version we're running on | # Detect the python version we're running on | ||||
majmin = str(sys.version_info.major) + str(sys.version_info.minor) | majmin = str(sys.version_info.major) + str(sys.version_info.minor) | ||||
Show All 19 Lines | def test_project_docker_image(): | ||||
if not docker_image_tag: | if not docker_image_tag: | ||||
docker_image_tag = get_default_docker_image_tag() | docker_image_tag = get_default_docker_image_tag() | ||||
final_docker_image = "{repository}{image_name}:{tag}".format( | final_docker_image = "{repository}{image_name}:{tag}".format( | ||||
repository="{}/".format(docker_repository) if docker_repository else "", | repository="{}/".format(docker_repository) if docker_repository else "", | ||||
image_name=image_name, | image_name=image_name, | ||||
tag=docker_image_tag, | tag=docker_image_tag, | ||||
) | ) | ||||
print("Using Docker image: %s" % final_docker_image) | print("Using Docker image: %s" % final_docker_image) # pylint: disable=print-call | ||||
return final_docker_image | return final_docker_image |