K8s runner pipeline mounting external volumes

The yaml configuration you posted for mounting volumes looks correct to me. For reference, you can see a sample yaml configuration that we use in our integration tests here [1]. I feel like you could definitively test whether or not drone is mounting the volume with the below pipeline:

kind: pipeline
type: kubernetes
name: default

steps:
  - name: write
    image: alpine
    commands:
      - echo "hello" > /root/.ivy2/greetings.txt
    volumes:
      - name: cache
        path: /root/.ivy2

  - name: read
    image: alpine
    commands:
      - ls -la /root/.ivy2
      - cat /root/.ivy2/greetings.txt
    volumes:
      - name: cache
        path: /root/.ivy2

volumes:
  - name: cache
    host:
       path: /opt/drone/cache

However, please note that the above mounts a host volume, not a persistent volume claim. I believe configuring a persistent volume claim requires different syntax than mounting a host volume.

[1] https://github.com/drone-runners/drone-runner-kube/blob/master/samples/volume_host.yml

If we configure the extra volume mounts in the drone server deployment, notice the same thing.

I’m not sure I fully understand, since the Drone server does not have any configuration options that relate to kubernetes or volume mounting.