All pastes #448066 Raw Edit

Unnamed

public text v1 · immutable
#448066 ·published 2007-04-19 13:14 UTC
rendered paste body
#! /bin/bash

tmp=/tmp/menu
pos=1
pos_calc=0
CLASSME=""

choose_etape1=0
choose_etape2=0

etape1[0]="1 CAT1"
etape1[1]="2 CAT2"
etape1[2]="3 CAT3"

#######################################################
## CAT1
##

etape2_1_type="checklist"
etape2_1[0]="1 TOTO off"
etape2_1[1]="2 TOTO2 off"
etape2_1_1_profil="TOTO_SRV TOTO_PLUGINS_SRV_LINUX DISKBASE"
etape2_1_2_profil="TOTO2_SRV DISKBASE"

# toto
etape3_1_1[0]="1 mach1"
etape3_1_1[1]="2 mach2"
etape3_1_1[2]="3 mach3"
etape3_1_1[3]="4 mach4"

etape3_1_1_1_profil="HOST_MACH1 TOTO_CONF1 C_AGENT T_AGENT"
etape3_1_1_2_profil="HOST_MACH2 TOTO_CONF2 C_AGENT T_AGENT"
etape3_1_1_3_profil="HOST_MACH3 TOTO_CONF3 C_AGENT T_AGENT"
etape3_1_1_4_profil="HOST_MACH4 TOTO_CONF4 C_AGENT T_AGENT"

# toto2
etape3_1_2[0]="1 mach3"
etape3_1_2[1]="2 mach4"

etape3_1_2_1_profil="HOST_MACH3 TOTO2_CONF1 C_AGENT T_AGENT"
etape3_1_2_2_profil="HOST_MACH4 TOTO2_CONF2 C_AGENT T_AGENT"

# toto + toto2
etape3_1_3[0]="1 mach5"
etape3_1_3[1]="2 mach6"

etape3_1_3_1_profil="HOST_MACH5 TOTO2_CONF1 TOTO_CONF3 C_AGENT T_AGENT"
etape3_1_3_2_profil="HOST_MACH6 TOTO2_CONF2 TOTO_CONF4 C_AGENT T_AGENT"

######################################################
## CAT2
##

etape2_2_type="menu"
etape2_2[0]="1 DNS-WINS"
etape2_2[1]="2 LDAP"
etape2_2[2]="3 LVS"
etape2_2[3]="4 SSO"
etape2_2[4]="5 SQUID"
etape2_2[5]="6 C"
etape2_2[6]="7 FAI"
etape2_2_1_profil="DNS-WINS_SRV DISKBASE"
etape2_2_2_profil="LDAP_SRV DISKBASE"
etape2_2_3_profil="LVS_SRV DISKBASE"
etape2_2_4_profil="SSO_SRV DISKBASE"
etape2_2_5_profil="SQUID_SRV DISKBASE"
etape2_2_6_profil="C_SRV DISKBASE"
etape2_2_7_profil="FAI_SRV DISKBASE"

# DNS-WINS
etape3_2_1[0]="1 mach10"
etape3_2_1[1]="2 mach11"
etape3_2_1[2]="3 mach12"
etape3_2_1[3]="4 mach13"

etape3_2_1_1_profil="HOST_MACH10 DNS-WINS_CONF1 T_AGENT VT"
etape3_2_1_2_profil="HOST_MACH11 DNS-WINS_CONF2 T_AGENT VT"
etape3_2_1_3_profil="HOST_MACH12 DNS-WINS_CONF3 T_AGENT VT"
etape3_2_1_4_profil="HOST_MACH13 DNS-WINS_CONF4 T_AGENT VT"

# LDAP
etape3_2_2[0]="1 mach20"
etape3_2_2[1]="2 mach21"
etape3_2_2[2]="3 mach22"
etape3_2_2[3]="4 mach23"

etape3_2_2_1_profil="HOST_MACH20 LDAP_CONF1 T_AGENT VT"
etape3_2_2_2_profil="HOST_MACH21 LDAP_CONF2 T_AGENT VT"
etape3_2_2_3_profil="HOST_MACH22 LDAP_CONF3 T_AGENT VT"
etape3_2_2_4_profil="HOST_MACH23 LDAP_CONF4 T_AGENT VT"

# LVS
etape3_2_3[0]="1 mach30"
etape3_2_3[1]="2 mach31"
etape3_2_3[2]="3 mach32"
etape3_2_3[3]="4 mach33"

