오늘도 한 뼘 더

[Jenkins] Jenkins pipeline에서 Git Tag 체크아웃 본문

DevOps & Infra/Jenkins

[Jenkins] Jenkins pipeline에서 Git Tag 체크아웃

나른한댕댕이🐶 2023. 7. 6. 11:38
728x90
반응형

  # 배경  

jenkins job 중 pipeline을 사용하는 곳에서 git 체크아웃을 받을 때 branch가 아닌 tag로 체크 아웃을 하고 싶다.

 

  # 처음 시도한 것  

Git Paramter로 Tag 값을 받고  git branch에 parameter값을 그대로 넘겨주었다.

node {
	stage 'Checkout'
	git branch: "${params.TAG}",
	credentialsId: 'CRD',
	url: 'git@gitlab.com/jihyunb.git'
    
	...
	...
}

  오류 발생  

git branch에 parameter 값을 넘기니 다음과 같이 찾을 수 없다는 에러가 발생하였다.

 

  # 오류 원인  

파이프라인을 잘못 작성한 건가 싶어 확인을 하기 위해 Pipeline Syntax에 들어가서 확인을 하는 중에 다음과 같은 설명문을 보게 되었다.

이전에 작성하던 방법은 브랜치만 체크 아웃을 할 수 있었던 것이다.

태그 이름을 사용하여 체크 아웃 하기 위해서는 Checkout Step이라는 파이프라인 단계를 사용해야 했다.

 

  # Tag 사용하여 Git 체크 아웃  

node {
    checkout scmGit(
        branches: [[name: "${params.TAG}"]], 
        extensions: [], 
        userRemoteConfigs: [[credentialsId: 'CRD', url: 'git@gitlab.com/jihyunb.git']]
    )
}

위와 같이 작성하여 진행하니 Tag를 사용하여 git 체크 아웃을 할 수 있었다.

728x90
반응형
Comments