This commit is contained in:
2026-01-30 20:20:33 +03:00
parent cb227289d6
commit 42b988ca4d

46
Jenkinsfile vendored
View File

@ -15,29 +15,6 @@ pipeline {
} }
} }
stage('Extract VERSION') {
steps {
script {
env.VERSION = sh(
script: '''
set -e
VERSION_FILE=src/main/resources/META-INF/ncore-product/$PRODUCT_GROUP/version.properties
VERSION=$(sed -n 's/^version=//p' "$VERSION_FILE")
if [[ ! "$VERSION" =~ ^[0-9]+(.[0-9]+)*(-[A-Za-z]+)?$ ]]; then
echo "Invalid version format: $VERSION" >&2
exit 1
fi
echo $VERSION
''',
returnStdout: true
).trim()
echo env.VERSION
}
}
}
stage('Make gradlew executable') { stage('Make gradlew executable') {
steps { steps {
@ -54,6 +31,23 @@ pipeline {
stage('Build and Push Docker Images') { stage('Build and Push Docker Images') {
steps { steps {
script {
env.VERSION = sh(
script: '''
set -e
VERSION_FILE=src/main/resources/META-INF/ncore-product/$PRODUCT_GROUP/version.properties
VERSION=$(sed -n 's/^version=//p' "$VERSION_FILE")
if [[ ! "$VERSION" =~ ^[0-9]+(.[0-9]+)*(-[A-Za-z]+)?$ ]]; then
echo "Invalid version format: $VERSION" >&2
exit 1
fi
$VERSION
''',
returnStdout: true
).trim()
}
script { script {
withCredentials([usernamePassword(credentialsId: 'build', usernameVariable: 'USER', passwordVariable: 'PASS')]) { withCredentials([usernamePassword(credentialsId: 'build', usernameVariable: 'USER', passwordVariable: 'PASS')]) {
sh ''' sh '''
@ -62,15 +56,15 @@ pipeline {
def REPO_NAME = "${env.PRODUCT_GROUP.toLowerCase()}/${env.PRODUCT_NAME.toLowerCase()}" def REPO_NAME = "${env.PRODUCT_GROUP.toLowerCase()}/${env.PRODUCT_NAME.toLowerCase()}"
sh 'echo $VERSION' sh 'echo $VERSION'
def appImage = "${env.REGISTRY}/${REPO_NAME}:${env.VERSION}" def appImage = "${env.REGISTRY}/${REPO_NAME}:${env.VERSION}"
sh "docker build -t ${appImage} -f build/docker/Dockerfile ." sh "cd build/docker && docker build -t ${appImage} ."
sh "docker push ${appImage}" sh "docker push ${appImage}"
def rdbImage = "${env.REGISTRY}/${REPO_NAME}-db:${env.VERSION}" def rdbImage = "${env.REGISTRY}/${REPO_NAME}-db:${env.VERSION}"
sh "docker build -t ${rdbImage} -f build/rdbDocker/Dockerfile ." sh "cd build/docker && docker build -t ${rdbImage} ."
sh "docker push ${rdbImage}" sh "docker push ${rdbImage}"
def udbImage = "${env.REGISTRY}/${REPO_NAME}-update-db:${env.VERSION}" def udbImage = "${env.REGISTRY}/${REPO_NAME}-update-db:${env.VERSION}"
sh "docker build -t ${udbImage} -f build/docker-tools/uD/Dockerfile ." sh "cd build/docker && docker build -t ${udbImage} ."
sh "docker push ${udbImage}" sh "docker push ${udbImage}"
docker logout ${env.REGISTRY} docker logout ${env.REGISTRY}