User Tools

Site Tools


buildbot:worker

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
buildbot:worker [2023/01/04 16:29] – msvoelkerbuildbot:worker [2023/06/22 11:01] (current) – msvoelker
Line 3: Line 3:
 Buildbot Worker melden sich beim Buildbot Master mit ihrem Namen und einem Passwort an. Sobald der Master einen Build-Auftrag erhält, gibt er die auszuführenden Schritte an seine Worker weiter. Buildbot Worker melden sich beim Buildbot Master mit ihrem Namen und einem Passwort an. Sobald der Master einen Build-Auftrag erhält, gibt er die auszuführenden Schritte an seine Worker weiter.
  
-===== Allgemeine Verwaltung =====+===== Zugriff =====
  
-Dateien, wie z. B. Skripte finden sich hier: [[https://github.com/nplab/Misc/tree/master/buildbot/bb-worker]]+Es gibt die folgenden Worker.
  
-==== Zugriff ====+^ Worker Name ^ [[:hosts|Host]] Name ^ Kommentar ^ 
 +| freebsd | buildbot FreeBSD | Läuft in der gleichen VM wie der Buildbot Master. | 
 +| ubuntu | buildbot Ubuntu | VM | 
 +| windows | buildbot Windows | VM | 
 +| openbsd | buildbot OpenBSD | VM | 
 +| netbsd | buildbot NetBSD | VM | 
 +| Raspbian-ARM | buildbot ARM | Raspberry Pi im Rumpers Room. | 
 +| osx | buildbot macOS | Mac mini neben dem Drucker. |
  
-SSH Zugriff (ipfw Firewall auf gw-tuexen schränkt Zugriff ein, lässt SSH aber durch). Buildbot Worker laufen unter Nutzer buildbot.+Zugriff per SSH (ipfw Firewall auf gw-tuexen schränkt Zugriff ein, lässt SSH aber durch). Buildbot Worker laufen unter Nutzer buildbot.
  
   sudo su buildbot   sudo su buildbot
   cd ~/bb-worker   cd ~/bb-worker
  
-==== Erstellen ====+==== Windows ====
  
-Zum Erstellen der Worker gibt es das Skript create_worker.sh. Das führt die Befehle zum Erstellen des Workers aus.+Zugriff per Remote Desktop mit Nutzer nplab und Standard root-Passwort (Nutzer buildbot hat auch das Standard root-Passwort). Wird blockiert von ipfw Firewall auf gw-tuexen. Deshalb nur aus einem internen Netz z. B. aus dem roten Netz möglich.
  
-Soll z. B. ein freebsd Worker für sctplab/usrsctp zu erstellt werden, ist das der Folgende:+===== Starten =====
  
-  buildbot-worker create-worker sctplab-usrsctp buildbot.nplab.de:19989 freebsd buildbotsBuildBuilts+Zum Starten bzw. Neustarten gibt es das Skript start_worker.sh im github Repository [[https://github.com/nplab/Misc/tree/master/buildbot/bb-worker]]. Das führt die Befehle zum Neustarten aller Worker auf dem System aus.
  
-Dadurch wird ein Verzeichnis sctplab-usrsctp erstellt mit einer buildbot.tac Datei, die Einstellungen enthält. +  sudo su buildbot 
- +  cd ~/bb-worker 
-==== Starten ==== +  ./start_worker.sh
- +
-Zum Starten bzw. Neustarten gibt es das Skript start_worker.sh. Das führt die Befehle zum Neustarten aller Worker auf dem System aus.+
  
 Um z. B. einen Worker für sctplab/usrsctp neu zu starten, sind das die Folgenden: Um z. B. einen Worker für sctplab/usrsctp neu zu starten, sind das die Folgenden:
Line 32: Line 37:
   buildbot@buildbot:~/bb-worker % buildbot-worker stop sctplab-usrsctp   buildbot@buildbot:~/bb-worker % buildbot-worker stop sctplab-usrsctp
   buildbot@buildbot:~/bb-worker % buildbot-worker start sctplab-usrsctp   buildbot@buildbot:~/bb-worker % buildbot-worker start sctplab-usrsctp
 +  
 +Zugriff per Remote Desktop mit Nutzer weinrank und Standard root-Passwort (Nutzer buildbot hat auch das Standard root-Passwort). Wird blockiert von ipfw Firewall auf gw-tuexen. Deshalb nur aus einem internen Netz z. B. aus dem roten Netz.
  
-===== Worker Starten =====+==== macOS ====
  
-Einige Worker laufen als bhyve VM und einige auf eigener Hardware.+buildbot-worker wurde in einer python Umgebung unter ~/bb-worker installiert. Bevor das Programm ausgeführt werden kann, muss die Umgebung initialisiert werden mit
  
-==== FreeBSD, OpenBSD, NetBSD, Ubuntu ====+  source ./venv/bin/activate
  
-bhyve VMs (bei FreeBSD ist es die gleiche wie die für den Master).+==== Windows ====
  
-    sudo su buildbot +In der Remote Desktop Session von nplab für jeden Worker einmal cmd als Nutzer buildbot starten und in das buildbot Verzeichnis wechseln.
-    cd ~/bb-worker +
-    ./start_worker.sh+
  
-==== Raspbian Linux (ARM) ====+  runas /savecred /user:buildbot %windir%\system32\cmd.exe 
 +  cd \users\buildbot\bb-worker
  
-Raspberry Pi im Rumpers Room.+Darin den Worker starten mit:
  
-    sudo su buildbot +  start_sctplab-usrsctp.bat
-    cd ~/bb-worker +
-    ./start_worker.sh+
  
-==== macOS ====+bzw.
  
-Mac mini neben dem Drucker.+  start_msvoelker-usrsctp.bat
  
-    sudo su buildbot +welche den jewiligen worker starten mit
-    cd ~/bb-worker +
-    ./start_worker.sh+
  
-==== Windows ====+  buildbot-worker start [sctplab|msvoelker]-usrsctp
  
-VM 212.201.121.115 +===== Installation =====
  
-=== Zugriff ===+Zum Erstellen eines Workers gibt es das Skript create_worker.sh im github Repository [[https://github.com/nplab/Misc/tree/master/buildbot/bb-worker]]. Das führt die Befehle zum Erstellen aller Worker auf dem System aus.
  
-Zugriff per Remote Desktop mit Nutzer weinrank und Standard root-Passwort (Nutzer buildbot hat auch das Standard root-Passwort). Wird blockiert von ipfw Firewall auf gw-tuexen. Deshalb nur aus einem internen Netz z. B. aus dem roten Netz.+Soll z. B. ein freebsd Worker für sctplab/usrsctp erstellt werden, ist das der Folgende:
  
 +  buildbot-worker create-worker sctplab-usrsctp buildbot.nplab.de:19989 freebsd buildbotsBuildBuilts
  
-   +Dadurch wird ein Verzeichnis sctplab-usrsctp erstellt mit einer buildbot.tac Datei, die Einstellungen enthält. Bevor ein Worker erstellt werden kann, muss das jeweilige System eingerichtet werden.
-=== Worker starten === +
- +
-In der Remote Desktop Session von weinrank für jeden Worker einmal cmd als Nutzer buildbot starten.  +
- +
-  runas /savecred /user:buildbot %windir%\system32\cmd.exe +
- +
-Darin den Worker starten mit:+
  
-  cd \users\buildbot\bb-worker 
-  buildbot-worker start sctplab-usrsctp 
-   
-===== Worker installieren ===== 
 ==== FreeBSD ==== ==== FreeBSD ====
  
Line 89: Line 81:
 Benötigte Software installieren. Benötigte Software installieren.
  
-    pkg install py39-buildbot-worker automake autotools cmake valgrind bash git python bison+  pkg install py39-buildbot-worker automake autotools cmake valgrind bash git python bison
  
 Wechseln als buildbot Nutzer. Wechseln als buildbot Nutzer.
  
-    sudo su buildbot+  sudo su buildbot
  
 Soft Link zum bb-worker Verzeichnis im github Repository erstellen (siehe Installation master). Soft Link zum bb-worker Verzeichnis im github Repository erstellen (siehe Installation master).
  
-    cd ~ +  cd ~ 
-    ln -s Misc/buildbot/bb-worker bb-worker+  ln -s Misc/buildbot/bb-worker bb-worker
  
 Worker erstellen mit WORKERNAME=freebsd Worker erstellen mit WORKERNAME=freebsd
  
-    ./create-worker.sh+  ./create-worker.sh
  
 coverity installieren. coverity installieren.
  
-    cd ~ +  cd ~ 
-    fetch https://.../cov-analysis-freebsd64-2022.06.tar.gz +  fetch https://.../cov-analysis-freebsd64-2022.06.tar.gz 
-    tar xzf cov-analysis-freebsd64-2022.06.tar.gz  +  tar xzf cov-analysis-freebsd64-2022.06.tar.gz  
-    mv cov-analysis-freebsd64-2022.6.0 cov-analysis+  mv cov-analysis-freebsd64-2022.6.0 cov-analysis
  
 ==== Ubuntu ==== ==== Ubuntu ====
Line 117: Line 109:
 Nutzer buildbot erstellen. Nutzer buildbot erstellen.
  
-    adduser --disabled-password buildbot+  adduser --disabled-password buildbot
  
 Pakete aktualisieren und benötigte Software installieren Pakete aktualisieren und benötigte Software installieren
  
-    apt update +  apt update 
-    apt upgrade +  apt upgrade 
-    apt install git buildbot-worker autotools-dev libtool-bin make cmake libsctp-dev bison flex python3 cppcheck+  apt install git buildbot-worker autotools-dev libtool-bin make cmake libsctp-dev bison flex python3 cppcheck
  
 Zum Nutzer buildbot wechseln. Zum Nutzer buildbot wechseln.
  
-    sudo su buildbot+  sudo su buildbot
  
 Buildbot Worker erstellen mit WORKERNAME = ubuntu. Buildbot Worker erstellen mit WORKERNAME = ubuntu.
  
-    cd ~ +  cd ~ 
-    mkdir bb-worker +  mkdir bb-worker 
-    cd bb-worker +  cd bb-worker 
-    ./create-worker.sh+  ./create-worker.sh
  
 ==== OpenBSD ==== ==== OpenBSD ====
Line 142: Line 134:
 Benötigte Software installieren. Benötigte Software installieren.
  
-    pkg_add buildbot-worker git automake autoconf libtool cmake bash+  pkg_add buildbot-worker git automake autoconf libtool cmake bash bison
  
 Um Variablen für die Versionen zu setzen, folgende Zeilen in /etc/profile hinzufügen. Um Variablen für die Versionen zu setzen, folgende Zeilen in /etc/profile hinzufügen.
  
-    export AUTOCONF_VERSION=2.69 +  export AUTOCONF_VERSION=2.69 
-    export AUTOMAKE_VERSION=1.16+  export AUTOMAKE_VERSION=1.16
  
 Nutzer buildbot ohne Passwort erstellen und zum Nutzer wechseln. Nutzer buildbot ohne Passwort erstellen und zum Nutzer wechseln.
  
-    adduser buildbot +  adduser buildbot 
-    sudo su buildbot+  sudo su buildbot
  
 Worker erstellen mit WORKERNAME = openbsd Worker erstellen mit WORKERNAME = openbsd
  
-    cd ~ +  cd ~ 
-    mkdir bb-worker +  mkdir bb-worker 
-    cd bb-worker +  cd bb-worker 
-    ./create-worker.sh+  ./create-worker.sh
  
 ==== NetBSD ==== ==== NetBSD ====
Line 167: Line 159:
 buildbot-worker installieren buildbot-worker installieren
  
-    cd /usr/pkgsrc/devel/buildbot-worker +  cd /usr/pkgsrc/devel/buildbot-worker 
-    make install +  make install 
-    ln /usr/pkg/bin/buildbot-worker-3.10 /usr/pkg/bin/buildbot-worker +  ln /usr/pkg/bin/buildbot-worker-3.10 /usr/pkg/bin/buildbot-worker 
  
 Übrige benötigte Software installieren. Übrige benötigte Software installieren.
  
-    pkgin install git mozilla-rootcerts-openssl automake autoconf libtool cmake bash+  pkgin install git mozilla-rootcerts-openssl automake autoconf libtool cmake bash
  
 Nutzer buildbot erstellen und zum Nutzer wechseln. Nutzer buildbot erstellen und zum Nutzer wechseln.
  
-    useradd -m -s /bin/ksh buildbot +  useradd -m -s /bin/ksh buildbot 
-    sudo su buildbot+  sudo su buildbot
  
 Worker erstellen mit WORKERNAME = netbsd Worker erstellen mit WORKERNAME = netbsd
  
-    cd ~ +  cd ~ 
-    mkdir bb-worker +  mkdir bb-worker 
-    cd bb-worker +  cd bb-worker 
-    ./create-worker.sh+  ./create-worker.sh
  
 ==== Windows ==== ==== Windows ====
buildbot/worker.1672849780.txt.gz · Last modified: by msvoelker