파이프라인을 실행하는 과정에서 podman-build 태스크가 실행조차 되지 않아 확인한 결과,more than one PersistentVolumeClaim is bound
라는 메시지를 표시하고 있었습니다.
testapp-config-00000-a3dip-podman-build-jk2gg:
pipelineTaskName: podman-build
status:
completionTime: '2023-02-07T08:23:05Z'
conditions:
- lastTransitionTime: '2023-02-07T08:23:05Z'
message: more than one PersistentVolumeClaim is bound
reason: TaskRunValidationFailed
jobs:
postSubmit:
- name: git-clone
tektonTask:
...
workspaces:
- name: output
workspace: s2i
- after:
- git-clone
name: podman-build
tektonTask:
...
workspaces:
- name: source
workspace: s2i
- name: build-pvc
workspace: build-pvc
workspaces:
...
- name: s2i
persistentVolumeClaim:
claimName: 'cicd-pvc-${APP_NAME}'
...
두 개 이상의 workspace에서 하나의 pvc를 사용하려고 해서 생기는 문제입니다.
git-clone 태스크에서 이미 s2i workspace ( cicd-pvc )를 사용했는데, podman-build 태스크에서 또 다시 s2i workspace ( cicd-pvc )를 사용하려고 하여 에러가 난 상황입니다.
kubectl edit cm -n tekton-pipelines feature-flags
---
apiVersion: v1
data:
disable-affinity-assistant: "false" ---> true로 변경
...
https://github.com/tektoncd/pipeline/issues/3480
https://stackoverflow.com/questions/70089769/tekton-task-fails-with-more-than-one-persistentvolumeclaim-is-bound