{{Hardware
-|kontakt=[[Benutzer:Kasalehlia|Kasalehlia]], [[Benutzer:Daniel Bohrer|Daniel Bohrer]], [[Benutzer:chrissi^|chrissi^]]
+|kontakt=Linda, [[Benutzer:chrissi^|chrissi^]]
|status=working
|ort=[[endor]]
|beschreibung=VM für [[Vorstand]]sfoo
-----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 <tt>/var/lib/gitolite3/</tt>, user <tt>git</tt>
* <tt>s0v-finanzen</tt>-Repo:
-** <s>Git-Hooks im Admin-Repo: siehe http://gitolite.com/gitolite/gitolite.html#hooks</s>
-** s0v-finanzen-Hook-Scripte sind in <tt>/var/lib/gitolite3/scripts</tt>
-** 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
+*** <tt>/var/lib/gitolite3/scripts/jverein-finance-report/hook.sh</tt>
+**** benutzt virtualenv unter <tt>/var/lib/gitolite3/scripts/jverein-finance-report/venv</tt>
+*** <tt>/var/lib/gitolite3/scripts/jverein-regressionstests/run_tests.sh</tt>
+**** Verschickt die Reports an: <tt>rou***@c*.de, chr***@t*.de</tt>
* SSH via Port-Forwarding von [[gandolf]], Port 2222
+* Alle Dateien in <tt>/var/www/html</tt> werden auf [[regolas]] gesynct, sobald die Datei <tt>/var/www/html/.dirty</tt> angelegt wird (z.B. durch Ausführen von <tt>/usr/local/bin/regolas-rsync</tt>, 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:<Name>
+
+z.B.:
+ git@theodem:s0v-dokumente
[[Kategorie:Virtuelle Maschine]]
[[Kategorie:Infrastruktur]]