0
파이프 라인 작업을 정의하는 DSL Groovy 스크립트가 있습니다. 작업 공간에서 Jenkinsfile을로드해야합니다. 젠킨스 파일은 그루비 스크립트와 같은 폴더에 있습니다. 프로그래밍 방식으로 Groovy 스크립트의 경로를 얻으려는 시도로 Jenkinsfile의 경로를 알아 내고 readFileFromWorkspace
을 사용하여로드 할 수 있습니다. job-dsl-wiki을 거친 후 __FILE__
지시어를 사용해 보았습니다. 여기작업 DSL에서 처리중인 스크립트 디렉토리의 절대 경로 가져 오기
Processing provided DSL script
ERROR: (test_job.groovy, line 3) No such property: absolutePath for class: java.lang.String
Finished: FAILURE
내 DSL 스크립트
job_name = "my-pipeline-job"
job_path = "${new File(__FILE__).parent.absolutePath}"
jenkinsfile = job_path + "/Jenkinsfile"
pipelineJob(job_name){
description("Jenkins pipeline job")
parameters{
stringParam("MyTestParam", "", "a sample parameter")
}
definition {
cps {
sandbox()
script(readFileFromWorkspace(jenkinsfile))
}
}
}
내가 잘못 여기서 뭘하고 있나요된다 그러나 나는 다음과 같은 오류는 무엇입니까? 정말 이에 대한 도움을 주셔서 감사합니다.
좋아, 해결책을 찾아 냈어. 그것은'job_path = "$ {new File (__ FILE __). parent}"이어야합니다. "' – user2371156