diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 2f71f65f0fe4baaca54384f0d6690d65d6e4a887..67a0d0b4f27a98e7092bedf67202d618ed9728bd 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,4 +1,5 @@ stages: + - build - generate-test-env - test - dockerize @@ -7,6 +8,20 @@ variables: # to avoid "fatal: git fetch-pack: expected shallow list" GIT_STRATEGY: clone +build: + stage: build + tags: + - docker + only: + refs: + - ci-test + script: + - mvn clean package -DskipTests -DfinalName=vospace + artifacts: + paths: + - target/vospace.jar + expire_in: 7 days + pre_test: stage: generate-test-env tags: @@ -37,3 +52,15 @@ test: coverage: '/coverage=\d+\.\d+/' only: - ci-test + +dockerize: + stage: dockerize + tags: + - shell + only: + refs: + - ci-test + script: + - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY + - docker build -t $CI_REGISTRY_IMAGE . + - docker push $CI_REGISTRY_IMAGE diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..034193f0ba5ff7afbfccce1d8d17c3f76ec45f93 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,4 @@ +FROM openjdk:14-jdk-alpine +ARG JAR_FILE=target/vospace.jar +COPY ${JAR_FILE} vospace.jar +ENTRYPOINT ["java","-jar","/vospace.jar"] diff --git a/pom.xml b/pom.xml index de3a2fb61ca801f572d0f8422c03ae68d10ef3a1..4acaeee5e8df51bf66fa6d6d7ddd874c4549f487 100644 --- a/pom.xml +++ b/pom.xml @@ -18,6 +18,7 @@ <java.version>11</java.version> <!-- File catalog repository directory --> <init_database_scripts_path>../../../vospace-file-catalog</init_database_scripts_path> + <finalName>${project.artifactId}-${project.version}</finalName> </properties> <dependencies> @@ -114,6 +115,7 @@ </repositories> <build> + <finalName>${finalName}</finalName> <testResources> <testResource> <directory>src/test/resources</directory>