Benutzer-Werkzeuge

Webseiten-Werkzeuge


tachtler:gitlab_centos_7_-_runner

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
tachtler:gitlab_centos_7_-_runner [2018/01/26 13:54] klaustachtler:gitlab_centos_7_-_runner [2018/02/02 07:23] (aktuell) – [Runner: .gitlab-ci.yml] klaus
Zeile 230: Zeile 230:
 Folgender Benutzer wurde ebenfalls angelegt, was mit folgendem Befehl überprüft werden kann: Folgender Benutzer wurde ebenfalls angelegt, was mit folgendem Befehl überprüft werden kann:
 <code> <code>
-# cat /etc/passwd | grep git 
 # cat /etc/passwd | grep git # cat /etc/passwd | grep git
 gitlab-www:x:400:400::/var/opt/gitlab/nginx:/bin/false gitlab-www:x:400:400::/var/opt/gitlab/nginx:/bin/false
Zeile 304: Zeile 303:
 </code> </code>
  
 +===== Konfiguration: Benutzer: gitlab-runner =====
 +
 +Standardmäßig wird ein **Benutzer** - ''gitlab-runner'' im Dateisystem angelegt und hat sein **''home''**-Verzeichnis unter - ''/home/gitlab-runner'', wie nachfolgender Befehl zeigt:
 +<code>
 +# cat /etc/passwd | grep gitlab-runner
 +gitlab-runner:x:391:388:GitLab Runner:/home/gitlab-runner:/bin/bash
 +</code>
 +
 +Dies soll nun mit nachfolgendem Befehl geändert werden, da **alle andern Komponenten von [[https://gitlab.com/|Gitlab]]** unter **''/opt/gitlab''** liegen.
 +<code>
 +# usermod -m -d /var/opt/gitlab/gitlab-runner gitlab-runner
 +</code>
 +
 +:!: **HINWEIS** - **Die Option ''-m'' kopiert den Inahlt des alten Verzeichnisses in das neue Verzeichnis**
 +
 +Nachfolgender Befehle können zur Überprüfung verwendet werden, ob das Verschieben des **''home''**-Verzeichnisses erfolgreich war:
 +<code>
 +# cat /etc/passwd | grep gitlab-runner
 +gitlab-runner:x:391:388:GitLab Runner:/var/opt/gitlab/gitlab-runner:/bin/bash
 +</code>
 +und
 +<code>
 +# ls -la /var/opt/gitlab/gitlab-runner/
 +total 16
 +drwx------   5 gitlab-runner gitlab-runner   97 Jan 26 14:08 .
 +drwxr-xr-x. 20 root          root          4096 Jan 28 07:35 ..
 +-rw-r--r--   1 gitlab-runner gitlab-runner   18 Sep  6 18:25 .bash_logout
 +-rw-r--r--   1 gitlab-runner gitlab-runner  193 Sep  6 18:25 .bash_profile
 +-rw-r--r--   1 gitlab-runner gitlab-runner  231 Sep  6 18:25 .bashrc
 +drwxrw----   3 gitlab-runner gitlab-runner   18 Jan 26 13:06 .pki
 +</code>
 +
 +:!: **WICHTIG** - **Nachfolgende Änderungen sind im ''systemd''-Startskript erforderlich, damit die Änderungen wirksam werden, da das ''home''-Verzeichnis in den ''systemd''-Startscript Paremetern enthalten ist!**
 +
 +Eine Abfrage des laufenden Prozesses, zeigt die Startparameter deutlich und kann mit nachfolgendem Befehl durchgeführt werden:
 +<code ini>
 +# ps auxwf | grep gitlab-runner
 +root      8367  0.0  0.0 112660   948 pts/0    S+   08:10   0:00             \_ grep --color=auto gitlab-runner
 +root      1025  0.5  0.1  59108 15648 ?        Ssl  Jan27   7:05 /usr/bin/gitlab-runner run --working-directory
 +/home/gitlab-runner --config /etc/gitlab-runner/config.toml --service gitlab-runner --syslog 
 +--user gitlab-runner
 +</code>
 +
 +Zuerst muss der Dienst/Daemon **''gitlab-runner.service''** mit nachfolgendem Befehl gestoppt werden:
 +<code>
 +# systemctl stop gitlab-runner.service
 +</code>
 +
 +Anschließend wird der **''gitlab-runner''** **deinstalliert**, was mit nachfolgendem Befehl durchgeführt werden kann:
 +<code>
 +# gitlab-runner uninstall
 +</code>
 +
 +Die Änderung des **''gitlab-runner''** auf das **neue ''home''-Verzeichnis**, kann mit nachfolgendem Befehl durchgeführt werden, in dem der **''gitlab-runner''** wieder **installiert** wird (**Die Angabe des Benutzers ist zwingend erforderlich**):
 +<code>
 +# gitlab-runner install --working-directory /var/opt/gitlab/gitlab-runner --user gitlab-runner
 +</code>
 +
 +Zur Sicherheit, laden wird die **''systemd''** Einstellungen erneut, mit nachfolgendem Befehl:
 +<code>
 +# systemctl daemon-reload
 +</code>
 +
 +Abschließend kann der Dienst/Daemon **''gitlab-runner.service''** mit nachfolgendem Befehl wieder gestartet werden:
 +<code>
 +# systemctl start gitlab-runner.service
 +</code>
 +
 +Eine Abfrage des nun laufenden Prozesses, zeigt die **neuen** Startparameter deutlich und kann mit nachfolgendem Befehl durchgeführt werden:
 +<code ini>
 +# ps auxwf | grep gitlab-runner
 +root      9587  0.0  0.0 112660   948 pts/0    S+   08:14   0:00             \_ grep --color=auto gitlab-runner
 +root      9546  3.2  0.1  56996 15084 ?        Ssl  08:14   0:00 /usr/bin/gitlab-runner run --working-directory 
 +/var/opt/gitlab/gitlab-runner --config /etc/gitlab-runner/config.toml --service gitlab-runner --syslog 
 +--user gitlab-runner
 +</code>
 +
 +Nahfolgender Befehl zeigt das **geänderte** **''systend''**-Startskript für den Dienst/Daemon **''gitlab-runner.service''**:
 +<code ini>
 +# cat /etc/systemd/system/gitlab-runner.service
 +[Unit]
 +Description=GitLab Runner
 +After=syslog.target network.target
 +ConditionFileIsExecutable=/usr/bin/gitlab-runner
 +
 +[Service]
 +StartLimitInterval=5
 +StartLimitBurst=10
 +ExecStart=/usr/bin/gitlab-runner "run" "--working-directory" "/var/opt/gitlab/gitlab-runner" "--config"
 +"/etc/gitlab-runner/config.toml" "--service" "gitlab-runner" "--syslog" "--user" "gitlab-runner"
 +
 +
 +
 +
 +
 +Restart=always
 +RestartSec=120
 +
 +[Install]
 +WantedBy=multi-user.target
 +</code>
 ===== Konfiguration: Runner registrieren ===== ===== Konfiguration: Runner registrieren =====
  
Zeile 408: Zeile 508:
   - anschließend wieder gelöscht werden   - anschließend wieder gelöscht werden
  
-<code bash>+<code yaml>
 .job_test: .job_test:
   script: &test_script   script: &test_script
Zeile 419: Zeile 519:
   script: *test_script   script: *test_script
 </code> </code>
 +
 +Nachfolgendes **Beispiel** könnte zur Erstellung einer Java ''*.war''-Datei (Web Application Archiv) genutzt werden:
 +<code yaml>
 +stages:
 + - build
 + - test
 +.job_war_build:
 +  script: &war_build
 +  - "sh  ${CI_PROJECT_DIR}/web/WEB-INF/script/war_build_homepage.sh"
 +.job_war_test:
 +  script: &war_test
 +  - "sh  ${CI_PROJECT_DIR}/web/WEB-INF/script/war_test_homepage.sh"
 +job_war_build:
 +  stage: build
 +  script: *war_build
 +job_war_test:
 +  stage: test
 +  script: *war_test
 +</code>
 +
 +:!: **HINWEIS** - **Siehe auch den internen Link: [[tachtler:gitlab_centos_7_-_ci_cd|Gitlab CentOS 7 - CI / CD]]**
  
 ==== Runner: Fehlschlag ==== ==== Runner: Fehlschlag ====
tachtler/gitlab_centos_7_-_runner.1516971288.txt.gz · Zuletzt geändert: 2018/01/26 13:54 von klaus