1장. OpenShift Pipelines와 함께 Tekton Hub 사용
Tekton Hub는 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.
Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.
Tekton Hub를 사용하면 CI/CD 워크플로에 대해 재사용 가능한 작업과 파이프라인을 검색, 검색 및 공유할 수 있습니다. Tekton Hub의 공용 인스턴스는 hub.tekton.dev 에서 사용할 수 있습니다. 클러스터 관리자는 TektonHub
CR(사용자 정의 리소스)의 구성을 수정하여 Tekton Hub의 사용자 정의 인스턴스를 설치하고 배포할 수도 있습니다.
1.1. OpenShift Container Platform 클러스터에 Tekton Hub 설치 및 배포 링크 복사링크가 클립보드에 복사되었습니다!
Tekton Hub는 선택적 구성 요소입니다. 클러스터 관리자는 TektonConfig
CR(사용자 정의 리소스)을 사용하여 설치할 수 없습니다. Tekton Hub를 설치하고 관리하려면 TektonHub
CR을 사용합니다.
다음 두 가지 모드를 사용하여 클러스터에 Tekton Hub를 설치할 수 있습니다.
- 로그인 인증 없이 Tekton Hub 아티팩트에 대한 등급
- Tekton Hub 아티팩트에 대한 로그인 권한 부여 및 등급 사용
Github Enterprise 또는 Gitlab Enterprise를 사용하는 경우 엔터프라이즈 서버와 동일한 네트워크에 Tekton Hub를 설치 및 배포합니다. 예를 들어 엔터프라이즈 서버가 VPN 뒤에서 실행 중인 경우 VPN 뒤의 클러스터에 Tekton Hub를 배포합니다.
1.1.1. 로그인 및 평가 없이 Tekton Hub 설치 링크 복사링크가 클립보드에 복사되었습니다!
기본 구성으로 클러스터에 Tekton Hub를 자동으로 설치할 수 있습니다. 기본 구성을 사용하는 경우 Tekton Hub는 Tekton Hub 아티팩트에 대한 권한 부여 및 등급으로 로그인할 수 없습니다.
사전 요구 사항
-
Red Hat OpenShift Pipelines Operator가 클러스터의 기본
openshift-pipelines
네임스페이스에 설치되어 있는지 확인합니다.
프로세스
다음 예와 유사한
TektonHub
CR을 생성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고TektonHub
CR에서 선택적 필드에 사용자 정의 값을 제공하지 않으면 Tekton Hub API 구성 맵에 구성된 기본값이 사용됩니다.TektonHub
CR을 적용합니다.oc apply -f <tekton-hub-cr>.yaml
$ oc apply -f <tekton-hub-cr>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 설치 상태를 확인합니다.
TektonHub
CR은 안정적인 상태를 유지하는 데 약간의 시간이 걸릴 수 있습니다.oc get tektonhub.operator.tekton.dev
$ oc get tektonhub.operator.tekton.dev
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 샘플 출력
NAME VERSION READY REASON APIURL UIURL hub v1.9.0 True https://api.route.url/ https://ui.route.url/
NAME VERSION READY REASON APIURL UIURL hub v1.9.0 True https://api.route.url/ https://ui.route.url/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.1.2. 로그인 및 평가를 사용하여 Tekton Hub 설치 링크 복사링크가 클립보드에 복사되었습니다!
Tekton Hub 아티팩트에 대한 권한 부여 및 등급을 사용한 로그인을 지원하는 사용자 정의 구성으로 클러스터에 Tekton Hub를 설치할 수 있습니다.
사전 요구 사항
-
Red Hat OpenShift Pipelines Operator가 클러스터의 기본
openshift-pipelines
네임스페이스에 설치되어 있는지 확인합니다.
프로세스
Git 리포지토리 호스팅 공급자를 사용하여 OAuth 애플리케이션을 생성하고 클라이언트 ID 및 클라이언트 시크릿을 기록해 둡니다. 지원되는 공급자는 GitHub, GitLab, Bitbucket입니다.
-
GitHub OAuth 애플리케이션 의 경우 Homepage URL과 인증 콜백 URL을 <
auth-route>로 설정합니다
. -
GitLab OAuth 애플리케이션 의 경우
REDIRECT_URI
를 <auth-route>/auth/gitlab/callback
으로 설정합니다. -
Bitbucket OAuth 애플리케이션 의 경우
콜백 URL
을 <auth-route>로 설정합니다
.
-
GitHub OAuth 애플리케이션 의 경우 Homepage URL과 인증 콜백 URL을 <
Tekton Hub API 시크릿을 포함하도록 <
tekton_hub_root>/config/02-api/20-api-secret.yaml
파일을 편집합니다. 예를 들면 다음과 같습니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- GitHub OAuth 애플리케이션의 클라이언트 ID입니다.
- 2
- GitHub OAuth 애플리케이션의 클라이언트 시크릿.
- 3
- GitLab OAuth 애플리케이션의 클라이언트 ID입니다.
- 4
- GitLab OAuth 애플리케이션의 클라이언트 시크릿입니다.
- 5
- Bitbucket OAuth 애플리케이션의 클라이언트 ID입니다.
- 6
- Bitbucket OAuth 애플리케이션의 클라이언트 시크릿입니다.
- 7
- 사용자를 위해 생성된 JSON 웹 토큰(JWT)에 서명하는 데 사용되는 긴 임의 문자열입니다.
- 8
- 액세스 토큰이 만료된 후 시간 제한을 추가합니다. 예를 들어
1m
에서는 m은 분을 나타냅니다. 지원되는 시간 단위는 초(s
), 분(m
), 시간(h
), 일(d
) 및 주(w
)입니다. - 9
- 새로 고침 토큰이 만료된 후 시간 제한을 추가합니다. 예를 들어
1m
에서는m
은 분을 나타냅니다. 지원되는 시간 단위는 초(s
), 분(m
), 시간(h
), 일(d
) 및 주(w
)입니다. 토큰 새로 고침에 설정된 만료 시간이 토큰 액세스에 설정된 만료 시간보다 큰지 확인합니다. - 10
- OAuth 애플리케이션의 경로 URL입니다.
- 11
- GitHub Enterprise URL(GitHub Enterprise을 사용하여 인증하는 경우). 이 필드의 값으로 카탈로그에 URL을 지정하지 마십시오.
- 12
- GitLab Enterprise를 사용하여 인증하는 경우 GitLab Enterprise URL입니다. 이 필드의 값으로 카탈로그에 URL을 지정하지 마십시오.
참고배포와 관련이 없는 Git 리포지토리 호스팅 서비스 공급자에 대해 사용되지 않는 필드를 삭제할 수 있습니다.
다음 예와 유사한
TektonHub
CR을 생성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Tekton Hub를 설치해야 하는 네임스페이스입니다. 기본값은
openshift-pipelines
입니다. - 2
- 선택 사항: Crunchy Postgres 데이터베이스와 같은 사용자 지정 데이터베이스.
- 3
- 데이터베이스 시크릿의 이름은
tekton-hub-db
여야 합니다. - 4
- 선택사항: Tekton Hub의 작업 및 파이프라인에 대한 사용자 지정 카테고리입니다.
- 5
- 선택사항: Tekton Hub에 대해 사용자 지정된 카탈로그입니다.
- 6
- 선택 사항: 추가 사용자.
[<username_1>, <username_2>, <username_3>]
과 같은 여러 사용자를 사용할 수 있습니다. - 7
- 선택사항: 사용자 지정된 기본 범위입니다.
- 8
- 카탈로그를 자동으로 새로 고치는 시간 간격입니다. 지원되는 시간 단위는 초(
s
), 분(m
), 시간(h
), 일(d
) 및 주(w
)입니다. 기본 간격은 30분입니다.
참고TektonHub
CR에서 선택적 필드에 사용자 정의 값을 제공하지 않으면 Tekton Hub API 구성 맵에 구성된 기본값이 사용됩니다.TektonHub
CR을 적용합니다.oc apply -f <tekton-hub-cr>.yaml
$ oc apply -f <tekton-hub-cr>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 설치 상태를 확인합니다.
TektonHub
CR은 안정적인 상태를 유지하는 데 약간의 시간이 걸릴 수 있습니다.oc get tektonhub.operator.tekton.dev
$ oc get tektonhub.operator.tekton.dev
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 샘플 출력
NAME VERSION READY REASON APIURL UIURL hub v1.9.0 True https://api.route.url/ https://ui.route.url/
NAME VERSION READY REASON APIURL UIURL hub v1.9.0 True https://api.route.url/ https://ui.route.url/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow