Jenkins Kubernetes: монтировать подпуть тома

Насколько я понял, kubernetes api позволяет монтировать подпуть pvc в контейнер в volumeMounts спец.

В моем примере я хочу установить ПВХ my-pvc, но в подкаталоге /my-subpath к /my-mount.

Итак, каталог /my-subpath на my-pvc будет установлен в контейнере под /my-mount.

При обычном использовании Kubernetes это выглядело бы следующим образом, если бы я понял документацию:

volumeMounts:
- mountPath: /my-mount
      name: my-pvc
      subPath: "my-subpath"

Моя проблема сейчас в том, что в плагине jenkins kubernetes это кажется невозможным.

Если я правильно понял документы, кажется, что можно смонтировать только корневой каталог, т.е./, ПВХ my-pvc к /my-mount в контейнере, так как нет subPath вариант:

Что-то мне не хватает, или это просто невозможно?

1 ответ

Это невозможно из-за доступных опций плагина Jenkins Kubernetes ATM. Но все же вы можете добиться этого, применив необработанный шаблон модуля в конфигурации облачного модуля Kubernetes.

Пример вывода

Started by user admin
Replayed #11
Running in Durability level: MAX_SURVIVABILITY
[Pipeline] Start of Pipeline
[Pipeline] podTemplate
[Pipeline] {
[Pipeline] node
Still waiting to schedule task
‘hello-docker-j0rk6’ is offline
Agent hello-docker-j0rk6 is provisioned from template hello-docker
---
apiVersion: "v1"
kind: "Pod"
metadata:
  annotations: {}
  labels:
    run: "hello-docker"
    jenkins: "slave"
    jenkins/label: "hello-docker"
  name: "hello-docker-j0rk6"
spec:
  containers:
  - command:
    - "cat"
    image: "jenkins/jnlp-slave:3.27-1-alpine"
    name: "hello-docker"
    resources: {}
    tty: true
    volumeMounts:
    - mountPath: "/app/logs"
      name: "tmp"
      subPath: "logs"
    - mountPath: "/home/jenkins/agent"
      name: "workspace-volume"
      readOnly: false
Другие вопросы по тегам