문제 상황
젠킨스에서 빌드를 할 때, 내려받고자 하는 레포지토리에 lfs 파일이 있다면 (사이즈가 굉장히 큰) 내려받지 못하고 다음과 같이 에러가 발생했다.
stderr: Downloading google-chrome-stable_current_amd64.deb (86 MB)
Error downloading object: google-chrome-stable_current_amd64.deb (d6bb13a): Smudge error: Error downloading google-chrome-stable_current_amd64.deb (d6bb13aad7c0a2b026b8b36d2e8a74f9bf66fe64610ce12fbbd23b4325699da7): batch request: git@github.com: Permission denied (publickey).: exit status 255
Errors logged to '/var/jenkins_home/workspace/BlinderServer/.git/lfs/logs/20231230T082745.348215232.log'.
Use `git lfs logs last` to view the log.
error: external filter 'git-lfs filter-process' failed
fatal: google-chrome-stable_current_amd64.deb: smudge filter lfs failed
나의 경우는 구글 크롬 deb 파일 때문이었는데, 꼭 필요한 파일이어서 lfs와 관련된 문제를 해결하여야했다.
해결 방법으로는 크게
- Freestyle project가 아닌 Pipeline을 사용해서 스크립트를 짠다.
- Freestyle project를 유지하되 빌드 설정을 변경한다.
가 있는데, 두번째 방법을 선택했다.
해결 방법
먼저 프로젝트 구성 -> 소스코드 관리로 들어간다.
이후 Run buildstep before SCM runs
을 체크해주고, 다음 명령을 적어준다.
git lfs install
이후 소스 코드 관리에서 Additional Behaviours의 Add 버튼을 누르고,
Git LFS pull after checkout 을 추가해준다.
이후 저장하고, 다시 빌드를 해준다.
정상적으로 빌드가 된 모습!
'♾️DevOps > ♾️CI & CD' 카테고리의 다른 글
[CI/CD] - 무중단 배포 with CI/CD 1: nginx + spring 로드 밸런싱 편 (0) | 2024.02.26 |
---|---|
[CI/CD] - 도커와 젠킨스를 사용한 CI/CD -4 (도커의 설치부터 자동배포까지) (5) | 2024.01.09 |
[CI/CD] - 도커와 젠킨스를 사용한 CI/CD -3 (도커의 설치부터 자동배포까지) (0) | 2023.10.22 |
[CI/CD] - 도커와 젠킨스를 사용한 CI/CD -2 (도커의 설치부터 자동배포까지) (0) | 2023.10.22 |
[CI/CD] - 도커와 젠킨스를 사용한 CI/CD -1 (도커의 설치부터 자동배포까지) (0) | 2023.10.21 |