2
0
Ficheiros
bdi_podman_serverconf/containers/odoo/build-container.sh
T
2026-07-04 14:41:42 +02:00

79 linhas
2.2 KiB
Bash
Ficheiro executável

#!/bin/bash
# Build dell'immagine Odoo a partire dal pacchetto .deb ufficiale (community/enterprise)
# I file .deb vanno messi in ./deb (tracciati con git-lfs, vedi .gitattributes)
# Usage: ./build-container.sh [community|enterprise] [--no-cache]
set -e
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
DEB_DIR="${SCRIPT_DIR}/deb"
EDITION=""
NO_CACHE=""
USE_CACHE=false
for arg in "$@"; do
case "$arg" in
--no-cache) NO_CACHE="--no-cache" ;;
--use-cache) USE_CACHE=true ;;
community|enterprise) EDITION="$arg" ;;
esac
done
# Se non specificata da riga di comando, chiedi la versione
if [[ "$EDITION" != "community" && "$EDITION" != "enterprise" ]]; then
echo "Quale versione di Odoo vuoi buildare?"
select choice in "community" "enterprise"; do
case "$choice" in
community|enterprise)
EDITION="$choice"
break
;;
*)
echo "Scelta non valida, riprova."
;;
esac
done
fi
# Default: forza --no-cache per evitare di usare cache con ARG vecchio
# (a meno che non venga passato --use-cache)
if [[ "$USE_CACHE" == "false" ]]; then
NO_CACHE="--no-cache"
fi
case "$EDITION" in
community) DEB_FILE="odoo_19_c.deb" ;;
enterprise) DEB_FILE="odoo_19_e.deb" ;;
esac
if [ ! -f "${DEB_DIR}/${DEB_FILE}" ]; then
echo "ERRORE: ${DEB_DIR}/${DEB_FILE} non trovato."
echo "Copia il pacchetto .deb ufficiale di Odoo in ${DEB_DIR} (gestito tramite git-lfs, vedi .gitattributes)."
exit 1
fi
IMAGE_TAG="odoo:19.0-${EDITION}"
echo "=== Build immagine Odoo (${EDITION}) ==="
echo "Pacchetto: ${DEB_FILE}"
echo "Image tag: localhost/${IMAGE_TAG}"
echo
# Debug: verifica che la variabile è corretta
echo "[DEBUG] DEB_FILE=${DEB_FILE}"
echo "[DEBUG] Comando: podman build --build-arg ODOO_DEB_FILE=${DEB_FILE} ..."
echo
podman build $NO_CACHE \
--build-arg "ODOO_DEB_FILE=${DEB_FILE}" \
-t "${IMAGE_TAG}" \
-f "${SCRIPT_DIR}/odoo.Containerfile" \
"${SCRIPT_DIR}"
echo
echo "✓ Immagine creata: localhost/${IMAGE_TAG}"
echo
echo "Per esportarla:"
echo " podman save -o ~/odoo-19.0-${EDITION}.tar localhost/${IMAGE_TAG}"