2012-05-11 5 views
7

젠킨스에 대한 scm 매개 변수의 값을 전달할 수 있습니까? 내 pom.xml 파일에서젠킨스에 의한 매개 변수를 통한 scm 태그 값 전달

, 나는 기본값으로 설정 한 값을 가지고

<scm> 
    <connection> scm:svn:https://172.10.10.30/svn/repPortal/branches/2012/Branch_A/ </ connection> 
    <developerConnection>scm:svn:https://172.10.10.30/svn/repPortal/branches/2012/Branch_A/</developerConnection> 
</ scm> 

내가 다른 분기를 실행하고 릴리스 프로세스 내에서 (젠킨스 릴리스를 실행할 때 문제는, 그것은 프로젝트의 태그를 생성합니다) 항상 pom에 정의 된 값을 가져옵니다.

저는 Jenkins에서 scm pom 프로젝트에 자동으로 설정 될 새로운 매개 변수에 새 경로를 전달합니다.

매개 변수가있는 건물에서 문자열 매개 변수를 설정하여 일부 테스트를 수행했지만 주어진 매개 변수와 구성 오류를 인식하지 못했습니다.

Caused by: org.apache.maven.shared.release.ReleaseFailureException: 
    Missing required setting: scm connection or developerConnection must be specified. 

은 내가 말할 수 있도록 할 수있는 방법이 있나요 ...

-X -Dresume=false release:clean release:prepare release:perform \ 
    -DscmConnection="scm:svn:https://172.10.10.30/svn/repPortal/branches/2012/Branch_B"-DscmDeveloperConnection = "scm: svn: https ://172.10.10.30/svn/repPortal/branches/2012/Branch_B "scm: validate 

오류가 지속 :

또 다른 방법은 "릴리스 목표 및 옵션"을 통과했다 젠킨스?

답변

1

SCM 연결에 대해 정의 된 속성이 올바르지 않습니다. 명령 줄에서 SCM 연결을 설정하는 속성은 -Dproject.scm.connection이고 개발자 연결은 -Dproject.scm.developerConnection입니다.

+0

그래서 제 젠킨스에서 다음 명령을 시도했지만 pom.xml에 정의 된 scm 태그를 수정하지 않았습니다. -X -Dresume = false 릴리스 : 클린 릴리스 : 준비 릴리스 : perform -Dproject.scm.connection = scm : svn : https : //172.10.10.30/svn/repPortal/branches/2012/Branch_B -Dproject.scm.developerConnection = scm : svn : https : //172.10.10.30/svn/repPortal/branches/2012/Branch_B 다른 방법으로 설정을 다시 쓸 수 있습니까? – ricardo

+0

동일한 명령에서'release : perform'없이'-DdryRun = true'를 추가하십시오. Maven이 만드는 중간 POM을 살펴보십시오. 그들 중 어떤 것이 맞습니까? Jenkins없이 명령 행에서이 dryRun 명령을 실행하는 것도 고려하십시오. 동일한 결과가 있습니까? 마지막으로,'maven-release-plugin' 버전 2.3이 어제 릴리스되었고 SCM 사용과 관련된 몇 가지 수정 사항이 도움이 될 것입니다. – user944849

관련 문제