Correction : vm_host : rule_git_configure : reset.
authorJulien Moutinho <julm+burette@autogeree.net>
Thu, 11 Apr 2013 18:08:03 +0000 (20:08 +0200)
committerJulien Moutinho <julm+burette@autogeree.net>
Thu, 11 Apr 2013 18:09:37 +0000 (20:09 +0200)
vm_host

diff --git a/vm_host b/vm_host
index f8b5e1d..8bbe166 100755 (executable)
--- a/vm_host
+++ b/vm_host
@@ -3,6 +3,7 @@ set -e -f ${DRY_RUN:+-n} -u
 tool=${0%/*}
 . "$tool"/lib/rule.sh
 . "$tool"/etc/vm.sh
 tool=${0%/*}
 . "$tool"/lib/rule.sh
 . "$tool"/etc/vm.sh
+export TRACE=1
 
 rule_help () { # SYNTAX: [--hidden]
        local hidden; [ ${1:+set} ] || hidden=set
 
 rule_help () { # SYNTAX: [--hidden]
        local hidden; [ ${1:+set} ] || hidden=set
@@ -25,22 +26,26 @@ rule_help () { # SYNTAX: [--hidden]
 readonly vm_dev_disk=/dev/mapper/domU-$(printf %s "$vm_fqdn-disk" | sed -e 's/-/--/g')
 readonly vm_dev_disk_boot="${vm_dev_disk}1"
 
 readonly vm_dev_disk=/dev/mapper/domU-$(printf %s "$vm_fqdn-disk" | sed -e 's/-/--/g')
 readonly vm_dev_disk_boot="${vm_dev_disk}1"
 
-rule_git_config () {
+rule_git_configure () {
        (
        cd "$tool"
        git config --replace branch.master.remote .
        git config --replace branch.master.merge refs/remotes/master
        (
        cd "$tool"
        git config --replace branch.master.remote .
        git config --replace branch.master.merge refs/remotes/master
-       )
- }
-rule_git_reset () {
-       (
-       cd "$tool"
-       #git checkout -f -B master remotes/master
-       # NOTE: pas de -B sous squeeze
-       git checkout HEAD'^' &&
-       git branch -f master remotes/master &&
-       git checkout master
-       git clean -f -d -x
+       local tool
+       tool=$(cd "$tool"; cd -)
+       install -m 770 /dev/stdin .git/hooks/post-update <<-EOF
+               #!/bin/sh -efux
+               case \$1 in
+                (refs/remotes/master)
+                       cd ..
+                       #git --git-dir=\$PWD/.git checkout -f -B master remotes/master &&
+                       git --git-dir=\$PWD/.git checkout HEAD'^' &&
+                       git --git-dir=\$PWD/.git branch -f master remotes/master &&
+                       git --git-dir=\$PWD/.git checkout master
+                       git --git-dir=\$PWD/.git clean -f -d -x
+                       ;;
+                esac
+               EOF
        )
  }
 
        )
  }