Mount temporary directory

You can run a task run the KubernetesPodOperator that uses your Deployment’s ephemeral storage, mount an emptyDir volume to the KubernetesPodOperator.

Prerequisites

Setup

1

Mount an emptyDir volume

Add the following code example to your your KubernetesPodOperator configuration.

1from airflow.configuration import conf
2from airflow.providers.cncf.kubernetes.operators.kubernetes_pod import KubernetesPodOperator
3from kubernetes.client import models as k8s
4
5volume = k8s.V1Volume(
6 name="cache-volume",
7 emptyDir={},
8)
9
10volume_mounts = [
11 k8s.V1VolumeMount(
12 mount_path="/cache", name="cache-volume"
13 )
14]
15
16example_volume_test = KubernetesPodOperator(
17 namespace=namespace,
18 image="<your-docker-image>",
19 cmds=["<commands-for-image>"],
20 arguments=["<arguments-for-image>"],
21 labels={"<pod-label>": "<label-name>"},
22 name="<pod-name>",
23 task_id="<task-name>",
24 get_logs=True,
25 in_cluster=True,
26 volume_mounts=volume_mounts,
27 volumes=[volume],
28)