mirror of
https://gitlab.dit.htwk-leipzig.de/htwk-software/htwkalender.git
synced 2025-07-16 09:38:49 +02:00
Resolve "testing building and linting pipeline for backend"
This commit is contained in:
55
.gitlab-ci.yml
Normal file
55
.gitlab-ci.yml
Normal file
@ -0,0 +1,55 @@
|
||||
stages:
|
||||
- build
|
||||
- test
|
||||
- docker
|
||||
|
||||
build-backend:
|
||||
image: golang:1.21-alpine
|
||||
stage: build
|
||||
rules:
|
||||
- changes:
|
||||
- backend/**/*
|
||||
script:
|
||||
- cd backend
|
||||
- go build -o htwkalender
|
||||
artifacts:
|
||||
paths:
|
||||
- backend/htwkalender
|
||||
- backend/go.sum
|
||||
- backend/go.mod
|
||||
|
||||
test:
|
||||
image: golang:1.21-alpine
|
||||
stage: test
|
||||
rules:
|
||||
- changes:
|
||||
- backend/**/*
|
||||
script:
|
||||
- cd backend
|
||||
- go test -v ./...
|
||||
dependencies:
|
||||
- build-backend
|
||||
|
||||
build-backend-image:
|
||||
stage: docker
|
||||
image: docker:20.10.16
|
||||
services:
|
||||
- name: docker:20.10.16-dind
|
||||
alias: docker
|
||||
tags:
|
||||
- image
|
||||
variables:
|
||||
IMAGE_TAG: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG
|
||||
DOCKER_HOST: tcp://docker:2376
|
||||
DOCKER_TLS_CERTDIR: "/certs"
|
||||
DOCKER_TLS_VERIFY: 1
|
||||
DOCKER_CERT_PATH: "/certs/client"
|
||||
script:
|
||||
- cd backend
|
||||
- docker login -u $CI_DOCKER_REGISTRY_USER -p $CI_DOCKER_REGISTRY_PASSWORD $CI_DOCKER_REGISTRY
|
||||
- docker build -t htwkalender-backend$IMAGE_TAG .
|
||||
- docker tag htwkalender-backend$IMAGE_TAG $CI_DOCKER_REGISTRY_USER/htwkalender:backend
|
||||
- docker push $CI_DOCKER_REGISTRY_USER/htwkalender:backend
|
||||
only:
|
||||
- main
|
||||
- development
|
Reference in New Issue
Block a user