안녕하세요.
이미 DroneCI를 사용하여 애플리케이션에 CI + CD를 추가하려고 시도했다면 이 도구가 얼마나 강력한지 알 수 있을 것입니다. 작동합니다.
저는 연구를 위해 DevOps에 대해 조금 더 깊이 들어가 프로젝트에서 열린 각 Pull Request에 대한 검토 환경을 동적으로 생성했습니다. 모든 작업을 처리하는 이미지 작업(나중에 더 자세히 설명할 수 있음), 개인 K8s 클러스터에 배포(Helm 및 템플릿 덕분에).
모두 구현한 후 약간의 문제가 발견되었습니다. 공급자(이 경우 Github)는 모든 정보가 포함된 후크를 보내지만 DroneCI는 닫힌 작업을 단순히 무시합니다. 따라서 CI에 대한 닫기 PR 작업을 실행할 수 없습니다(제 경우에는 검토 환경 애플리케이션 제거).
웹에서 여러번 검색해봐도 해결방법이 없어 자자자자 만들어봤습니다.
예를 들어 작업이 닫힐 때 .drone.yaml에 대해 구성된 파이프라인을 트리거할 수 없다는 문제에 직면한 경우 가능한 해결책 중 하나는 GitHub와 DroneCI 사이에 프록시 전달을 추가하는 것입니다. 신청하세요.
프로젝트:
https://github.com/tcharlezin/drone-ci-proxy
기본적으로 환경을 구성하기만 하면 됩니다.
WEB_PORT="8080"
TARGET_HOST="https://drone-ci.your-domain.here"
애플리케이션을 배포하고 GitHub가 프록시에 대한 /hook을 가리키도록 구성하면 됩니다.
훅 정보를 확인하고 처리할 수 있는 곳은 다음과 같습니다.
https://github.com/tcharlezin/drone-ci-proxy/blob/master/cmd/handle/handle.go#L64
즐기세요!
위 내용은 Pull Request에 대한 닫힌 작업을 위한 프록시 [DroneCI + GitHub]의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!