• Русский
  • Использование Git Connector в Tekton Task

    Использование Git Connector в Tekton Tasks позволяет централизованно управлять информацией об интеграции инструментов и обеспечивать безопасный доступ к Git-репозиториям во время выполнения Tekton Task. В настоящее время Git Connector поддерживает только метод аутентификации BasicAuth и не поддерживает SSH-аутентификацию.

    Требования к Tekton Task

    Не все Tekton Tasks могут использовать Git Connector.

    Git Connector по сути внедряет временные Git-учётные данные через CSI Driver. Он предоставляет конфигурацию с именем gitconfig, которая генерирует файл .gitconfig с временными настройками аутентификации и переписывания URL. Например:

    [http]
        extraHeader = Authorization: Basic OmV5Smhixxxxxxxxx==
    [url "http://c-git-connector.git-connector-demo.svc]
        insteadOf = https://github.com

    Поэтому Tekton Tasks должны удовлетворять следующему требованию для использования Git Connector:

    Поддержка монтирования файла .gitconfig через Workspace, при этом Workspace должен поддерживать предоставление только файла .gitconfig

    Инструкция по использованию

    После подтверждения, что ваш Tekton Task может использовать Git Connector, вы можете добавить конфигурацию Git Connector в YAML-файл TaskRun:

    Например:

    apiVersion: tekton.dev/v1
    kind: TaskRun
    metadata:
      name: git-clone-demo
    spec:
      # .  . .
      workspaces:
      - name: basic-auth
        csi:
          driver: connectors-csi
          readOnly: true
          volumeAttributes:
            connector.name: github
            connector.namespace: ""
            configuration.names: "gitconfig"

    Описание параметров:

    • name: Имя Workspace, определённое в Task
    • csi:
      • driver: Фиксированное значение connectors-csi
      • readOnly: Фиксированное значение true
      • volumeAttributes: Атрибуты CSI Volume
        • connector.name: Имя Git Connector
        • connector.namespace: Namespace Git Connector; если не указано, используется namespace TaskRun
        • configuration.names: Имя конфигурации, фиксированное как gitconfig, которая сгенерирует файл .gitconfig в директории $(workspaces.basic-auth.path)

    Для получения дополнительной информации, пожалуйста, обратитесь к Connectors CSI Configuration.

    Дополнительные материалы