Unterschiede zwischen den Revisionen 1 und 6 (über 5 Versionen hinweg)
Revision 1 vom 2015-04-15 11:01:34
Größe: 1866
Autor: moenoel
Kommentar:
Revision 6 vom 2015-04-22 11:51:29
Größe: 2090
Autor: moenoel
Kommentar:
Gelöschter Text ist auf diese Art markiert. Hinzugefügter Text ist auf diese Art markiert.
Zeile 7: Zeile 7:
Die Anmeldung erfolgt via oAuth über Gitlab, d.h. man meldet sich zuerst bei Gitlab an und klickt dann im Gitlab-CI Interface einfach den "Login with Gitlab". Bei der ersten Anmeldung muss Gitlab-CI authorisiert werden, den Gitlab-Account nutzen zu dürfen. Die Anmeldung erfolgt via oAuth über Gitlab, d.h. man meldet sich zuerst bei Gitlab an und klickt dann im Gitlab-CI Interface einfach den "Login with Gitlab"-Button. Bei der ersten Anmeldung muss Gitlab-CI authorisiert werden, den Gitlab-Account nutzen zu dürfen.
Zeile 9: Zeile 9:
== Runner ==
Zeile 10: Zeile 11:
== Shared Runner == Runnser sind Prozesse, die die Builds/Test ausführen. Dabei ist zwischen "Shared" und "Specific" Runnern zu unterscheiden. Ein "Specific"-Runner bedient gezielt nur ein Projekt, während "Shared"-Runner alle Jobs abarbeiten, die keinen "Specific"-Runner haben und dafür freigeschaltet sind (siehe die Option "{{{Allow shared runners}}}" in den Gitlab-CI-Projekteinstellungen). Da nicht alle Builds in allen Umgebungen funktionieren, kann via Tags gesteuert werden, welche Build-Scripte auf welchen Runnern ausgeführt werden können. Wenn für einen Build keine Tags gesetzt werden, wird ein zufälliger Shared-Runner benutzt.
Zeile 12: Zeile 13:
Auf den Rechnern des Linux-Pool in der E0 des MZH laufen Gitlab-CI-Runner mit den Berechtigungen des lokalen Nutzers {{{gitlab_ci}}} im "shared"-Modus. Um diese nutzen zu können, muss man in den Einstellungen des jeweiligen Gitlab-CI-Projektes die Option {{{Allow run builds on shared runners}}} aktivieren und im Gitlab-Projekt folgenden SSH-Key als Deploy-Key installieren: === Shared-Runner ===
Zeile 14: Zeile 15:
 {{{
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCyMfXH0T1b055MlGaPCbdDxlYA/YrE7MmH6V8RXL9KokU5JprfGmfE63MgvymO/rOtGzqC7O9JETgffIz/AlIe8mLGG4mvPA+lYk6txYvMf5pEfFZZAriG3yID6zKigBkDnXfSOQNG7JqJihFVsGAJF9Il53ejlglcjAAGUK6N6841LPk0SlR
Rh735oiycdH+8f/jBw63lPbXaDlue6OCDlqtS5Y9cZChCv1Jz0k9qLF4wZQ8IRhXM5MFccK4Qk1Z+i1UcCUuGHIe2EQ69kfDfpHx33y1OcAt/iWB8QvOnptkrx2jMCZTNAWblRV49MNa3unFQosAwlk9rX3oqMfF+qmjlz/9rgJpH7pCrPhklec5r2FzsWMHhMKk8qivve+8RJTGx1BVtmS09Gs
r3+pWxGSj6OyxBru7LllTuEsfVHNvWui6yVxIrNWFAXZmn7KaGac4gFv6rYkXrOMGV0hDV4Ped2HpFEoz4fQbtDli2R3kmy+fiqYuuK1zHj+IH2hXrhAN5ESKatZorhRI9MiZvcZXJgIPqg9JYJZiORGmKKLEq5Rc6CXeWfudjf3GlXLxdaQZLJZEU1etT7rxFXbyV7EcyAftr30TXuXlcEZnU8
ZZFt9MEDjN7MGKNUKf36WQ9JVNPynzGX+Is4LB86GSWr7eKr4xo+TB22moiIETc2w== Gitlab-CI-Runner Linux-Pool
}}}
Der FB3 stellt eine Reihe von "Shared"-Runnern zur Verfügung:

|| '''Platform''' || '''Tags''' || '''Hostnamen''' ||
|| Debian Wheezy || {{{linux}}} || {{{x{01..25}}}} ||
|| Mac OS X || {{{darwin}}} || {{{a{01..20}}}} ||
|| Smartos/Illumos|| {{{sunos}}} || {{{gitlab-ci-runner-sunos-1}}} ||
Zeile 22: Zeile 23:

== Specific-Runner ==

Man kann auch eigene Specific-Runner erstellen, die dann nur die eigenen Projekte bedienen. Siehe [[https://about.gitlab.com/gitlab-ci/#gitlab-runner|hier]]. Zu empfehlen ist der [[https://github.com/ayufan/gitlab-ci-multi-runner|inoffizielle Go-Runner]], der schnell und unkompliziert auf gängigen Plattformen eingerichtet werden kann.

Gitlab Continuous Integration

Passend zu Gitlab bietet der FB3 den zugehörigen CI-Dienst Gitlab-CI unter folgender URL an:

Die Anmeldung erfolgt via oAuth über Gitlab, d.h. man meldet sich zuerst bei Gitlab an und klickt dann im Gitlab-CI Interface einfach den "Login with Gitlab"-Button. Bei der ersten Anmeldung muss Gitlab-CI authorisiert werden, den Gitlab-Account nutzen zu dürfen.

Runner

Runnser sind Prozesse, die die Builds/Test ausführen. Dabei ist zwischen "Shared" und "Specific" Runnern zu unterscheiden. Ein "Specific"-Runner bedient gezielt nur ein Projekt, während "Shared"-Runner alle Jobs abarbeiten, die keinen "Specific"-Runner haben und dafür freigeschaltet sind (siehe die Option "Allow shared runners" in den Gitlab-CI-Projekteinstellungen). Da nicht alle Builds in allen Umgebungen funktionieren, kann via Tags gesteuert werden, welche Build-Scripte auf welchen Runnern ausgeführt werden können. Wenn für einen Build keine Tags gesetzt werden, wird ein zufälliger Shared-Runner benutzt.

Shared-Runner

Der FB3 stellt eine Reihe von "Shared"-Runnern zur Verfügung:

Platform

Tags

Hostnamen

Debian Wheezy

linux

x{01..25}

Mac OS X

darwin

a{01..20}

Smartos/Illumos

sunos

gitlab-ci-runner-sunos-1

Fehlende Pakete für Builds/Tests können auf Anfrage nachinstalliert werden. Dazu kann man einfach eine E-Mail an <service AT informatik DOT uni-bremen DOT de> senden.

Specific-Runner

Man kann auch eigene Specific-Runner erstellen, die dann nur die eigenen Projekte bedienen. Siehe hier. Zu empfehlen ist der inoffizielle Go-Runner, der schnell und unkompliziert auf gängigen Plattformen eingerichtet werden kann.

Dienste/Gitlab/CI (zuletzt geändert am 2021-11-05 13:27:31 durch manal)