Ajout : vm_hosted : rule_runit_configure .
[lhc/ateliers.git] / vm_hosted
index 8ffc922..b4a73b5 100755 (executable)
--- 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 () {