如何将秘密链接到 OpenShift 模板中的默认管道 ServiceAccount?

问题描述

目前我正在尝试确保默认管道帐户能够在 Tekton 管道中执行 git-clone ClusterTask。使用以下 yaml,可以成功执行任务(repo 被拉取):

apiVersion: v1
kind: ServiceAccount
metadata:
  name: pipeline
secrets
  - name: git-secret

但是,当我在 OpenShift 模板中使用相同的配置时,例如:

apiVersion: v1
kind: Template
metadata:
  name: test-template
objects:
  - apiVersion: v1
    kind: Secret
    type: kubernetes.io/ssh-auth
    metadata:
      name: git-secret
      annotations:
        tekton.dev/git-0: bitbucket.org
    data:
      ssh-privatekey: ${GIT_SSH_KEY}

  - apiVersion: v1
    kind: ServiceAccount
    metadata:
      name: pipeline
    secrets
      - name: git-secret

该密钥未与 ServiceAccount 关联,因此拉取失败。我试图给这个秘密加上以下注释:

kubernetes.io/service-account.name: pipeline

但这也无济于事。在模板中创建新的 ServiceAccount(例如 pipeline-with-secret)时,一切正常。此外,当手动链接秘密时,它也能很好地工作。但是,我更愿意让模板正确设置链接,以避免必须手动进行链接。这让我想知道:是否可以将机密链接到默认创建的 ServiceAccount?

OpenShift 版本:4.5.19

谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)