首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Tekton挂载路径工作区问题.路径错误

Tekton挂载路径工作区问题.路径错误
EN

Stack Overflow用户
提问于 2021-06-11 14:32:59
回答 1查看 523关注 0票数 0

目前,我正在尝试部署图腾-你好-世界。我已经为同样的脚本编写了一个脚本,但是它并不像它应该的那样工作。我确信这个问题与工作空间有关。

更新这里是我的task-tutum-deploy.yaml代码-

代码语言:javascript
复制
apiVersion: tekton.dev/v1beta1
kind: Task
metadata:
  name: tutum-deploy
spec:
  steps:
    - name: tutum-deploy
      image: bitnami/kubectl
      script: |
        kubectl apply -f /root/tekton-scripts/tutum-deploy.yaml
  workspaces:
    - name: messages
      optional: true
      mountPath: /root/tekton-scripts/

错误-

代码语言:javascript
复制
root@master1:~/tekton-scripts# tkn taskrun logs tutum-deploy-run-8sq8s -f -n default
[tutum-deploy] + kubectl apply -f /root/tekton-scripts/tutum-deploy.yaml
[tutum-deploy] error: the path "/root/tekton-scripts/tutum-deploy.yaml" cannot be accessed: stat /root/tekton-scripts/tutum-deploy.yaml: permission denied

container step-tutum-deploy has failed  : [{"key":"StartedAt","value":"2021-06-14T12:54:01.096Z","type":"InternalTektonResult"}]

PS -我已经将我的脚本放在- /root/tekton-scripts/tutum-deploy.yaml的主节点上。

代码语言:javascript
复制
root@master1:~/tekton-scripts# ls -l tutum-deploy.yaml 
-rwxrwxrwx 1 root root 626 Jun 11 11:31 tutum-deploy.yaml

旧脚本

这是我的task-tutum-deploy.yaml代码-

代码语言:javascript
复制
apiVersion: tekton.dev/v1beta1
kind: Task
metadata:
  name: tutum-deploy
spec:
  workspaces:
    - name: messages
      optional: true
      mountPath: /root/tekton-scripts/tutum-deploy.yaml
  steps:
    - name: tutum-deploy
      image: bitnami/kubectl
      command: ["kubectl"]
      args:
        - "apply"
        - "-f"
        - "./tutum-deploy.yaml"

下面是我的tutum-deploy.yaml代码,它存在于具有读写和执行权限的Kubernetes集群的机器(主节点)上-

代码语言:javascript
复制
apiVersion: apps/v1
kind: Deployment
metadata:
  name: hello-world-tutum
  labels:
    service: hello-world-tutum
spec:
  replicas: 1
  selector:
    matchLabels:
      service: hello-world-tutum
  template:
    metadata:
      labels:
        service: hello-world-tutum
    spec:
      containers:
      - name: tutum-hello-world
        image: tutum/hello-world:latest
        ports:
        - containerPort: 80

---
apiVersion: v1
kind: Service
metadata:
  name: hello-world-tutum
spec:
  type: NodePort
  selector:
    service: hello-world-tutum
  ports:
  - name: "80"
    port: 80
    targetPort: 80
    nodePort: 30050

我从Kubernetes集群的主节点运行了以下命令-

代码语言:javascript
复制
1. kubectl apply -f task-tutum-deploy.yaml

2. tkn task start tutum-deploy

错误-

使用tekton命令- $ tkn taskrun logs tutum-deploy-run-tvlll -f -n default

代码语言:javascript
复制
task tutum-deploy has failed: "step-tutum-deploy" exited with code 1 (image: "docker-pullable://bitnami/kubectl@sha256:b83299ee1d8657ab30fb7b7925b42a12c613e37609d2b4493b4b27b057c21d0f"); for logs run: kubectl -n default logs tutum-deploy-run-tvlll-pod-vbl5g -c step-tutum-deploy

[tutum-deploy] error: the path "./tutum-deploy.yaml" does not exist

container step-tutum-deploy has failed  : [{"key":"StartedAt","value":"2021-06-11T14:01:49.786Z","type":"InternalTektonResult"}]
EN

回答 1

Stack Overflow用户

发布于 2021-06-11 22:11:56

错误来自YAML的这一部分:

代码语言:javascript
复制
spec:
  workspaces:
    - name: messages
      optional: true
      mountPath: /root/tekton-scripts/tutum-deploy.yaml

spec.workspaces.mountPath需要一个目录,而不是您在这里指定的文件。您的意思可能是/root/tekton-scripts/,但我不熟悉tutum-hello-world

如果您查看文献资料,您将看到所有对mountPath的引用都是目录而不是文件。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67938888

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档