spec.volumes[1].name: Duplicate value: "workspace-volume"

9/18/2019

I'm using jenkins to start my builds in a kubernetes cluster via the kubernetes plugin. When trying to set my jenkins workspace-volume to medium: Memory so that it runs in RAM, I receive the following error:

spec.volumes[1].name: Duplicate value: "workspace-volume"

This is the corresponding yaml:

apiVersion: v1
kind: Pod
metadata:
  name: jenkins-job-xyz
  labels:
    identifier: jenkins-job-xyz
spec:
  restartPolicy: Never
  containers:
  - name: jnlp
    image: 'jenkins/jnlp-slave:alpine'
    volumeMounts:
    - name: workspace-volume
      mountPath: /home/jenkins
  - name: maven
    image: maven:latest
    imagePullPolicy: Always
    volumeMounts:
    - name: workspace-volume
      mountPath: /home/jenkins
  volumes:
    - name: workspace-volume
      emptyDir:
        medium: Memory

The only thing I added is the volumes: part at the end.

-- Marty
jenkins
kubernetes

1 Answer

9/18/2019

The volume workspace-volume is auto-generated by the kubernetes plugin and so a manual declaration will result in a duplicate entry.

For running the workspace-volume in RAM, set

workspaceVolume: emptyDirWorkspaceVolume(memory: true)

inside the podTemplate closure according to the documentation.

-- Marty
Source: StackOverflow