option -strict dans contenaire

This commit is contained in:
2026-10-07 15:25:50 +02:00
parent 40e134cc2a
commit b0ebce6eca
+56 -27
View File
@@ -29,6 +29,7 @@ setKazVars
cd "${KAZ_BIN_DIR}" cd "${KAZ_BIN_DIR}"
PATH_SAUVE="/home/sauve/" PATH_SAUVE="/home/sauve/"
export SIMU="" export SIMU=""
export STRICT=""
declare -a availableComposesNoNeedMail availableMailComposes availableComposesNeedMail availableProxyComposes availableOrga declare -a availableComposesNoNeedMail availableMailComposes availableComposesNeedMail availableProxyComposes availableOrga
availableComposesNoNeedMail=($(getList "${KAZ_CONF_DIR}/container-withoutMail.list")) availableComposesNoNeedMail=($(getList "${KAZ_CONF_DIR}/container-withoutMail.list"))
@@ -283,15 +284,28 @@ if [ "$#" -eq 0 ] ; then
usage usage
fi fi
if [ "$1" == "-h" ] ; then while [[ "$1" == -* ]] ;do
usage case "$1" in
shift "-h" )
fi usage
shift
if [ "$1" == "-n" ] ; then ;;
export SIMU=echo "-n" )
shift export SIMU=echo
fi shift
;;
"-strict" )
export STRICT="_X_Y"
shift
;;
"--" )
shift
;;
* )
break
;;
esac
done
DCK_CMD="" DCK_CMD=""
SAVE_CMD="" SAVE_CMD=""
@@ -331,38 +345,53 @@ else
fi fi
fi fi
argExist=""
for compose in $* for compose in $*
do do
argExist=true
compose=${compose%/} compose=${compose%/}
if [[ ! " ${knownedComposes[@]} " =~ " ${compose} " ]]; then if [[ -z "${STRICT}" ]] ;then
declare -a subst if [[ ! " ${knownedComposes[@]} " =~ " ${compose} " ]]; then
subst=() declare -a subst
for item in "${knownedComposes[@]}"; do subst=()
[[ "${item}" =~ "${compose}" ]] && subst+=(${item}) for item in "${knownedComposes[@]}"; do
done [[ "${item}" =~ "${compose}" ]] && subst+=(${item})
if [ "${subst}" = "" ] ; then done
echo if [ "${subst}" = "" ] ; then
echo "Unknown compose: ${RED}${BOLD}${compose}${NC} not in ${YELLOW}${BOLD}${knownedComposes[*]}${NC}" echo
echo echo "Unknown compose: ${RED}${BOLD}${compose}${NC} not in ${YELLOW}${BOLD}${knownedComposes[*]}${NC}"
exit 1 echo
else exit 1
echo "substitute compose: ${YELLOW}${BOLD}${compose} => ${subst[@]}${NC}" else
echo "substitute compose: ${YELLOW}${BOLD}${compose} => ${subst[@]}${NC}"
fi
fi fi
fi fi
for item in "${availableMailComposes[@]}"; do for item in "${availableMailComposes[@]}"; do
[[ "${item}" =~ "${compose}" ]] && enableMailComposes+=("${item}") [[ "${STRICT}${item}${STRICT}" =~ "${STRICT}${compose}${STRICT}" ]] && enableMailComposes+=("${item}")
done done
for item in "${availableProxyComposes[@]}"; do for item in "${availableProxyComposes[@]}"; do
[[ "${item}" =~ "${compose}" ]] && enableProxyComposes=("${item}") [[ "${STRICT}${item}${STRICT}" =~ "${STRICT}${compose}${STRICT}" ]] && enableProxyComposes=("${item}")
done done
for item in "${availableComposesNoNeedMail[@]}"; do for item in "${availableComposesNoNeedMail[@]}"; do
[[ "${item}" =~ "${compose}" ]] && enableComposesNoNeedMail+=("${item}") [[ "${STRICT}${item}${STRICT}" =~ "${STRICT}${compose}${STRICT}" ]] && enableComposesNoNeedMail+=("${item}")
done done
for item in "${availableComposesNeedMail[@]}"; do for item in "${availableComposesNeedMail[@]}"; do
[[ "${item}" =~ "${compose}" ]] && enableComposesNeedMail+=("${item}") [[ "${STRICT}${item}${STRICT}" =~ "${STRICT}${compose}${STRICT}" ]] && enableComposesNeedMail+=("${item}")
done done
done done
if [[ ! -z "${argExist}" ]] ;then
if [[ -z "${enableMailComposes[@]}${enableProxyComposes[@]}${enableComposesNoNeedMail[@]}${enableComposesNeedMail[@]}" ]] ;then
echo
echo "Unknown arg: ${RED}${BOLD}" $* "${NC} not in ${YELLOW}${BOLD}${knownedComposes[*]}${NC}"
echo
exit 1
fi
fi
[[ ! -z "${DCK_CMD}" ]] && "${DCK_CMD}" && exit 0 [[ ! -z "${DCK_CMD}" ]] && "${DCK_CMD}" && exit 0
[[ ! -z "${SAVE_CMD}" ]] && "${SAVE_CMD}" && exit 0 [[ ! -z "${SAVE_CMD}" ]] && "${SAVE_CMD}" && exit 0