如何通过tkn CLI传递VolumeClaimTemplate并在PipelineRun中使用
如何通过Tekton CLI动态创建PVC代替指定已存在PVC
完全可以通过CLI指定存储参数,让Tekton在创建PipelineRun时自动动态生成PVC及对应的PV,你当前的错误是因为参数使用方式有误。
错误原因
你命令里的claimName=VolumeClaimTemplate是告诉Tekton去引用一个已存在的PersistentVolumeClaim,但这个PVC并不存在,所以Pod调度时会提示找不到该资源。
正确的CLI命令
去掉claimName参数,直接指定动态创建PVC所需的存储配置参数(注意参数是size而非你之前写的storage):
tkn pipeline start run-tests-portal-with-report --showlog \ -w name=shared-data,storageClassName=default-netapp-disk,accessModes=ReadWriteOnce,size=1Gi,volumeMode=Filesystem \ -w name=git-credentials,secret=gh-token \ -p repo-url=https://github.com/my-project-url \ -p revision=PRJT-123
关键说明
- 当不为工作区指定
claimName,而是提供storageClassName、accessModes、size这些参数时,Tekton会自动创建一个临时PVC,绑定匹配的PV供PipelineRun使用 - 默认情况下,PipelineRun完成后,这个临时PVC会被自动删除(可通过修改PipelineRun的保留策略调整)
- 请确认
default-netapp-disk存储类存在且能正常动态供应PV,否则仍会出现调度错误
内容的提问来源于stack exchange,提问作者3learner
相关产品推荐
相关产品推荐

