부울 매개 변수가 하나 뿐인 Jenkins 작업이 있습니다. 이 매개 변수의 기본값은 false입니다. 필자는 POST URL로 빌드하고 토큰 및 매개 변수를 전달하여 ANT 빌드 스크립트 (다른 작업)에서 원격으로 빌드합니다. 나는 (인코딩 문제의주의를 기울여야한다) 작은 따옴표로 묶여 URL과 (ANT 젠킨스와 대문자) 부울 매개 변수의 이름을 보고서라고이Jenkins 원격 매개 변수화 된 빌드는 항상 전달되는 매개 변수 값 대신 기본 매개 변수 값을 사용합니다.
curl -X POST 'MY_JENKINS_SERVER/job/JOB_NAME/buildWithParameters?token=12345;REPORTS=true' --user MY_USERNAME:MY_PASS
참고. 또한 토큰과 다른 매개 변수를 분리하기 위해 앰퍼샌드 (&)를 사용하면 다음과 같은 오류가 발생합니다. "REPORTS"엔티티에 대한 참조가 ';'로 끝나야합니다. 구분 기호.
REPORTS 매개 변수의 값이 URL 문자열에 무엇이든 관계없이 매개 변수는 빌드 할 때 항상 기본값 인 false입니다. Jenkins에서 기본값을 true로 변경했으며 전달 된 매개 변수 값에 관계없이 항상 true입니다. 기본적으로 은 항상 기본값을 사용하고 전달 된 매개 변수 값을 무시합니다. 나는 또한 REPORTS 매개 변수를 전달하려고 시도했으며 물론 기본값을 사용합니다. 내 작업의 빌드 파일 (I 원격 트리거하고있는 하나)에서
, 나는 SO에 비슷한 질문을 통해 검토 한
$와 같은 매개 변수 {env.REPORTS}을 인쇄하지, 그러나 그들의 솔루션 작업 중 어떤 것도 나를 위해. URL 주위에서 매개 변수를 이동하려고 시도했지만 아무 것도 작동하지 않는 것 같습니다. 어떤 아이디어? 이 기준 라인
으로 작성해야합니다. [ "foo"엔티티에 대한 참조가 ';'로 끝나야합니다. 구분 기호] (http://stackoverflow.com/questions/6483807/the-reference-to-entity-foo-must-end-with-the-delimiter) – BalusC