Skip to content
Snippets Groups Projects
Commit cd359375 authored by Michal Petrovič's avatar Michal Petrovič Committed by xkoloma1
Browse files

Resolve "use artifacts in gitlab CI"

parent 91f6fd72
Branches
1 merge request!3Resolve "use artifacts in gitlab CI"
variables:
DOCKER_HOST: $DOCKER_HOST_BIO
PROJECT_NAME: "backend"
cache:
key: $CI_COMMIT_REF_NAME
paths:
- build/
stages:
- analyse
- build
- verification
- publish
- deploy
# ===========================================================================
# Stage: analyse
# ===========================================================================
include:
- template: Code-Quality.gitlab-ci.yml
code_quality:
stage: analyse
services: [] # Shut off Docker-in-Docker
variables:
REPORT_FORMAT: html
artifacts:
paths: [gl-code-quality-report.html]
# second job has to be run to create both artefacts
code_quality_json:
extends: code_quality
variables:
REPORT_FORMAT: json
artifacts:
paths: [gl-code-quality-report.json]
# ===========================================================================
......@@ -49,6 +21,7 @@ gradlew-bootJar:
script:
- ./gradlew bootJar
docker-build-latest:
stage: build
image: docker:git
......@@ -62,7 +35,12 @@ docker-build-latest:
- mkdir -p build
script:
- docker build -t $DOCKER_NAMESPACE/$PROJECT_NAME:latest .
- docker save -o build/image.tar $DOCKER_NAMESPACE/$PROJECT_NAME:latest
- docker save $DOCKER_NAMESPACE/$PROJECT_NAME:latest | bzip2 > build/image.tar.bz2
artifacts:
paths:
- build/image.tar.bz2
expire_in: 10 mins # Optional: Set an expiration time for the artifact
docker-build-tag:
stage: build
......@@ -74,7 +52,12 @@ docker-build-tag:
- mkdir -p build
script:
- docker build -t $DOCKER_NAMESPACE/$PROJECT_NAME:$CI_COMMIT_TAG .
- docker save -o build/image.tar $DOCKER_NAMESPACE/$PROJECT_NAME:$CI_COMMIT_TAG
- docker save $DOCKER_NAMESPACE/$PROJECT_NAME:$CI_COMMIT_TAG | bzip2 > build/image.tar.bz2
artifacts:
paths:
- build/image.tar
expire_in: 10 mins # Optional: Set an expiration time for the artifact
# ===========================================================================
......@@ -91,6 +74,7 @@ verification-unit:
when: always
reports:
junit: build/test-results/test/**/TEST-*.xml
expire_in: 10 mins
# ===========================================================================
# Stage: publish
......@@ -104,6 +88,7 @@ docker-push-latest:
before_script:
- docker login -u $DOCKER_USERNAME -p $DOCKER_TOKEN $DOCKER_REGISTRY
script:
- bzip2 -d -c build/image.tar.bz2 > build/image.tar
- docker load -i build/image.tar
- docker push $DOCKER_NAMESPACE/$PROJECT_NAME:latest
......@@ -116,10 +101,10 @@ docker-push-tag:
before_script:
- docker login -u $DOCKER_USERNAME -p $DOCKER_TOKEN $DOCKER_REGISTRY
script:
- bzip2 -d -c build/image.tar.bz2 > build/image.tar
- docker load -i build/image.tar
- docker push $DOCKER_NAMESPACE/$PROJECT_NAME:$CI_COMMIT_TAG
# ===========================================================================
# Stage: deploy
# ===========================================================================
......@@ -146,3 +131,5 @@ deploy-bioinformatics.ibp.cz:
- scp docker-compose.yml root@bioinformatics.ibp.cz:/opt/
- ssh root@bioinformatics.ibp.cz "cd /opt && export $(xargs < .env) && docker stack deploy dna-analyser -c docker-compose.yml"
......@@ -4,7 +4,7 @@ COPY . /workspace/app
RUN --mount=type=cache,target=/root/.gradle ./gradlew clean build
RUN mkdir -p build/dependency && (cd build/dependency; jar -xf ../libs/*-SNAPSHOT.jar)
FROM eclipse-temurin:11-jdk-alpine
FROM eclipse-temurin:11-jre-alpine
VOLUME /tmp
EXPOSE 8080
ARG DEPENDENCY=/workspace/app/build/dependency
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment