From b3bfef5815623ba3e717540ce700b21d494fefe9 Mon Sep 17 00:00:00 2001 From: Yee Hing Tong Date: Tue, 20 Dec 2022 15:10:29 -0800 Subject: [PATCH] Remove project/domain from being overridden with execution values in serialized context (#1378) Signed-off-by: Yee Hing Tong --- flytekit/bin/entrypoint.py | 2 -- .../unit/bin/test_python_entrypoint.py | 18 ++++++++++++++++++ 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/flytekit/bin/entrypoint.py b/flytekit/bin/entrypoint.py index 1f8dd78ef0..3d5017675e 100644 --- a/flytekit/bin/entrypoint.py +++ b/flytekit/bin/entrypoint.py @@ -264,8 +264,6 @@ def setup_execution( if compressed_serialization_settings: ss = SerializationSettings.from_transport(compressed_serialization_settings) ssb = ss.new_builder() - ssb.project = exe_project - ssb.domain = exe_domain ssb.version = tk_version if dynamic_addl_distro: ssb.fast_serialization_settings = FastSerializationSettings( diff --git a/tests/flytekit/unit/bin/test_python_entrypoint.py b/tests/flytekit/unit/bin/test_python_entrypoint.py index c8d1d93cbd..479ad9e7bd 100644 --- a/tests/flytekit/unit/bin/test_python_entrypoint.py +++ b/tests/flytekit/unit/bin/test_python_entrypoint.py @@ -1,3 +1,4 @@ +import os import typing from collections import OrderedDict @@ -5,6 +6,7 @@ from flyteidl.core.errors_pb2 import ErrorDocument from flytekit.bin.entrypoint import _dispatch_execute, normalize_inputs, setup_execution +from flytekit.configuration import Image, ImageConfig, SerializationSettings from flytekit.core import context_manager from flytekit.core.base_task import IgnoreOutputs from flytekit.core.data_persistence import DiskPersistence @@ -290,6 +292,22 @@ def test_setup_cloud_prefix(): assert isinstance(ctx.file_access._default_remote, GCSPersistence) +def test_persist_ss(): + default_img = Image(name="default", fqn="test", tag="tag") + ss = SerializationSettings( + project="proj1", + domain="dom", + version="version123", + env=None, + image_config=ImageConfig(default_image=default_img, images=[default_img]), + ) + ss_txt = ss.serialized_context + os.environ["_F_SS_C"] = ss_txt + with setup_execution("s3://", checkpoint_path=None, prev_checkpoint=None) as ctx: + assert ctx.serialization_settings.project == "proj1" + assert ctx.serialization_settings.domain == "dom" + + def test_normalize_inputs(): assert normalize_inputs("{{.rawOutputDataPrefix}}", "{{.checkpointOutputPrefix}}", "{{.prevCheckpointPrefix}}") == ( None,