Jenkins를 활용한 CI/CD 입문 (with.AWS)
defining-variables-in-jenkins-pipeline
✅ 1. 변수를 정의하는 이유
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/**"
}
}
}
✅ 2. 변수를 정의하는 법
pipeline {
agent any
environment {
BUILD_FILE_NAME = 'hambuger.txt'
}
stages {
stage('Build') {
steps {
cleanWs()
echo 'make a new burger'
echo "$BUILD_FILE_NAME" // 큰따옴표!!
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'
sh 'test -f kitchen/hambuger.txt'
}
}
}
post {
success {
archiveArtifacts artifacts: "kitchen/**"
}
}
}
pipeline {
agent any
environment {
BUILD_FILE_NAME = 'hambuger.txt'
}
stages {
stage('Build') {
steps {
cleanWs()
echo 'make a new burger'
echo "$BUILD_FILE_NAME"
sh '''
mkdir -p kitchen
touch kitchen/$BUILD_FILE_NAME
echo "Patty" >> kitchen/$BUILD_FILE_NAME
cat kitchen/$BUILD_FILE_NAME
'''
}
}
stage('Test') {
steps {
echo 'Testing the new hambuger'
sh 'test -f kitchen/$BUILD_FILE_NAME'
}
}
}
post {
success {
archiveArtifacts artifacts: "kitchen/**"
}
}
}