Skip to content
Snippets Groups Projects
Commit 991b780c authored by Sebastian Karius's avatar Sebastian Karius
Browse files

refactor

parent cba34388
No related branches found
No related tags found
No related merge requests found
# CI/CD Templates # CI/CD Templates
Repository für Gitlab CI/CD Templates Repository für Gitlab CI/CD Templates
\ No newline at end of file
[TOC]
## Components
### docker-compose
Baut und pusht eine vorhandene `docker-compose.yml`.
* Testet, ob eine `docker-compose.yml` vorhanden ist
* Container-Tags
* Für den Branch 'main' wird der Tag 'latest' gestzt
* Für jeden anderen Branch wird der Name des Branches als Tag gesetzt
* Für einen Git-Tag wird der Name des Git-Tag als Tag gesetzt
Setzt die Umgebungsvariablen:
* DOCKER_REGISTRY - Name der Docker Container Registry inklusive des Subpfades für den Projektordner
* DOCKER_IMAGE_TAG - Container-Tag
#### Beispiel
Im Repository sollten diese Dateien angelegt werden.
```yaml
# docker-compose.yml
services:
app:
image: ${DOCKER_REGISTRY}/app:${DOCKER_IMAGE_TAG}
build:
dockerfile: Dockerfile
context: .
```
```dotenv
# .env
# Docker compose build environment
DOCKER_REGISTRY='mcr.informatik.uni-halle.de/abcde/repostory'
DOCKER_IMAGE_TAG='latest'
```
spec: spec:
inputs: inputs:
stage: job-stage:
default: build default: build
job-name:
default: docker-compose-build
build_main: build_main:
type: boolean type: boolean
default: true default: true
...@@ -16,10 +18,10 @@ spec: ...@@ -16,10 +18,10 @@ spec:
description: "Build a container with the git tag name as container tag." description: "Build a container with the git tag name as container tag."
--- ---
docker-compose-build: "$[[ inputs.job-name ]]":
# Use the official docker image. # Use the official docker image.
image: docker:27 image: docker:27
stage: $[[ inputs.stage ]] stage: $[[ inputs.job-stage ]]
services: services:
- name: docker:27-dind - name: docker:27-dind
alias: docker alias: docker
......
# docker-compose-build
Baut und pusht eine vorhandene `docker-compose.yml`.
* Testet ob eine `docker-compose.yml` vorhanden ist
* Container-Tags
* Für den Branch 'main' wird der Tag 'latest' gestzt
* Für jeden anderen Branch wird der Name des Branches als Tag gesetzt
* Für einen Git-Tag wird der Name des Git-Tag als Tag gesetzt
Setzt die Umgebungsvariablen:
* DOCKER_REGISTRY - Name der Docker Container Registry inklusive des Subpfades für den Projektordner
* DOCKER_IMAGE_TAG - Container-Tag
## Beispiel
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment