2012-12-01 4 views
3

jenkin의 일은 리눅스 사용자 폴더에서 tar 파일을 복사 한 다음 다른 작업에서 이진 파일 (컴파일 된 파일)을 복사하고 새 tar 파일을 만듭니다. 그러면 jenkins 사용자는 jenkin의 작업 공간에서 새 tar 파일을 복사 할 수 있습니다. SCM에서 아무 것도 만들거나 파일을 가져 오지 않습니다. 그런 다음 잠시 후 작업 영역에서 갑자기 tar 파일이 삭제되었습니다. 작업을 다시 실행해야합니다. 나는 그것을 어떻게 막을 수 있습니까?Jenkins가 작업 공간에서 파일을 삭제합니다.

답변

9
작업 공간이 시작하는 다른 빌드로 덮어, 또는 할 수있는 당신은 정말, 작업 후 기존 작업 공간이 완료에 의존해서는 안

누군가가 등 오프라인 노예에 의해 빌드를 삭제할 때 ...

나중에 사용할 수 있도록 파일을 저장하려면 작업의 사후 빌드 구성에서 "이슈 아카이브"옵션을 사용해야합니다. 예를 들어, **/*.tar을 입력하면 Jenkins는 빌드가 끝날 때 모든 TAR 파일을 저장합니다.

그런 다음 URL에서 알 수 있듯이
http://JENKINS/job/JOB_NAME/lastSuccessfulBuild/artifact/bin/my-app.tar

:, 예컨대을 유물에 액세스 할 수 젠킨스 '영구 링크를 사용할 수 있습니다, 이것은 당신에게 마지막으로 성공한 빌드에서 파일을 줄 것이다. 그런 다음 다른 빌드에 보관 된 파일을 복사 할 경우 (!) 참고로


는이 작업을 수행하는 가장 좋은 방법은 Copy Artifact plugin 함께.

그런 식으로 젠킨스는 여러 명의 젠킨스 노예에서도 파일 복사를 처리하므로 다른 젠킨스 작업 영역에 대한 하드 코딩 경로와 같은 더러운 작업을 수행 할 필요가 없습니다.

+0

좋아, 해보겠습니다. 나는 또한 빌드 기록이 정리되었다는 말을 잊어 버렸다. 다른 직업에서는 그렇지 않습니다. 여전히 괜찮습니까? – user1869474

관련 문제