def test_docker_serialize_with_flows(): docker = storage.Docker(registry_url="url", image_name="name", image_tag="tag") f = prefect.Flow("test") docker.add_flow(f) serialized = DockerSchema().dump(docker) assert serialized assert serialized["__version__"] == prefect.__version__ assert serialized["image_name"] == "name" assert serialized["image_tag"] == "tag" assert serialized["registry_url"] == "url" assert serialized["flows"] == {"test": "/root/.prefect/flows/test.prefect"} deserialized = DockerSchema().load(serialized) assert f.name in deserialized
def test_docker_empty_serialize(): docker = storage.Docker() serialized = DockerSchema().dump(docker) assert serialized assert serialized["__version__"] == prefect.__version__ assert not serialized["image_name"] assert not serialized["image_tag"] assert not serialized["registry_url"]
def test_docker_full_serialize(): docker = storage.Docker(registry_url="url", image_name="name", image_tag="tag") serialized = DockerSchema().dump(docker) assert serialized assert serialized["__version__"] == prefect.__version__ assert serialized["image_name"] == "name" assert serialized["image_tag"] == "tag" assert serialized["registry_url"] == "url" assert serialized["flows"] == dict()
def test_docker_serialize_with_flow_and_custom_prefect_dir(): docker = storage.Docker( registry_url="url", image_name="name", image_tag="tag", secrets=["FOO"], prefect_directory="/tmp/something", ) f = prefect.Flow("test") docker.add_flow(f) serialized = DockerSchema().dump(docker) assert serialized assert serialized["__version__"] == prefect.__version__ assert serialized["image_name"] == "name" assert serialized["image_tag"] == "tag" assert serialized["registry_url"] == "url" assert serialized["flows"] == {"test": "/tmp/something/flows/test.prefect"} assert serialized["secrets"] == ["FOO"] deserialized = DockerSchema().load(serialized) assert f.name in deserialized assert deserialized.secrets == ["FOO"]
def test_docker_full_serialize(): docker = storage.Docker( registry_url="url", image_name="name", image_tag="tag", prefect_version="0.5.2", secrets=["bar", "creds"], ) serialized = DockerSchema().dump(docker) assert serialized assert serialized["__version__"] == prefect.__version__ assert serialized["image_name"] == "name" assert serialized["image_tag"] == "tag" assert serialized["registry_url"] == "url" assert serialized["flows"] == dict() assert serialized["prefect_version"] == "0.5.2" assert serialized["secrets"] == ["bar", "creds"]