Jenkins를 활용한 CI/CD 입문 (with.AWS)
adding-test-stage-to-pipeline
✅ 1. Stage란 무엇일까?
- 전체 워크플로우를 논리적으로 구분하는 작업 단위
- 코드를 구조화시켜 Pipeline의 흐름을 이해하기 쉽게 도와줌
✅ 2. Test Stage 추가하기
pipeline {
agent any
stages {
stage('Build') {
steps {
cleanWs()
echo 'make a new burger'
sh '''
mkdir -p kitchen
touch kitchen/hambuger.txt
echo "Patty" >> kitchen/hambuger.txt
cat kitchen/hambuger.txt
'''
}
}
stage('Test') {
steps {
echo 'Testing the new hambuger'
}
}
}
post {
success {
archiveArtifacts artifacts: "kitchen/**"
}
}
}
✅ 3. Test 실패해보기
pipeline {
agent any
stages {
stage('Build') {
steps {
cleanWs()
echo 'make a new burger'
sh '''
mkdir -p kitchen
touch kitchen/hambuger.txt
echo "Patty" >> kitchen/hambuger.txt
cat kitchen/hambuger.txt
rm kitchen/hambuger.txt
'''
}
}
stage('Test') {
steps {
echo 'Testing the new hambuger'
sh 'test -f kitchen/hambuger.txt'
}
}
}
post {
success {
archiveArtifacts artifacts: "kitchen/**"
}
}
}
✅ 4. 종료 코드의 의미
ERROR: script returned exit code 1
Finished: FAILURE
- 종료 코드 0은 프로그램이 성공적으로 실행되었음을 나타냄
- 종료 코드가 1~255 사이의 숫자인 다른 종료 코드는 실패를 나타냄
- 하나의 Stage 실행 중 종료 코드가 반환되면, 그 이후 작업은 수행하지 않음