Einrichtung CI (Setup CI)
Die CI-Pipeline (Gitlab-CI) soll für das Backendproject eingerichtet werden.
Zunächst sollen drei Jobs angelegt werden:
- test
- code-quality (dieser wird automatisch hinzugefügt, wenn man SAST der Gitlab-CI einbindet; der tatsächliche Name des Jobs weicht vermutlich ab, das ist aber gewünscht)
- package
Der first Job führt die Tests aus (auch wenn es zum jetzigen Zeitpunkt eventuell noch keine Tests gibt). Das Ergebnis der Tests soll als junit-Report als Gitlab-Artefakt gespeichert werden. Dabei soll auch gleich (wenn möglich) die Testabdeckung erfasst werden. Der zweite Job führt eine statische Quellcodeanalyse durch. Der dritte Job erstellt ein Sources-Image, das auf den Kubernetes-Clustern des UFZ laufen kann.
test
Hinweise zu - Test-Artefakt: https://docs.gitlab.com/ee/ci/pipelines/job_artifacts.html#artifactsreportsjunit
- Testabdeckung: https://docs.gitlab.com/ee/ci/pipelines/job_artifacts.html#artifactsreportscobertura
code-quality
Hinweise zu - https://docs.gitlab.com/ee/ci/pipelines/job_artifacts.html#artifactsreportssast
- https://docs.gitlab.com/ee/user/application_security/sast/index.html
package
Hinweise zu
Jira-Link
Akzeptanzkriterien
-
test
-job, der einen Junit-Report erstellt und die Testabdeckung ermittelt -
code-quality
-job mit Gitlab SAST; es sollen nur die relevanten Prüfungen mittelsSAST_DEFAULT_ANALYZERS
ausgewählt werden -
package
-job, der ein Sources-Image erstellt -
CI-Pipeline läuft durch -
Dokumentation im Confluence -
Postgres Version ist 10.4, analog zu backend-tmd
Review
-
test
-job, der einen Junit-Report erstellt und die Testabdeckung ermittelt -
code-quality
-job mit Gitlab SAST; es sollen nur die relevanten Prüfungen mittelsSAST_DEFAULT_ANALYZERS
ausgewählt werden -
package
-job, der ein Sources-Image erstellt -
CI-Pipeline läuft durch -
Dokumentation im Confluence -
Postgres Version ist 10.4, analog zu backend-tmd
Edited by Alexander Harpke