Jenkins를 활용한 CI/CD 입문 (with.AWS)
archiving-artifacts-on-successful-build
✅ 1. 빌드 결과물이 사라지는 이유
pipeline {
agent any
stages {
stage('Build') {
steps {
echo 'make a new burger'
sh 'mkdir -p kitchen'
sh 'touch kitchen/hambuger.txt'
sh 'echo "Patty" >> kitchen/hambuger.txt'
sh 'cat kitchen/hambuger.txt'
}
}
}
post {
always {
cleanWs()
}
}
}
- 우리는 현재 post 단계에서 빌드 후
cleanWs() 를 통해 모든 결과물을 지우고 있다.
- 만약 빌드 실패 시에만 결과물을 지우고 싶다면 어떻게 해야 할까?
✅ 2. 빌드 성공 시 결과물 저장하기
pipeline {
agent any
stages {
stage('Build') {
steps {
cleanWs()
echo 'make a new burger'
sh 'mkdir -p kitchen'
sh 'touch kitchen/hambuger.txt'
sh 'echo "Patty" >> kitchen/hambuger.txt'
sh 'cat kitchen/hambuger.txt'
}
}
}
post {
success {
archiveArtifacts artifacts: "kitchen/**"
}
}
}
✅ 3. 여러 개의 명령어를 하나로 합치기
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
'''
}
}
}
post {
success {
archiveArtifacts artifacts: "kitchen/**"
}
}
}