jenkinsfile

This commit is contained in:
2026-02-09 10:37:35 +09:00
parent 596b6d4d84
commit dee09ad16a
2 changed files with 150 additions and 9 deletions

View File

@@ -1,12 +1,22 @@
pipeline {
agent any
parameters {
string(name: 'SPRING_PROFILES_ACTIVE', defaultValue: 'prod', description: 'Spring Profile (dev/prod)')
string(name: 'BATCH_DATE', defaultValue: '', description: 'Batch Date (YYYY-MM-DD, empty = today)')
string(name: 'ADDITIONAL_PARAMS', defaultValue: '', description: 'Additional Parameters (e.g., limit=100)')
choice(name: 'ACTION', choices: ['RUN', 'VERIFY_ONLY'], description: 'Action to perform')
}
tools {
jdk 'jdk21'
}
environment {
BRANCH = 'main'
GIT_REPO = 'https://kamco.git.gs.dabeeo.com/MVPTeam/kamco-cd-cron.git'
JAR_NAME = 'generator-dataset-for-training.jar'
TODAY = sh(script: "date +%Y-%m-%d", returnStdout: true).trim()
}
// NOTE: Pre-built JAR is included in the repository
@@ -56,13 +66,49 @@ pipeline {
}
}
stage('Deploy') {
stage('Run JAR') {
when {
expression { params.ACTION == 'RUN' }
}
steps {
dir("kamco-make-dataset-generation") {
script {
def jarPath = "build/libs/${env.JAR_NAME}"
echo "Ready to deploy: ${jarPath}"
// Determine batch date: use parameter if provided, otherwise use today
def batchDate = params.BATCH_DATE ?: env.TODAY
echo "========================================="
echo "Running JAR: ${jarPath}"
echo "Profile: ${params.SPRING_PROFILES_ACTIVE}"
echo "Batch Date: ${batchDate}"
echo "Additional Params: ${params.ADDITIONAL_PARAMS}"
echo "========================================="
// Build Java command
def javaCmd = "java -jar ${jarPath}"
// Add Spring profile
if (params.SPRING_PROFILES_ACTIVE) {
javaCmd += " --spring.profiles.active=${params.SPRING_PROFILES_ACTIVE}"
}
// Add batch date parameter
javaCmd += " date=${batchDate}"
// Add additional parameters
if (params.ADDITIONAL_PARAMS) {
javaCmd += " ${params.ADDITIONAL_PARAMS}"
}
echo "Executing: ${javaCmd}"
// Execute JAR
sh """
${javaCmd}
"""
echo "JAR execution completed successfully"
}
}
}