Actualiser 3.build.odoo.sh
This commit is contained in:
parent
c3368a0882
commit
a1333cd08b
1 changed files with 39 additions and 2 deletions
|
|
@ -5,8 +5,45 @@ source ./0.variables.env
|
||||||
# ── Extraction des métadonnées depuis le Dockerfile ──────────────────────────
|
# ── Extraction des métadonnées depuis le Dockerfile ──────────────────────────
|
||||||
DOCKERFILE=./config-odoo/"${1:-Dockerfile}"
|
DOCKERFILE=./config-odoo/"${1:-Dockerfile}"
|
||||||
|
|
||||||
ODOO_VERSION=$(grep -E '^\s*ENV ODOO_VERSION\s' "$DOCKERFILE" | awk '{print $3}')
|
# ── Extraction des metadonnees depuis le Dockerfile ──────────────────────────
|
||||||
ODOO_RELEASE=$(grep -E '^\s*ARG ODOO_RELEASE=' "$DOCKERFILE" | cut -d'=' -f2)
|
# Fonction robuste. gere les directives ENV et ARG, les formes "X=Y" et "X Y",
|
||||||
|
# et les valeurs entourees de guillemets. Retourne le premier token de la valeur.
|
||||||
|
extract_dockerfile_var() {
|
||||||
|
local key="$1"
|
||||||
|
local file="$2"
|
||||||
|
|
||||||
|
[[ -f "$file" ]] || { echo "[extract] Fichier introuvable. $file" >&2; return 2; }
|
||||||
|
|
||||||
|
awk -v k="$key" '
|
||||||
|
$0 ~ "^[[:space:]]*(ENV|ARG)[[:space:]]+" k "[[:space:]=]" {
|
||||||
|
sub("^[[:space:]]*(ENV|ARG)[[:space:]]+" k "[[:space:]=]+", "")
|
||||||
|
gsub(/"/, "")
|
||||||
|
print $1
|
||||||
|
exit
|
||||||
|
}
|
||||||
|
' "$file"
|
||||||
|
}
|
||||||
|
|
||||||
|
DOCKERFILE="./config-odoo/${1:-Dockerfile}"
|
||||||
|
|
||||||
|
[[ -f "$DOCKERFILE" ]] || {
|
||||||
|
echo "ERREUR. Dockerfile introuvable. $DOCKERFILE" >&2
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
ODOO_VERSION=$(extract_dockerfile_var "ODOO_VERSION" "$DOCKERFILE")
|
||||||
|
ODOO_RELEASE=$(extract_dockerfile_var "ODOO_RELEASE" "$DOCKERFILE")
|
||||||
|
ODOO_SHA=$(extract_dockerfile_var "ODOO_SHA" "$DOCKERFILE")
|
||||||
|
|
||||||
|
: "${ODOO_VERSION:?ODOO_VERSION non extrait depuis $DOCKERFILE}"
|
||||||
|
: "${ODOO_RELEASE:?ODOO_RELEASE non extrait depuis $DOCKERFILE}"
|
||||||
|
: "${ODOO_SHA:?ODOO_SHA non extrait depuis $DOCKERFILE}"
|
||||||
|
|
||||||
|
echo "Metadonnees extraites depuis $DOCKERFILE."
|
||||||
|
echo " ODOO_VERSION = $ODOO_VERSION"
|
||||||
|
echo " ODOO_RELEASE = $ODOO_RELEASE"
|
||||||
|
echo " ODOO_SHA = $ODOO_SHA"
|
||||||
|
|
||||||
|
|
||||||
if [[ -z "$ODOO_VERSION" || -z "$ODOO_RELEASE" ]]; then
|
if [[ -z "$ODOO_VERSION" || -z "$ODOO_RELEASE" ]]; then
|
||||||
echo "ERREUR : impossible d'extraire ODOO_VERSION ou ODOO_RELEASE depuis $DOCKERFILE" >&2
|
echo "ERREUR : impossible d'extraire ODOO_VERSION ou ODOO_RELEASE depuis $DOCKERFILE" >&2
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue