A shared mountpoint can be useful in Drone pipelines when you want to share data or files between different pipeline steps or between the pipeline and the host machine. To use a shared mountpoint in your Drone pipelines, you can follow these steps:
- Create a Kubernetes persistent volume:
You can use a Kubernetes persistent volume to create a shared mountpoint that can be accessed by different pipeline steps. Here’s an example persistent volume manifest:
apiVersion: v1
kind: PersistentVolume
metadata:
name: shared-data
spec:
accessModes:
- ReadWriteOnce
capacity:
storage: 1Gi
hostPath:
path: /mnt/shared-data
In this example, the persistent volume is created using a hostPath that points to a directory on the host machine (/mnt/shared-data).
- Create a Kubernetes persistent volume claim:
You can use a Kubernetes persistent volume claim to request a persistent volume and use it as a shared mountpoint in your pipeline steps. Here’s an example persistent volume claim manifest:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: shared-data-claim
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
volumeName: shared-data
In this example, the persistent volume claim requests a persistent volume of size 1Gi with ReadWriteOnce access mode and specifies the name of the persistent volume created in the previous step.
- Mount the shared mountpoint in your pipeline steps:
You can mount the shared mountpoint in your pipeline steps by specifying the persistent volume claim as a volume and using it in your container’s volume mounts. Here’s an example pipeline step manifest:
kind: pipeline
name: my-pipeline
steps:
- name: step1
image: alpine
commands:
- echo "Hello from step1!"
volumeMounts:
- name: shared-data
mountPath: /mnt/shared-data
- name: step2
image: alpine
commands:
- echo "Hello from step2!"
volumeMounts:
- name: shared-data
mountPath: /mnt/shared-data
volumes:
- name: shared-data
persistentVolumeClaim:
claimName: shared-data-claim
In this example, the shared mountpoint is mounted in both pipeline steps by specifying the name of the persistent volume claim as a volume in the pipeline and using it in the container’s volume mounts.
By using a shared mountpoint in your Drone pipelines, you can easily share data or files between different pipeline steps or between the pipeline and the host machine.