1.2. Git リポジトリーへの認証
Git リポジトリーに対して次のタイプの認証を定義できます。
- Basic 認証
- セキュアシェル (SSH) 認証
Build CR で両方のタイプの認証を使用して Git シークレットを設定することもできます。
1.2.1. Basic 認証 リンクのコピーリンクがクリップボードにコピーされました!
Basic 認証では、Git リポジトリーのユーザー名とパスワードを設定する必要があります。以下の例は、Git の Basic 認証の使用方法を示しています。
apiVersion: v1
kind: Secret
metadata:
name: secret-git-basic-auth
annotations:
build.shipwright.io/referenced.secret: "true"
type: kubernetes.io/basic-auth
stringData:
username: <plaintext_username>
password: <plaintext_password>
1.2.2. SSH 認証 リンクのコピーリンクがクリップボードにコピーされました!
SSH 認証では、使用する Git リポジトリープロバイダーのホスト名を指定するように Tekton アノテーションを設定する必要があります。たとえば、GitHub の場合は github.com、GitLab の場合は gitlab.com です。
以下の例は、Git での SSH 認証の使用方法を示しています。
apiVersion: v1
kind: Secret
metadata:
name: secret-git-ssh-auth
annotations:
build.shipwright.io/referenced.secret: "true"
type: kubernetes.io/ssh-auth
data:
ssh-privatekey: |
# Insert ssh private key, base64 encoded
1.2.3. Git シークレットの使用 リンクのコピーリンクがクリップボードにコピーされました!
関連する namespace でシークレットを作成したら、そのシークレットを Build カスタムリソース (CR) で参照できます。両方のタイプの認証で Git シークレットを設定できます。
次の例は、SSH 認証タイプでの Git シークレットの使用法を示しています。
apiVersion: shipwright.io/v1beta1
kind: Build
metadata:
name: buildah-golang-build
spec:
source:
git:
url: git@gitlab.com:userjohn/newtaxi.git
cloneSecret: secret-git-ssh-auth
以下の例は、Basic 認証タイプでの Git シークレットの使用法を示しています。
apiVersion: shipwright.io/v1beta1
kind: Build
metadata:
name: buildah-golang-build
spec:
source:
git:
url: https://gitlab.com/userjohn/newtaxi.git
cloneSecret: secret-git-basic-auth