2017-12-04 2 views
1

작업 이름에 대한 변수를 전달하는 젠킨스 파이프 라인에서 작업을 빌드 할 수 없습니다. 코드 스 니펫 아래에서 찾으십시오. 나는 'microservice'로 $ {서비스를} 교체 할 경우이 작업변수가있는 젠킨스 파이프 라인에서 빌드 작업

service = 'microservice' 
echo "TESSSSSSSSTTT ${service}" 
build(job: "'${service}'", parameters: [string(name: 'ENVNAME', value: 'uat')]) 
를 트리거

직면 오류 :

[Pipeline] echo 
TESSSSSSSSTTT microservice 
[Pipeline] build 
[Pipeline] End of Pipeline 
ERROR: No item named 'microservice' found 
Finished: FAILURE 

내가위한 빌드 명령을 공격하려는 때문에이 방법을 사용하고 있습니다 모든 마이크로 서비스가 다중 행 문자열 매개 변수로 이름을 전달하고, 마지막으로이 빌드를 루프로 설정하려고합니다.

답변

2

Jenkins에서 귀하의 직업이 'microservice'이 아니라 microservice (틱 없음)이라고 가정합니다.

는 그래서 큰 따옴표 후 작은 따옴표가 포함되지하기 위해 build 줄을 변경 :

build(job: "${service}", parameters: [string(name: 'ENVNAME', value: 'uat')]) 

나요 간단한 내 젠킨스 인스턴스와 테스트 및 기존 작업에 서비스 변수를 설정하여 작업을 호출 할 수 있었다 이름.

+0

감사합니다. 나는 루프 내에서만 큰 따옴표로 이것을 테스트하고 ERR로 실패했다고 생각합니다. 그룹을 확인하십시오! java.util.AbstractList $ Itr. 루프 밖에서 완벽한 작품을 볼 수 있습니다. 다시 한번 감사드립니다. –

관련 문제