From ef890f2024786c0306f9ce5c742e684745efd057 Mon Sep 17 00:00:00 2001 From: Jonas Blatt <jonasblatt@uni-koblenz.de> Date: Tue, 15 Oct 2019 23:34:25 +0200 Subject: [PATCH] Feat/gitlabci --- .gitlab-ci.yml | 66 +++++++++++++++++++ dmnverifierfrontend/pom.xml | 18 ++++- .../META-INF/resources/js/dmnVerifier.js | 2 +- 3 files changed, 84 insertions(+), 2 deletions(-) create mode 100644 .gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 00000000..7209cc19 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,66 @@ +--- +# Build JAVA applications using Apache Maven (http://maven.apache.org) +stages: + - build + - test + - deploy + +variables: + MAVEN_OPTS: "-Dhttps.protocols=TLSv1.2 -Dmaven.repo.local=$CI_PROJECT_DIR/.m2/repository -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=WARN -Dorg.slf4j.simpleLogger.showDateTime=true -Djava.awt.headless=true" + + # Backend + MAVEN_CLI_OPTS_1: "-f dmnverifierapi/pom.xml --batch-mode --errors --fail-at-end --show-version -DinstallAtEnd=true -DdeployAtEnd=true" + # Frontend + MAVEN_CLI_OPTS_2: "-f dmnverifierfrontend/pom.xml --batch-mode --errors --fail-at-end --show-version -DinstallAtEnd=true -DdeployAtEnd=true" + +# Cache downloaded dependencies and plugins between builds. +# To keep cache across branches add 'key: "$CI_JOB_NAME"' +cache: + paths: + - .m2/repository + +# Remove trash after builds +default: + after_script: + - sudo rm -rf * + +.validate: &validate + stage: build + script: + - 'sudo mvn $MAVEN_CLI_OPTS_1 test-compile' + - 'sudo mvn $MAVEN_CLI_OPTS_2 test-compile' + +# For merge requests do not `install` but only run `verify`. +# See https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html +.verify: &verify + stage: test + script: + - 'sudo mvn $MAVEN_CLI_OPTS_1 verify' + - 'sudo mvn $MAVEN_CLI_OPTS_2 verify' + except: + - master + +# Validate merge requests using JDK8 +validate:jdk8: + <<: *validate + image: maven:3.6.0-jdk-8 + +# Verify merge requests using JDK8 +verify:jdk8: + <<: *verify + image: maven:3.6.0-jdk-8 + +deploy: + image: busybox:latest + stage: deploy + script: + - sudo systemctl stop dmn-verifier-backend + - sudo systemctl stop dmn-verifier-frontend + - 'sudo mvn $MAVEN_CLI_OPTS_1 clean install -DskipTests' + - sudo cp dmnverifierapi/target/*-runner.jar /opt/dmn/dmn-backend-runner.jar + - 'sudo mvn $MAVEN_CLI_OPTS_2 clean install -DskipTests' + - sudo cp dmnverifierfrontend/target/*-runner.jar /opt/dmn/dmn-frontend-runner.jar + - sudo systemctl start dmn-verifier-backend + - sudo systemctl start dmn-verifier-frontend + only: + - master \ No newline at end of file diff --git a/dmnverifierfrontend/pom.xml b/dmnverifierfrontend/pom.xml index aa6d520a..0ea30ddf 100644 --- a/dmnverifierfrontend/pom.xml +++ b/dmnverifierfrontend/pom.xml @@ -12,12 +12,15 @@ <modelVersion>4.0.0</modelVersion> <artifactId>dmn-verifier-frontend</artifactId> - <build> + <build> <plugins> <plugin> <groupId>io.quarkus</groupId> <artifactId>quarkus-maven-plugin</artifactId> <version>${quarkus.version}</version> + <configuration> + <uberJar>true</uberJar> + </configuration> <executions> <execution> <goals> @@ -26,6 +29,19 @@ </execution> </executions> </plugin> + <plugin> + <artifactId>jandex-maven-plugin</artifactId> + <executions> + <execution> + <goals> + <goal>jandex</goal> + </goals> + <id>make-index</id> + </execution> + </executions> + <groupId>org.jboss.jandex</groupId> + <version>1.0.6</version> + </plugin> <plugin> <artifactId>maven-surefire-plugin</artifactId> <version>${surefire-plugin.version}</version> diff --git a/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerifier.js b/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerifier.js index 25d9d6fd..8f3dcf6a 100644 --- a/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerifier.js +++ b/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerifier.js @@ -1,4 +1,4 @@ -let rootUrl = 'http://192.168.2.109:8080/'; +let rootUrl = 'http://dmn.fg-bks.uni-koblenz.de:8080/'; let dmnApi = rootUrl + 'api/dmn/'; /** -- GitLab