저는 CI/CD 도구로 Jenkins를 주로 사용하는 편입니다.
강점이라면 많은 플러그인 들이고 또 하나는 제가 자주 써서 익숙하게 사용할 수 있다는 점이지요.
(사실 현역 프로그램중에 고르라면 내가 편한게 최고 아니겠습니까?)
Jenkins에는 수많은 Job들이 등록되어 있고 실행이 되고 있습니다.
QA Engineer의 경우 자동화 테스트를 Job으로 만들어서 관리하게 될텐데
개발 환경이나 실제 서비스되는 라이브 환경을 검증 할 때 하나의 Job만 실행하여 검증을 할 수 없는 경우는
여러개의 Job을 실행하여 검증을 진행하게 됩니다.
이럴때 이러한 Job들을 묶어서 하나의 Job으로 실행되도록 할 수 있습니다.
바로 Jenkins Pipeline 으로 가능합니다.
새로운 Item을 선택하면 Job을 생성할 수 있는 리스트 화면이 나오는데 이곳에서
Pipeline 을 선택해줍니다.
이곳에서 Definition으로 Pipeline script를 선택 한 다음 하단의 영역에 스크립트를 작성하시면 됩니다.
pipeline {
agent none
stages
{
stage(‘send cash’)
{
steps
{
echo(‘Not implemented’)
}
}
stage(‘Legacy’)
{
steps
{
script
{
try
{
build job: ‘LEGACY_BACK_END_TEST_AUTOMATION’, parameters: [ string(name: ‘SelectServer’, value: “${SelectServer}“)]
} catch (e)
{
echo ‘LEGACY TEST Fail!! But Im Running!’
}
}
}
}
stage(‘V1’)
{
steps
{
script
{
try
{
build job: ‘V1_BACK_END_TEST_AUTOMATION’ , parameters: [ string(name: ‘SelectServer’, value: “${SelectServer}“)]
} catch (e)
{
echo ‘V1 TEST Fail!! But Im Running!’
}
}
}
}
stage(‘V2’)
{
steps
{
script
{
try
{
build job: ‘V2_BACK_END_TEST_AUTOMATION’ , parameters: [ string(name: ‘SelectServer’, value: “${SelectServer}“)]
} catch (e)
{
echo ‘V2 TEST Fail!! But Im Running!’
}
}
}
}
}
}
stages
ㄴ stage
ㄴ steps
ㄴ script
의 구조라고 생각하시면 됩니다.
build job:
이곳에는 실제 만들어져 있는 Job의 이름을 쓰시면 됩니다.
그리고 해당 Job에서 사용하는 파라미터가 있을 경우 뒤에 있는 parameters 부분을 추가해주시면 됩니다.
다 완성되면 해당 Pipeline Job을 돌려봅니다.
작성한 Job 순서대로 잘 실행되는 것을 볼 수 있습니다.
728x90
'Study > Jenkins' 카테고리의 다른 글
Jenkins JSONObject["scm"] is not a JSONObject 에러 해결하기 (0) | 2024.03.20 |
---|---|
Jenkins Pipeline Parallel 실행 하기 (젠킨스 파이프라인 병렬 실행) (0) | 2023.09.08 |
jq를 사용해서 JSON 값 변경하기 (0) | 2023.06.23 |
jenkins pipeline 결과 fail일 때 멈추지 않고 실행되도록 처리하기 & fail 이면 멈추기 (0) | 2022.03.02 |
Jenkins 원격 빌드 하기 - cURL 사용해보기 (3) | 2021.05.20 |
댓글