X-Git-Url: https://git.rohieb.name/stratum0-wiki.git/blobdiff_plain/c4061786434e8af9646e95286efe5a0e7d2d9cf8..9e5884436abea3597e0b0b38ab065cfb4f1dcba2:/Theodem.mw diff --git a/Theodem.mw b/Theodem.mw index 18c1d98c2..14fd0c1b6 100644 --- a/Theodem.mw +++ b/Theodem.mw @@ -1,5 +1,5 @@ {{Hardware -|kontakt=[[Benutzer:Kasalehlia|Kasalehlia]], [[Benutzer:Daniel Bohrer|Daniel Bohrer]], [[Benutzer:chrissi^|chrissi^]] +|kontakt=[[Benutzer:Emantor|Emantor]], [[Benutzer:chrissi^|chrissi^]] |status=working |ort=[[endor]] |beschreibung=VM für [[Vorstand]]sfoo @@ -35,19 +35,95 @@ -----END PGP SIGNATURE----- == Doku == -* Debian jessie, systemd +* Debian stretch, systemd * 512 MB RAM * 6 GB Platte * 2 CPU-Kerne -* Netzwerk intern, per DHCP +* Netzwerk intern, statisch via /etc/systemd/network/eth0.network * gitolite3 in /var/lib/gitolite3/, user git * s0v-finanzen-Repo: -** Git-Hooks im Admin-Repo: siehe http://gitolite.com/gitolite/gitolite.html#hooks -** s0v-finanzen-Hook-Scripte sind in /var/lib/gitolite3/scripts -** Hook ist manuell im Repository angelegt -** TODO: Ablage der generierten Dateien auf Webspace, Nightly-Tests integrieren +** post-receive-Hook ist manuell im Repository angelegt, delegiert an +*** /var/lib/gitolite3/scripts/jverein-finance-report/hook.sh +**** benutzt virtualenv unter /var/lib/gitolite3/scripts/jverein-finance-report/venv +*** /var/lib/gitolite3/scripts/jverein-regressionstests/run_tests.sh +**** Verschickt die Reports an: rou***@c*.de, chr***@t*.de * SSH via Port-Forwarding von [[gandolf]], Port 2222 +* Alle Dateien in /var/www/html werden auf [[regolas]] gesynct, sobald die Datei /var/www/html/.dirty angelegt wird (z.B. durch Ausführen von /usr/local/bin/regolas-rsync, was auch stündlich als Cronjob geschieht). Die Dateien sind damit unter https://data.stratum0.org erreichbar. +=== Skripte etc === +/home/regolas-rsync/bin/regolas-rsync: + #!/bin/sh + rsync \ + --recursive --delete --stats \ + --chmod=D2755,F644 \ + --exclude='.*' \ + /var/www/html/ theodem-rsync@regolas:/var/www/data.stratum0.org/ | \ + sed 's/^/regolas-rsync: /' + +/etc/systemd/system/regolas-rsync.service: + [Unit] + Description=rsync everything from /var/www/html to regolas + Requires=network.target + + [Service] + User=regolas-rsync + Group=www-data + ExecStart=/bin/sh -c ' \ + while true; do \ + if [ -r /var/www/html/.dirty ]; then \ + /home/regolas-rsync/bin/regolas-rsync; \ + rm -f /var/www/html/.dirty; \ + fi; \ + sleep 1; \ + done' + Restart=always + + [Install] + WantedBy=multi-user.target + +=== Services === +* [https://data.stratum0.org/finanz/ Finanzreport] (Schatzmeister) +** Git-Hook in /var/lib/gitolite3/repositories/s0v-finanzen.git/hooks/post-receive + + +==== SSH-Config ==== +Die folgende ~/.ssh/config ist ein Beispiel, wie theodem erreicht werden kann. + + Host theodem + User chrissi + Port 2222 + HostName theodem.stratum0.org + +==== gitolite ==== + +===== Übersicht der eigenen Repositories ===== + +Man kann sich alle Repositories anzeigen lassen, auf die man zugriff hat: + + $ ssh git@theodem + + hello chrissi, this is git@theodem running gitolite3 3.6.6-1 (Debian) on git 2.11.0 + + R W gitolite-admin + R W s0v-dokumente + R W s0v-finanzen + R W s0v-mails2011 + R W s0v-mails2012 + R W s0v-mails2013 + R W s0v-mails2014 + R W s0v-mails2015 + R W s0v-mails2016 + R W s0v-mails2017 + R W s0v-mails2018 + R W s0v-mails2019 + +===== Repository klonen ===== +Die URL eines Repositories ergibt sich aus seinem Namen und der Basisurl: + + git@theodem: + +z.B.: + git@theodem:s0v-dokumente [[Kategorie:Virtuelle Maschine]] [[Kategorie:Infrastruktur]]