X-Git-Url: https://git.cyclocoop.org/?p=lhc%2Fateliers.git;a=blobdiff_plain;f=vm_hosted;h=b4a73b51007b89399331cad3f7d4fef991a08e2f;hp=8ffc922541c3b14427beaba0ae0050b48bf5583a;hb=517dfa12da0aee0c546f21166f488dc19f88c2b5;hpb=74f2e267053d0ecc2365bfd6ed223c6de0673ba6 diff --git a/vm_hosted b/vm_hosted index 8ffc922..b4a73b5 100755 --- a/vm_hosted +++ b/vm_hosted @@ -660,6 +660,10 @@ rule_login_configure () { # Xen hypervisor console hvc:2345:respawn:/sbin/getty 38400 hvc0 #xvc:2345:respawn:/sbin/getty 38400 xvc0 + + #-- runit begin + SV:123456:respawn:/usr/sbin/runsvdir-start + #-- runit end EOF sudo install -m 644 -o root -g root /dev/stdin /etc/login.defs <<-EOF MAIL_DIR /var/mail @@ -1111,6 +1115,34 @@ rule_procmail_configure () { "$tool"/etc/skel/etc/mail/delivery.procmailrc \ /etc/skel/etc/mail/delivery.procmailrc } +rule_runit_configure () { + rule apt_get_install runit + local -; set +f + rm -f /etc/service/* + # NOTE: runsvdir éteindra les services qui n'apparaîtront plus ici. + for sv in "$tool"/etc/sv/* + do sv=${sv#"$tool"/etc/sv/} + sudo install -d -m 770 -o root -g root \ + /etc/sv/"$sv" + sudo install -m 770 -o root -g root \ + "$tool"/etc/sv/"$sv"/run \ + /etc/sv/"$sv"/run + if test -e "$tool"/etc/sv/"$sv"/log/run + then + sudo install -d -m 770 -o root -g root \ + /etc/sv/"$sv"/log + sudo install -m 770 -o root -g root \ + "$tool"/etc/sv/"$sv"/log/run \ + /etc/sv/"$sv"/log/run + fi + if test ! -x "$tool"/etc/sv/"$sv"/configure || + "$tool"/etc/sv/"$sv"/configure + then + ln -fns ../sv/"$sv" /etc/service/"$sv" + sv restart "$sv" + else + done + } rule_ssh_configure () { ssh-keygen -F "$vm_fqdn" -f "$tool"/etc/openssh/known_hosts | ( while IFS= read -r line @@ -1309,6 +1341,7 @@ rule_configure () { rule nginx_configure rule php5_fpm_configure rule gitolite_configure + rule runit_configure } rule_luks_key_change () {