리셋 되지 말자

[Jenkins] DSL을 이용한 Job 생성 본문

CI CD

[Jenkins] DSL을 이용한 Job 생성

kyeongjun-dev 2022. 12. 19. 19:07

DSL 플러그인을 이용한 Build Steps 작성

먼저 DSL 플러그인을 설치한 후, 아래 사진과 같이 Step을 추가하고 스크립트를 작성한다.

 

스크립트 내용은 아래와 같다.

job(PIPELINE_JOB_NAME) {
  parameters{
	gitParam('sha') {
		description('Revision commit SHA')
		type('BRANCH')
		branch('*')
	}
  }

  scm {
    git {
      remote {
        url(GIT_REMOTE_URL)
        credentials('github-credential')
      }
      branch '*'
    }
  }
         
  steps {
    shell('echo START')
    shell('docker --version')
   	shell('docker ps')
   	shell('echo ${PIPELINE_JOB_NAME}')
    shell('echo ${GIT_REMOTE_URL}')
	shell('echo ${BRANCH}')
  }
}

 

DSL에 사용한 변수인 PIPELINE_JOB_NAME, GIT_REMOTE_URL은 위에서 설정한 String Parameter다.


Job 생성

위와같이 Job Creator를 생성한 뒤, PIPELINE_JOB_NAME, GIT_REMOTE_URL을 입력하여 Job을 생성한다.

 

Job Creator로 생성한 Job을 보면, Github 플러그인을 이용해서 해당 repository의 브랜치 목록을 자동으로 가져와서 선택할 수 있다.

 

DSL을 이용하지 않고 그냥 브랜치 목록을 이용해서 빌드하려면 아래와 같이 Git Parameter를 이용하면 된다.

Comments