728x90
솔루션 개발을 하면서 협업 시 브랜치 전략이 중요하다는 사실을 깨달았다. 그래서 git flow에 대해 학습하여 실무에 적용하였고 그 과정에서 jenkins에 job을 등록할 때 브랜치별로 등록을 해놓면 편리하겠다는 생각이 들어 실무에 적용해보았다.
git hooks에 대해 잘 모른다면 아래 글을 읽고 보면 더 잘 이해가 될 것 이다.(0탄부터 쭉 읽어보시길 추천)
Jenkins 7탄 ] git hooks 설정 방법 / git commit 시 젠킨스 자동 빌드 실행 방법
1. git 원격 서버로 ssh 접속 2. 프로젝트 clone받는 위치로 이동하면 hooks 파일이 존재할 것이다. # cd hooks 3. post-receive 파일 편집기 실행 # vim post-receive 4. 아래 내용 입력 후 저장 curl -i -X POST "http://admi
jfbta.tistory.com
vim post-receive 실행 후 내용을 다음과 같이 채운다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
#!/bin/bash
while read oldrev newrev refname;
do
branch=$(git rev-parse --symbolic --abbrev-ref $refname)
# 브랜치가 develop인 경우 실행
if [[ "$branch" == "develop" ]]; then
echo "jenkins build start"
curl -i -X POST "http://admin:11ff36bb9b5921116cb535c40e57a09b5e@10.10.50.158:9000/job/web_dev/build?token=remoteCall"
# 브랜치가 master인 경우 실행
elif [[ "$branch" == "master" ]]; then
echo "jenkins build start"
curl -i -X POST "http://admin:11ff36bb9b5921116cb535c40e57a09b5e@10.10.50.158:9000/job/web_util/build?token=remoteCall"
else
echo "jenkins will not build: $branch"
fi
done
|
cs |
jenkins에 2개의 job을 등록한 후 각 브랜치별로 커밋이 발생할 때 build를 실행하도록 파이프라인을 구축하였다.
728x90