backend/.gitlab-ci.yml

65 lines
1.3 KiB
YAML

#Trying to set up the CI, probably won't work
image: gradle:jdk13
stages:
- build
- test
- code_quality
- deploy
#Sets up the docker
smarthut_deploy:
stage: deploy
image: docker:latest
tags:
- dind
services:
- docker:dind
variables:
DOCKER_DRIVER: overlay
before_script:
- docker version
- docker info
- docker login -u smarthutsm -p $CI_DOCKER_PASS #GiovanniRoberto
script:
- "docker build -t smarthutsm/smarthut-backend:${CI_COMMIT_BRANCH} --pull ."
- "docker push smarthutsm/smarthut-backend:${CI_COMMIT_BRANCH}"
after_script:
- docker logout
only:
- dev
- master
#base checks for the code
build:
stage: build
script:
- gradle clean
- gradle assemble
artifacts:
paths:
- build/libs/*.jar
expire_in: 1 week
#Runs the various tests and creates a report on the test coverage
test:
stage: test
script:
- gradle test
artifacts:
paths:
- build/test-results/test/TEST-*.xml
reports:
junit: build/test-results/test/TEST-*.xml
#Runs a quality check on the code and creates a report on the codes
code_quality:
stage: code_quality
allow_failure: true
script:
- gradle cpdCheck
artifacts:
paths:
- build/reports/cpd/cpdCheck.xml
#create a report on the quality of the code
expose_as: 'Code Quality Report'