프로젝트의 연속 통합 설정 작업을하고 있습니다. 모든 코드는 github repo에 있으며, 병합되면 특정 작업이 실행되는 젠킨스 서버로 웹 훅이 트리거됩니다. 여기서이 작업은 페이로드를보고 해당 분기를 기반으로 실행할 다운 스트림 작업을 결정합니다. 나머지 페이로드는 필요하지 않습니다. 줄일 수있는 방법이 있나요 :너무 큰 JSON 페이로드 오류가있는 Github webhook이 jenkins 작업을 트리거합니다.
Cloning the remote Git repository
Cloning repository <git_repo>
> git init <http://jenkins_instance/job> # timeout=10
ERROR: Error cloning remote repo 'origin'
hudson.plugins.git.GitException: Could not init <http://jenkins_instance/job>
...
Caused by: hudson.plugins.git.GitException: Error performing command: git init <http://jenkins_instance/job>
...
Caused by: java.io.IOException: Cannot run program "git" (in directory "<http://jenkins_instance/job>")>: error=7, Argument list too long
...
Caused by: java.io.IOException: error=7, Argument list too long
...
ERROR: null
주요 질문 : 병합에서 커밋이 많이있다 인스턴스에서 JSON 페이로드는 다음과 같은 오류와 함께 중단됩니다 너무 많이, 매우 큰 것 이 페이로드 크기? 또는 오류를 피하기 위해 페이로드를 처리하는 방법에 대한 제안?
설정이 작업에 대한 How to process a github webhook payload in Jenkins?
현재 설정이 "매개 변수화"이고 "페이로드"에 대한 하나 개의 매개 변수 "문자열 있었던 파라미터"가이 게시물에 대한 유사하다. 이 변수는 다음 주 셸을 실행하는 동안 그래서 같은 파일로 저장됩니다
echo "Current payload is ${payload}"
if [ -d ./payload.txt ]
then
rm payload.txt;
fi
touch payload.txt
echo $payload >> payload.txt