48 lines
872 B
Plaintext
48 lines
872 B
Plaintext
pipeline {
|
|
agent any
|
|
|
|
options {
|
|
timestamps()
|
|
disableConcurrentBuilds()
|
|
}
|
|
|
|
environment {
|
|
// ===== Registry =====
|
|
REGISTRY_HOST = "registry.pjt.kr"
|
|
IMAGE_REPO = "alist/api"
|
|
IMAGE_TAG = ""
|
|
DOCKER_CRED = "docker-registry-cred" // ← Jenkins Credentials ID
|
|
}
|
|
|
|
stages {
|
|
stage('1) Git check out') {
|
|
steps {
|
|
checkout scm
|
|
}
|
|
}
|
|
|
|
stage('2) Build (Gradle)') {
|
|
steps {
|
|
sh '''
|
|
set -e
|
|
chmod +x ./gradlew
|
|
./gradlew clean build -x test
|
|
'''
|
|
}
|
|
}
|
|
|
|
stage('3) image tag create') {
|
|
steps {
|
|
script {
|
|
env.IMAGE_TAG = sh(
|
|
script: 'echo "${BUILD_NUMBER}-$(git rev-parse --short HEAD)"',
|
|
returnStdout: true
|
|
).trim()
|
|
|
|
echo "IMAGE_TAG = ${env.IMAGE_TAG}"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|