diff --git a/Jenkinsfile b/Jenkinsfile
new file mode 100644
index 0000000..275d5e2
--- /dev/null
+++ b/Jenkinsfile
@@ -0,0 +1,82 @@
+pipeline {
+ agent any
+
+ environment {
+ PRODUCT_NAME = '<%%RESERVED_NAME%%>'
+ PRODUCT_GROUP = '<%%RESERVED_GROUPNAME%%>'
+ }
+
+ stages {
+ stage('Checkout') {
+ steps {
+ checkout scm
+ }
+ }
+ 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()
+ }
+ }
+ }
+
+ stage('Make gradlew executable') {
+ steps {
+ sh 'chmod +x ./gradlew'
+ }
+ }
+
+ stage('Build with Gradle') {
+ steps {
+ sh './gradlew clean'
+ sh './gradlew nTDC nbackup build copyDist publish dockerFile dockerUD rdbDockerFile'
+ }
+ }
+
+ stage('Build and Push Docker Images') {
+ steps {
+ script {
+ withCredentials([usernamePassword(credentialsId: 'build', usernameVariable: 'USER', passwordVariable: 'PASS')]) {
+ sh '''
+ echo "$PASS" | docker login --username "$USER" --password-stdin $REGISTRY
+ '''
+ def appImage = "<%%FACTORY_REGISTRY_IMAGE%%>:${env.VERSION}"
+ sh "cd build/docker && docker build -t ${appImage} ."
+ sh "docker push ${appImage}"
+
+ def rdbImage = "<%%FACTORY_REGISTRY_IMAGE%%>-db:${env.VERSION}"
+ sh "cd build/docker && docker build -t ${rdbImage} ."
+ sh "docker push ${rdbImage}"
+
+ def udbImage = "<%%FACTORY_REGISTRY_IMAGE%%>-update-db:${env.VERSION}"
+ sh "cd build/docker && docker build -t ${udbImage} ."
+ sh "docker push ${udbImage}"
+ }
+ }
+ }
+ }
+ }
+
+ post {
+ success {
+ echo "Проект ${env.PRODUCT_NAME} успешно собран на версии ${env.VERSION}"
+ }
+ failure {
+ echo "Проект ${env.PRODUCT_NAME} не собрался на версии ${env.VERSION}!"
+ }
+ }
+}
\ No newline at end of file
diff --git a/build.gradle b/build.gradle
index 5f91686..b5f0fca 100644
--- a/build.gradle
+++ b/build.gradle
@@ -23,7 +23,7 @@ ncore {
sourceEncoding = 'UTF-8'
}
-group = 'biz.redsoft.<%%RESERVED_NAME%%>'
+group = '<%%RESERVED_GROUPNAME%%>'
repositories {
maven {
diff --git a/ncore-properties.xml b/ncore-properties.xml
index e367d56..6421077 100644
--- a/ncore-properties.xml
+++ b/ncore-properties.xml
@@ -4,7 +4,8 @@
Configuration settings for ncore platform
- <%%RESERVED_NAME%%>
+ <%%RESERVED_GROUPNAME%%>
+ <%%RESERVED_NAME%%>
<%%RESERVED_NAME%%> ncore project
diff --git a/src/main/java/biz/redsoft/sample/Product.java b/src/main/java/biz/redsoft/sample/Product.java
index 4d0ee6c..32e4268 100644
--- a/src/main/java/biz/redsoft/sample/Product.java
+++ b/src/main/java/biz/redsoft/sample/Product.java
@@ -1,4 +1,4 @@
-package biz.redsoft.<%%RESERVED_NAME%%>;
+package <%%RESERVED_GROUPNAME%%>;
import biz.redsoft.ncore.system.application.Application;
diff --git a/src/main/java/biz/redsoft/sample/Version.java b/src/main/java/biz/redsoft/sample/Version.java
index 8c428ee..95cea54 100644
--- a/src/main/java/biz/redsoft/sample/Version.java
+++ b/src/main/java/biz/redsoft/sample/Version.java
@@ -1,4 +1,4 @@
-package biz.redsoft.<%%RESERVED_NAME%%>;
+package <%%RESERVED_GROUPNAME%%>;
import biz.redsoft.util.IncorrectVersionFormat;
import biz.redsoft.util.VersionUtils;
diff --git a/src/main/resources/META-INF/resources/VAADIN/themes/img/page_white_delete.png b/src/main/resources/META-INF/resources/VAADIN/themes/img/page_white_delete.png
deleted file mode 100644
index 644935f..0000000
Binary files a/src/main/resources/META-INF/resources/VAADIN/themes/img/page_white_delete.png and /dev/null differ
diff --git a/src/main/resources/META-INF/resources/VAADIN/themes/img/upload_file.gif b/src/main/resources/META-INF/resources/VAADIN/themes/img/upload_file.gif
deleted file mode 100644
index 9bffce7..0000000
Binary files a/src/main/resources/META-INF/resources/VAADIN/themes/img/upload_file.gif and /dev/null differ
diff --git a/src/main/webapp/WEB-INF/ncore-properties.xml b/src/main/webapp/WEB-INF/ncore-properties.xml
index a64fdf7..1f55ecd 100644
--- a/src/main/webapp/WEB-INF/ncore-properties.xml
+++ b/src/main/webapp/WEB-INF/ncore-properties.xml
@@ -4,7 +4,8 @@
Configuration settings for ncore platform
- <%%RESERVED_NAME%%>
+ <%%RESERVED_GROUPNAME%%>
+ <%%RESERVED_NAME%%>
<%%RESERVED_NAME%%> ncore project
diff --git a/src/test/java/biz/redsoft/sample/TomcatStarter.java b/src/test/java/biz/redsoft/sample/TomcatStarter.java
index cc6f804..772526b 100644
--- a/src/test/java/biz/redsoft/sample/TomcatStarter.java
+++ b/src/test/java/biz/redsoft/sample/TomcatStarter.java
@@ -35,7 +35,7 @@
* exception statement from your version.
*/
-package biz.redsoft.<%%RESERVED_NAME%%>;
+package <%%RESERVED_GROUPNAME%%>;
import java.io.File;
import java.io.IOException;