Changes for page GitLab Erklärungen

Last modified by pmeyer on 2025/09/12 04:41

edited by Pascal Meyer
on 2025/08/15 00:27
Change comment: There is no comment for this version
edited by sbeyer1
on 2025/08/25 11:32
Change comment: There is no comment for this version

Summary

Details

insert_drive_file Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.PascalMeyer
1 +XWiki.sbeyer1
Content
... ... @@ -1,3 +1,5 @@
1 +[[image:Main.Organisatorisches.WebHome@softwareprojekt_logo_transparent.png||alt="SoftwareprojektLogo.png" data-xwiki-image-style-alignment="end" height="136" width="309"]]
2 +
1 1  {{toc/}}
2 2  
3 3  Ab dem Wintersemester 2025/2026 wird die Projektstrukturierung und der [[Scrum>>doc:Main.Scrum.WebHome]]-Prozess in GitLab durchgeführt. Für die wichtigsten, grundlegendsten Funktion gibt es nachfolgend als Einstiegshilfe einige Erklärungen.
... ... @@ -156,7 +156,7 @@
156 156  
157 157  = Erstellung eines Wikis =
158 158  
159 -Im Softwareprojekt müssen viele Daten dokumentiert (siehe [[Anforderungsanalys>>doc:Main.Aufgabenstellung.WebHome||anchor="Teilaufgabe2:Anforderungsanalyse28Dokumentation29"]] und [[Entwurf>>doc:Main.Aufgabenstellung.WebHome||anchor="HTeilaufgabe3:Entwurf28Dokumentation29"]] sowie [[Dokumentation>>doc:Main.Anforderungen Software.WebHome||anchor="HAnforderungen:Dokumentation"]]) werden und unter anderem auch ein Projekttagebuch (siehe [[Projekttagebuch>>doc:Main.Anforderungen Gruppen.WebHome||anchor="HProjekttagebuch"]] geführt werden. Dies wird in der Wiki-Funktion von GitLab umgesetzt. Diese Option ist in der Projektnavigationsleiste unter dem Reiter **"Wiki" **vorzufinden.
161 +Im Softwareprojekt müssen viele Daten dokumentiert (siehe [[Anforderungsanalyse>>doc:Main.Aufgabenstellung.WebHome||anchor="Teilaufgabe2:Anforderungsanalyse28Dokumentation29"]] und [[Entwurf>>doc:Main.Aufgabenstellung.WebHome||anchor="HTeilaufgabe3:Entwurf28Dokumentation29"]] sowie [[Dokumentation>>doc:Main.Anforderungen Software.WebHome||anchor="HAnforderungen:Dokumentation"]]) werden und unter anderem auch ein Projekttagebuch (siehe [[Projekttagebuch>>doc:Main.Anforderungen Gruppen.WebHome||anchor="HProjekttagebuch"]] geführt werden. Dies wird in der Wiki-Funktion von GitLab umgesetzt. Diese Option ist in der Projektnavigationsleiste unter dem Reiter **"Wiki" **vorzufinden.
160 160  
161 161  [[image:Wiki1.png||data-xwiki-image-style-border="true"]]
162 162  
... ... @@ -176,3 +176,62 @@
176 176  = Zeiterfassung in GitLab =
177 177  
178 178  Im Rahmen des Softwareprojekts sollt ihr eure Arbeitszeit präzise festhalten. Dazu könnt ihr direkt auf angelegten Issues/Tasks/User Stories in dem Bereich **Time tracking** eure Arbeitszeit Aufgabenspezifisch eintragen. In dem Fenster könnt ihr eintragen wie viel Zeit ihr gearbeitet habt, an welchem Tag ihr gearbeitet habt, um nachträgliches verbuchen von Arbeitszeit zu ermöglichen, und eine kleine Zusammenfassung angeben. Sollte bereits Zeit erfasst worden sein, muss über das Plus (siehe Bild oben rechts im roten Rahmen) Zeit gebucht werden.[[image:1754139824426-497.png]]
181 +
182 +----
183 +
184 += GitLab Pipelines =
185 +
186 +Eine GitLab Pipeline ist eine in //.gitlab-ci.yml// definierte Abfolge von Jobs. Jobs können dabei beispielsweise die automatische Ausführung von Tests sein.
187 +
188 +== Pipeline im Basisprojekt v2 ==
189 +
190 +Die Pipeline im Basisprojekt ist auf zwei Stages mit jeweils einem Job aufgeteilt und wird im Folgenden Schritt für Schritt erklärt. Ihr dürft im Rahmen des Softwareprojekts, wenn nötig, die Pipeline um weitere Jobs oder Stages erweitern. **Die bestehenden Jobs sollten allerdings **(von Studierenden) **nicht ge**
191 +
192 +{{code language="yaml"}}
193 +stages:
194 + - verify
195 + - deploy
196 +
197 +verify-job:
198 + stage: verify
199 + image: eclipse-temurin:21-jdk-alpine
200 + script:
201 + - "./mvnw clean verify"
202 + rules:
203 + - if: $CI_PIPELINE_SOURCE == "schedule"
204 + when: always
205 + allow_failure: true
206 + - when: always
207 + allow_failure: false
208 +
209 +deploy_stats_pages:
210 + stage: deploy
211 + image: maven:3.9.9-amazoncorretto-21-al2023
212 + variables:
213 + DEVELOPMENT_BRANCH_NAME: "development"
214 + FETCH_MULTITHREAD: "true" #options are true/false
215 + LOGLEVEL: "SHORT" #options are OFF, SHORT, LONG. Has an effect on the amount of logging when data is being added
216 + #TIME_FRAMES: "01.01.2025,31.03.2025,40,Zeitraum01;01.04.2025,31.05.2025,35" #Format start,end,minHours[,name];anotherTimeframe;anotherTimeframe;...
217 + script:
218 + - yum install -y git rsync
219 + - git clone https://gitlab.swl.informatik.uni-oldenburg.de/GA/gitlab2data.git
220 + - cd gitlab2data
221 + - mvn clean package
222 + - java -jar target/GitLab2Data-1.0-SNAPSHOT-jar-with-dependencies.jar
223 + - cd ..
224 + - mkdir -p public/data
225 + - rm -f public/data/*.json
226 + - cp gitlab2data/*.json public/data/
227 + - git clone https://gitlab.swl.informatik.uni-oldenburg.de/GA/data4visual.git repo
228 + - rsync -av --exclude='data/' --exclude='.git' --exclude='.gitignore' repo/ public/
229 + artifacts:
230 + paths:
231 + - public
232 + pages:
233 + path_prefix: "stats" #to allow for parallel deployments of the projects own page don't make the stats site the main deployment
234 + expire_in: never
235 + rules:
236 + - if: $CI_PIPELINE_SOURCE == "schedule"
237 + when: always
238 + - when: never
239 +{{/code}}