Files
api2/Jenkinsfile.pjt
T
2026-02-03 10:35:59 +09:00

54 lines
1.0 KiB
Plaintext

pipeline {
agent any
options {
timestamps()
disableConcurrentBuilds()
}
environment {
// ===== Registry =====
REGISTRY_HOST = "registry.pjt.kr"
IMAGE_REPO = "alist/api"
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 tab create') {
steps {
script {
env.SHORT_SHA = sh(script: "git rev-parse --short HEAD", returnStdout: true).trim()
echo "SHORT_SHA = ${env.SHORT_SHA}"
env.IMAGE_TAG = "${env.BUILD_NUMBER}-${env.SHORT_SHA}"
echo "IMAGE_TAG = ${env.IMAGE_TAG}"
}
}
}
stage('4) Docker Build') {
steps {
sh '''
set -e
docker build -t ${REGISTRY_HOST}/${IMAGE_REPO}:${IMAGE_TAG} .
'''
}
}
}
}