1.12. GitHub Interceptor에서 가져오기 요청 기능 구성
GitHub Interceptor를 사용하면 GitHub Webhook의 유효성을 검사하고 필터링하는 논리를 생성할 수 있습니다. 예를 들어 Webhook의 출처를 확인하고 지정된 기준에 따라 들어오는 이벤트를 필터링할 수 있습니다. GitHub Interceptor를 사용하여 이벤트 데이터를 필터링하면 인터셉터가 필드에서 수락할 수 있는 이벤트 유형을 지정할 수 있습니다. Red Hat OpenShift Pipelines에서는 GitHub 인터셉터의 다음과 같은 기능을 사용할 수 있습니다.
- 변경된 파일을 기반으로 가져오기 요청 이벤트를 필터링
- 구성된 GitHub 소유자를 기반으로 가져오기 요청 검증
1.12.1. GitHub Interceptor를 사용하여 가져오기 요청 필터링 링크 복사링크가 클립보드에 복사되었습니다!
푸시 및 가져오기 이벤트를 위해 변경된 파일을 기반으로 GitHub 이벤트를 필터링할 수 있습니다. 이를 통해 Git 리포지토리의 관련 변경 사항만 파이프라인을 실행할 수 있습니다. GitHub Interceptor는 변경된 모든 파일의 쉼표로 구분된 목록을 추가하고 CEL 인터셉터를 사용하여 변경된 파일을 기반으로 들어오는 이벤트를 필터링합니다. 변경된 파일 목록은 최상위 extensions 필드에서 이벤트 페이로드의 changed_files 속성에 추가됩니다.
사전 요구 사항
- Red Hat OpenShift Pipelines Operator를 설치했습니다.
프로세스
다음 중 하나를 실행합니다.
공개 GitHub 리포지토리의 경우 아래 YAML 구성 파일에서
addChangedFiles매개변수 값을true로 설정합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 프라이빗 GitHub 리포지토리의 경우
addChangedFiles매개변수 값을true로 설정하고 아래에 표시된 YAML 구성 파일에 액세스 토큰 세부 정보secretName및secretKey를 제공합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow
- 구성 파일을 저장합니다.
1.12.2. GitHub Interceptors를 사용하여 가져오기 요청 검증 링크 복사링크가 클립보드에 복사되었습니다!
GitHub Interceptor를 사용하여 리포지토리에 구성된 GitHub 소유자를 기반으로 가져오기 요청 처리를 검증할 수 있습니다. 이 검증은 PipelineRun 또는 TaskRun 오브젝트의 불필요한 실행을 방지하는 데 도움이 됩니다. GitHub 인터셉터는 사용자 이름이 소유자로 나열되거나 리포지토리 소유자가 구성 가능한 주석이 발행된 경우에만 가져오기 요청을 처리합니다. 예를 들어 가져오기 요청에서 소유자로 /ok-to-test 를 주석 처리하면 PipelineRun 또는 TaskRun 이 트리거됩니다.
소유자는 리포지토리 루트의 OWNERS 파일에 구성됩니다.
사전 요구 사항
- Red Hat OpenShift Pipelines Operator를 설치했습니다.
프로세스
- 시크릿 문자열 값을 생성합니다.
- 해당 값을 사용하여 GitHub Webhook를 구성합니다.
-
시크릿 값이 포함된
secretRef라는 Kubernetes 시크릿을 생성합니다. - GitHub 인터셉터에 대한 참조로 Kubernetes 시크릿을 전달합니다.
-
소유자파일을 만들고 승인자 섹션에 승인자 목록을 추가합니다. 다음 중 하나를 실행합니다.
공개 GitHub 리포지토리의 경우 아래 YAML 구성 파일에서
githubOwners매개변수 값을true로 설정합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 프라이빗 GitHub 리포지토리의 경우
githubOwners매개변수 값을true로 설정하고 아래에 표시된 YAML 구성 파일에 액세스 토큰 세부 정보secretName및secretKey를 제공합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고checkType매개변수는 인증이 필요한 GitHub 소유자를 지정하는 데 사용됩니다. 해당 값을orgMembers,repoMembers또는all로 설정할 수 있습니다.
- 구성 파일을 저장합니다.