2015-01-26 3 views
0

젠킨스에서 배포 작업을 만들려고합니다. 지금까지 필자는 maven 설치 목표를 통해 내 인공물을 빌드하고 쉘 스크립트를 사용하여 응용 프로그램 서버에 배포했습니다. 그러나 이제 설치 부분을 건너 뛰고 넥서스 저장소에서 이슈를 가져오고 싶습니다.젠킨스 - 원격 저장소에서 최신 이슈 버전을 받으십시오.

내가 알고있는 것은 Maven 종속성입니다. 저장소에서 이슈를 검색하는 데 사용할 수 있지만 빌드 매개 변수로 전달하지 않고 최신 버전을 가져올 수있는 방법이 있습니까?

1)이 Repository Connector Plugin를 사용

+0

Nexus에서 얻으려면 '배치'(Maven 수명주기)가 포함 된 '배포'를 먼저 수행해야합니다. – khmarbaise

+0

다른 Jenkins 직무에서 배치를 수행하고 있습니다. 이 두 번째 작업은 Nexus 저장소에서 최신 아티팩트를 가져온 다음 애플리케이션 서버에 배포하는 것이 좋습니다. –

+0

Maven에 대한 추가 옵션'-U'를 사용하여'dependency : get'을 통해 수행하면 Nexus에서 새로운 아티팩트를 확인합니다. – khmarbaise

답변

2

당신은 다른 옵션이 있습니다. 이 플러그인을 사용하면 중앙 집중식으로 구성된 Jenkins 저장소에서 이름 바꾸기와 같은 다양한 옵션을 사용하여 배포 작업의 작업 영역으로 이슈를 다운로드 할 수있는 추가 "Artifact Resolver"빌드 단계를 얻을 수 있습니다.

LATEST 버전을 사용하는 경우 항상 최신 버전을 얻습니다. 마찬가지로 [1.0,1.1)과 같은 최신 릴리스 버전 또는 범위에 RELEASE을 사용할 수 있습니다.

있다 그러나이주의 사항은 다음과 같습니다), LATEST가 파손되는 플러그인의 최신 버전에서

이 (https://issues.jenkins-ci.org/browse/JENKINS-20263 참조), 그래서 당신은 지금 버전 0.8.2을 사용해야합니다.

다운로드 된 이슈는 수동으로 지문을 채취해야합니다. 다운로드 된 이슈는 현재 자동으로 처리되지 않으므로이 지문을 수동으로 지문해야합니다.

2) 의존성을 사용합니다 : 권장대로 설정하지만 위와 같이 LATEST 또는 RELEASE을 사용하십시오. 그러나, 나는 이것이 정말 우아한 해결책이라고 생각하지 않습니다. (기본 버전이 동일한 SNAPSHOT을 사용하는 경우 khmarbaise의 조언에 따라 간단히 -U를 명령 줄에 추가하십시오)

3) Maven Deployment Linker Plugin 플러그인을 사용하십시오. 다른 작업의 이슈를 복사 할 수 있기 때문에 다소 우아한 방법입니다 Copy-Artifact와 같지만 Artifact 저장소에서 여전히 검색됩니다 (따라서 디스크 공간과 시간을 낭비하지 않아도됩니다). 해당 플러그인의 가장 큰 문제점은 현재 인증을 지원하지 않는다는 것입니다.

관련 문제