Files
Rinjae 2dc31a16d7 - sourceBundle Gradle task 추가: 내부망 소스 번들 빌드 지원
- Jenkinsfile 수정: sourceBundle 빌드/아티팩트 보관 적용
- README 갱신: sourceBundle 사용법 추가
2026-07-24 14:21:42 +09:00

91 lines
2.4 KiB
Groovy

pipeline {
agent { label 'djb-vm' }
triggers {
pollSCM('H/10 * * * *')
}
options {
timestamps()
disableConcurrentBuilds()
buildDiscarder(logRotator(numToKeepStr: '20', artifactNumToKeepStr: '20'))
}
environment {
JAVA_HOME = '/apps/opts/jdk8'
GRADLE_HOME = '/apps/opts/gradle-8.7'
GRADLE_USER_HOME = '/apps/opts/gradle-home'
PATH = "/apps/opts/jdk8/bin:/apps/opts/gradle-8.7/bin:/apps/opts/bin:${env.PATH}"
GIT_SSH_COMMAND = 'ssh -o StrictHostKeyChecking=accept-new'
}
stages {
stage('Checkout') {
steps {
checkout scm
}
}
stage('Verify toolchain') {
steps {
sh '''
set -eu
java -version
gradle --version
'''
}
}
stage('Build JAR') {
steps {
sh 'gradle clean build sourceBundle --no-daemon'
}
}
stage('Smoke test') {
steps {
sh '''
set -eu
echo "---- default (bypass) mode ----"
java -cp build/libs/damo-manager.jar com.eactive.ext.djb.DamoManager
echo "---- fake mode (-Ddamo-manager.enabled=true) ----"
java -Ddamo-manager.enabled=true -cp build/libs/damo-manager.jar com.eactive.ext.djb.DamoManager
echo "---- require-real must fail without scpdb ----"
if java -Ddamo-manager.require-real=true -cp build/libs/damo-manager.jar com.eactive.ext.djb.DamoManager 2>/dev/null; then
echo "ERROR: require-real should have failed without scpdb"; exit 1
else
echo "OK: require-real failed fast as expected"
fi
echo "---- CLI param mode ----"
java -jar build/libs/damo-manager.jar info
'''
}
}
stage('Package & checksum') {
steps {
sh '''
set -eu
rm -rf build/dist
mkdir -p build/dist
cp build/libs/damo-manager.jar build/dist/
cp build/distributions/damo-manager-src-*.zip build/dist/
cp README.md build/dist/
cd build/dist
for f in damo-manager.jar damo-manager-src-*.zip README.md; do
sha256sum "$f" > "$f.sha256"
done
ls -la
echo "---- *.sha256 ----"
cat *.sha256
'''
}
post {
success {
archiveArtifacts artifacts: 'build/dist/damo-manager.jar,build/dist/damo-manager-src-*.zip,build/dist/README.md,build/dist/*.sha256', fingerprint: true
}
}
}
}
}