1.2. Git 리포지토리에 대한 인증
Git 리포지토리에 대해 다음과 같은 인증 유형을 정의할 수 있습니다.
- 기본 인증
- SSH(Secure Shell) 인증
Build
CR에서 두 가지 유형의 인증을 사용하여 Git 보안을 구성할 수도 있습니다.
1.2.1. 기본 인증
기본 인증을 사용하여 Git 리포지토리의 사용자 이름과 암호를 구성해야 합니다. 다음 예제에서는 Git에 대한 기본 인증을 사용하는 방법을 보여줍니다.
apiVersion: v1 kind: Secret metadata: name: secret-git-basic-auth annotations: build.shipwright.io/referenced.secret: "true" type: kubernetes.io/basic-auth 1 stringData: 2 username: <cleartext_username> password: <cleartext_password>
1.2.2. SSH 인증
SSH 인증을 사용하면 사용할 Git 리포지토리 공급자의 호스트 이름을 지정하도록 Tekton 주석을 구성해야 합니다. 예를 들어 GitHub의 경우 github.com
또는 GitLab 의 경우 github.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 1 data: ssh-privatekey: | 2 # Insert ssh private key, base64 encoded
1.2.3. Git 시크릿 사용
관련 네임스페이스에 보안을 생성한 후 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
다음 예제에서는 기본 인증 유형을 사용하여 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