Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -62,10 +62,10 @@ def add_xcom_sidecar(
) -> k8s.V1Pod:
"""Add sidecar."""
pod_cp = copy.deepcopy(pod)
pod_cp.spec.volumes = pod.spec.volumes or []
pod_cp.spec.volumes.insert(0, PodDefaults.VOLUME)
pod_cp.spec.volumes = pod_cp.spec.volumes or []
pod_cp.spec.volumes.insert(0, copy.deepcopy(PodDefaults.VOLUME))
pod_cp.spec.containers[0].volume_mounts = pod_cp.spec.containers[0].volume_mounts or []
pod_cp.spec.containers[0].volume_mounts.insert(0, PodDefaults.VOLUME_MOUNT)
pod_cp.spec.containers[0].volume_mounts.insert(0, copy.deepcopy(PodDefaults.VOLUME_MOUNT))
sidecar = copy.deepcopy(PodDefaults.SIDECAR_CONTAINER)
sidecar.image = sidecar_container_image or PodDefaults.SIDECAR_CONTAINER.image
if sidecar_container_resources:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -69,3 +69,20 @@ def test_add_xcom_sidecar_empty_security_context():
def test_add_xcom_sidecar_does_not_mutate_shared_default():
add_xcom_sidecar(_base_pod(), sidecar_container_security_context={"readOnlyRootFilesystem": True})
assert PodDefaults.SIDECAR_CONTAINER.security_context is None


def test_add_xcom_sidecar_does_not_mutate_input_pod_volumes():
pod = _base_pod()
pod.spec.volumes = [k8s.V1Volume(name="data", empty_dir=k8s.V1EmptyDirVolumeSource())]

result = add_xcom_sidecar(pod)

assert [v.name for v in pod.spec.volumes] == ["data"]
assert [v.name for v in result.spec.volumes] == ["xcom", "data"]


def test_add_xcom_sidecar_copies_default_volume_and_mount():
result = add_xcom_sidecar(_base_pod())

assert result.spec.volumes[0] is not PodDefaults.VOLUME
assert result.spec.containers[0].volume_mounts[0] is not PodDefaults.VOLUME_MOUNT