diff --git a/dicos/99_one-master.xml b/dicos/99_one-master.xml
index 0663f2e..4a50266 100644
--- a/dicos/99_one-master.xml
+++ b/dicos/99_one-master.xml
@@ -68,6 +68,15 @@
non
+
+ non
+
+
+ 40
+
+
+ 2.5.2
+
@@ -205,7 +214,7 @@
hapy_vm_hook_state
hapy_vm_hook_lcm_state
-
+
['CREATE','REMOVE']
@@ -219,6 +228,11 @@
hapy_user_hook_command
hapy_user_hook_arguments
+
+ non
+ hapy_init_master_disk_size
+ hapy_init_master_iso_version
+
@@ -236,5 +250,7 @@
Déclancheur du Hook (cf: http://docs.opennebula.org/4.8/integration/infrastructure_integration/hooks.html)
Script lancé par le Hook (cf: http://docs.opennebula.org/4.8/integration/infrastructure_integration/hooks.html)
Arguments passés au script lancé par le Hook d'utilisateur (cf: http://docs.opennebula.org/4.8/integration/infrastructure_integration/hooks.html)
+ Initialiser Hâpy avec quelques fonctions de bases : ISO EOLE, Disque dur vierge et template d'installation d'EoleBase. ATTENTION, provoque le téléchargement de l'ISO EOLE
+ Version de l'ISO EOLE à télécharger lors de l'initialisation
diff --git a/postservice/99-init-hapy-master b/postservice/99-init-hapy-master
new file mode 100755
index 0000000..26044b6
--- /dev/null
+++ b/postservice/99-init-hapy-master
@@ -0,0 +1,108 @@
+#!/bin/bash
+
+[ $(CreoleGet hapy_init_master) == non ] && exit 0
+
+DISKSIZE=$(CreoleGet hapy_init_master_disk_size)
+DISKNAME="DSK-${DISKSIZE}-Go"
+DISKDESC="Disque vide de ${DISKSIZE} Go"
+
+VERSIONISO=$(CreoleGet hapy_init_master_iso_version)
+MAJORVERSION=${VERSIONISO:0:3}
+ISONAME="ISO-Eole-${VERSIONISO}-amd64"
+ISODESC="Image ISO EOLE Stable ${VERSIONISO} 64 bits"
+
+TMPLNAME="InstallEole-${VERSIONISO}-amd64"
+TMPLDESC="Modèle de VM permettant d'installer un module EOLE ${VERSIONISO} 64 bits (non persistente)"
+
+echo "########### suppr ${DISKNAME} ###############"
+oneimage delete ${DISKNAME}
+echo
+echo "########### suppr ${ISONAME} ###################"
+oneimage delete ${ISONAME}
+echo
+echo "########### suppr ${TMPLNAME} ###################"
+onetemplate delete ${TMPLNAME}
+echo
+
+#*****************************************************
+# DISQUE VIDE
+#*****************************************************
+if ! oneimage show "${DISKNAME}" &>/dev/null
+then
+ echo "***** Création de ${DISKNAME} *****"
+ oneimage create -d $(CreoleGet one_ds_image_name) --name "${DISKNAME}" --type DATABLOCK --description "${DISKDESC}" --size $((${DISKSIZE}*1024)) --prefix vd --driver qcow2 --fstype qcow2
+ oneimage chtype "${DISKNAME}" OS
+else
+ echo "***** ${DISKNAME} existe déjà *****"
+fi
+echo
+
+#*****************************************************
+# Image ISO EOLE Latest Stable
+#*****************************************************
+if ! oneimage show "${ISONAME}" &>/dev/null
+then
+ echo "***** Téléchargement de ${ISONAME} *****"
+ wget --output-document "/tmp/eole-${VERSIONISO}-alternate-amd64.iso" "http://eole.ac-dijon.fr/pub/iso/EOLE-${MAJORVERSION}/${VERSIONISO}/eole-${VERSIONISO}-alternate-amd64.iso"
+ echo "***** Création de ${ISONAME} *****"
+ if [ $? -ne 0 ]; then
+ echo "Erreur lors du téléchargement, Abandon"
+ exit 1
+ fi
+
+ FILE=$(mktemp)
+ cat > ${FILE} </dev/null && break
+ oneimage show ${ISONAME} | grep STATE | grep lock &>/dev/null || break
+ echo -n "Attente : "
+ oneimage show ${ISONAME} | grep STATE
+ done
+ rm -f "/tmp/eole-${VERSIONISO}-alternate-amd64.iso"
+else
+ echo "***** ${ISONAME} existe déjà *****"
+fi
+echo
+
+
+#*****************************************************
+# Template EOLEBASE
+#*****************************************************
+if ! onetemplate show "${TMPLNAME}" &>/dev/null
+then
+ echo "***** Création de ${TMPLNAME} *****"
+ FILE=$(mktemp)
+ cat > ${FILE} <