Menu Close
4.12. git シークレットを使用したパイプラインの認証
Git シークレットは、Git リポジトリーと安全に対話するための認証情報で構成されており、認証の自動化に使用されることが多いです。Red Hat OpenShift Pipelines では、Git シークレットを使用して、実行時に Git リポジトリーと対話するパイプライン実行およびタスク実行を認証できます。
パイプライン実行またはタスク実行は、関連付けられたサービスアカウントを介してシークレットにアクセスできます。Pipeline は、Git シークレットの Basic 認証および SSH ベースの認証のアノテーション(キーと値のペア)としての使用をサポートします。
4.12.1. 認証情報の選択
パイプライン実行またはタスク実行には、異なる Git リポジトリーにアクセスするために複数の認証が必要になる場合があります。Pipeline がその認証情報を使用できるドメインで各シークレットにアノテーションを付けます。
Git シークレットの認証情報アノテーションキーは tekton.dev/git-
で開始する必要があり、その値は Pipeline がその認証情報を使用するホストの URL になります。
以下の例では、Pipeline はユーザー名とパスワードに依存する basic-auth
シークレットを使用して github.com
および gitlab.com
のリポジトリーにアクセスします。
例: Basic 認証用の複数の認証情報
apiVersion: v1 kind: Secret metadata: annotations: tekton.dev/git-0: github.com tekton.dev/git-1: gitlab.com type: kubernetes.io/basic-auth stringData: username: 1 password: 2
ssh-auth
シークレット(秘密鍵)を使用して Git リポジトリーにアクセスすることもできます。
例: SSH ベースの認証の秘密鍵
apiVersion: v1
kind: Secret
metadata:
annotations:
tekton.dev/git-0: https://github.com
type: kubernetes.io/ssh-auth
stringData:
ssh-privatekey: 1
- 1
- SSH 秘密鍵の文字列を含むファイルの名前。