etape3_2_3_1_profil="HOST_MACH30 LVS_CONF1 T_AGENT"
etape3_2_3_2_profil="HOST_MACH31 LVS_CONF2 T_AGENT"
etape3_2_3_3_profil="HOST_MACH32 LVS_CONF3 T_AGENT"
etape3_2_3_4_profil="HOST_MACH33 LVS_CONF4 T_AGENT"


# SSO
etape3_2_4[0]="1 mach50"
etape3_2_4[1]="2 mach51"

etape3_2_4_1_profil="HOST_MACH50 SSO_CONF1 T_AGENT"
etape3_2_4_2_profil="HOST_MACH51 SSO_CONF2 T_AGENT"

# SQUID
etape3_2_5[0]="1 mach60"
etape3_2_5[1]="2 mach61"
etape3_2_5[2]="3 mach62"
etape3_2_5[3]="4 mach63"

etape3_2_5_1_profil="HOST_MACH60 SQUID_CONF1 T_AGENT"
etape3_2_5_2_profil="HOST_MACH61 SQUID_CONF2 T_AGENT"
etape3_2_5_3_profil="HOST_MACH62 SQUID_CONF3 T_AGENT"
etape3_2_5_4_profil="HOST_MACH63 SQUID_CONF4 T_AGENT"

# C
etape3_2_6[0]="1 mach100"
etape3_2_6[1]="2 mach101"

etape3_2_6_1_profil="HOST_MACH100 C_CONF1 C_AGENT T_AGENT"
etape3_2_6_2_profil="HOST_MACH101 C_CONF2 C_AGENT T_AGENT"

# FAI
etape3_2_7[0]="1 dappfai"

etape3_2_7_1_profil="HOST_DAPPFAI"

######################################################
## TEST
##

etape2_3_type="menu"
etape2_3[0]="1 TEST"
etape2_3_1_profil="DISKTEST"

# TEST
etape3_3_1[0]="1 test"

etape3_3_1_1_profil="HOST_TEST VT"

#######################################################

etape_1()
{
        pos_calc=1
        eval dialog --clear --title \"Installation - Etape 1\" --menu \"Veuillez choisir:\" 15 64 8 ${etape1[*]} 2>$tmp 1>/dev/console
        if [ "$?" -ne 0 ] ; then
                pos_calc="0"
                return 1
        fi
        for profil in $(cat $tmp); do
                choose_etape1=$profil
        done
        return 0
}

etape_2()
{
        CLASSME=""
        pos_calc=1
        eval type_elem=\$etape2_${choose_etape1}_type
        eval tmp_var=\$\{etape2_${choose_etape1}\[\*\]\}
        if [ "$type_elem" = "checklist" ]; then
                eval dialog --clear --separate-output --title \"Installation - Etape 2\" --checklist \"Veuillez choisir:\" 15 64 8 $tmp_var 2>$tmp 1>/dev/console
        else
                eval dialog --clear --title \"Installation - Etape 2\" --menu \"Veuillez choisir:\" 15 64 8 $tmp_var 2>$tmp 1>/dev/console
        fi
        if [ "$?" -ne 0 ] ; then
                pos_calc="-1"
                return 1
        fi
        choose_etape2=0
        for profil in $(cat $tmp); do
                choose_etape2=$(($choose_etape2 + $profil))
                eval classtmp=\"\$etape2_${choose_etape1}_${profil}_profil\"
                CLASSME="$CLASSME $classtmp"
        done
        return 0
}

etape_3()
{
        pos_calc=1
        eval tmp_var=\$\{etape3_${choose_etape1}_${choose_etape2}\[\*\]\}
        eval dialog --clear --title \"Installation - Etape 3\" --menu \"Veuillez choisir:\" 15 64 8 $tmp_var 2>$tmp 1>/dev/console
        if [ "$?" -ne 0 ] ; then
                pos_calc="-1"
                return 1
        fi
        choose_etape3=0
        for profil in $(cat $tmp); do
                choose_etape3=$(($choose_etape3 + $profil))
                eval classtmp=\"\$etape3_${choose_etape1}_${choose_etape2}_${profil}_profil\"
                CLASSME="$CLASSME $classtmp"
        done
        return 0
}


while : ; do
        eval etape_$pos
        pos=$(($pos + $pos_calc))
        if [ $pos -gt 3 ] ; then
                break
        fi
done

echo FAIBASE GRUB TOTO TOTO_PLUGINS_TGT_LINUX B_AGT
echo $CLASSME

rm -f $tmp
exit 0