Mise à jour du switcher pour régler le soucis de switch entre stable et bêta
Some checks failed
E2E Tests / e2e (push) Has been cancelled
Build & Push Images / build (brain) (push) Successful in 1m5s
Build & Push Images / build (core) (push) Successful in 1m42s
Build & Push Images / build (web) (push) Successful in 1m38s
Build & Push Images / build-switcher (push) Successful in 1m48s

This commit is contained in:
2026-05-19 18:36:00 +02:00
parent 3d73b1e6a7
commit 4b9b7f0995
5 changed files with 39 additions and 28 deletions

View File

@@ -41,7 +41,7 @@ from app.infrastructure.onemin_adapter import OneMinAiLLMProvider
app = FastAPI(
title="LoreMind Brain",
description="Backend IA pour la génération de contenu narratif.",
version="0.8.5",
version="0.8.6",
)

View File

@@ -14,7 +14,7 @@
<groupId>com.loremind</groupId>
<artifactId>loremind-core</artifactId>
<version>0.8.5</version>
<version>0.8.6</version>
<name>LoreMind Core</name>
<description>Backend Core - Architecture Hexagonale</description>

View File

@@ -64,33 +64,44 @@ fi
export COMPOSE_PROJECT_NAME="${PROJECT_NAME}"
echo "→ Projet compose cible: ${PROJECT_NAME}"
# --- Mapping canal -> namespace --------------------------------------------
# Le slash final est important : il est concatene avec le suffixe image
# --- Mapping canal -> (namespace, tag) -------------------------------------
# Le slash final du namespace est important : concatene avec le suffixe image
# (core/brain/web) dans le docker-compose.yml.
# Cote tag : le workflow CI pousse :latest pour le canal stable, :beta pour
# le canal beta. Le switcher doit donc forcer ces deux variables ensemble.
case "${CHANNEL}" in
stable) NAMESPACE="igmlcreation/loremind-" ;;
beta) NAMESPACE="igmlcreation/loremind-beta-" ;;
stable)
NAMESPACE="igmlcreation/loremind-"
TAG="latest"
;;
beta)
NAMESPACE="igmlcreation/loremind-beta-"
TAG="beta"
;;
esac
# Helper : met a jour (ou ajoute) une variable key=value dans le .env.
update_env_var() {
local key="$1"
local value="$2"
if grep -q "^${key}=" "${ENV_FILE}"; then
# Sur Alpine, sed -i sans backup. Le pattern '/' dans la valeur impose
# un delimiter alternatif (|).
sed -i "s|^${key}=.*|${key}=${value}|" "${ENV_FILE}"
else
# Ligne absente → on l'ajoute en fin de fichier la premiere fois.
{
echo ""
echo "# Ajoute automatiquement par le switcher de canal LoreMind."
echo "${key}=${value}"
} >> "${ENV_FILE}"
fi
}
# --- Etape 1 : sed le .env -------------------------------------------------
# On veut REMPLACER une ligne existante IMAGE_NAMESPACE=... ou AJOUTER
# si absente. Cas typique : .env utilisateur peut avoir cette ligne ou non.
#
# Sed -i avec un pattern qui matche la ligne entiere. Si pas de match,
# on append.
echo "→ Mise a jour de IMAGE_NAMESPACE dans .env (canal: ${CHANNEL})"
if grep -q '^IMAGE_NAMESPACE=' "${ENV_FILE}"; then
# Sur Alpine, sed -i sans backup. Le pattern d'echappement '/' dans
# le namespace impose un delimiter alternatif (|).
sed -i "s|^IMAGE_NAMESPACE=.*|IMAGE_NAMESPACE=${NAMESPACE}|" "${ENV_FILE}"
else
# Ligne absente → on l'ajoute en fin de fichier avec un commentaire.
{
echo ""
echo "# Ajoute automatiquement par le switcher de canal LoreMind."
echo "IMAGE_NAMESPACE=${NAMESPACE}"
} >> "${ENV_FILE}"
fi
echo "→ Mise a jour de IMAGE_NAMESPACE + TAG dans .env (canal: ${CHANNEL})"
update_env_var "IMAGE_NAMESPACE" "${NAMESPACE}"
update_env_var "TAG" "${TAG}"
# --- Etape 2 : docker compose pull -----------------------------------------
echo "→ Pull des nouvelles images (${NAMESPACE}*)"
@@ -109,4 +120,4 @@ docker compose up -d --no-deps core brain web
echo ""
echo "Switch vers le canal ${CHANNEL} termine avec succes."
echo "Containers core/brain/web recrees avec ${NAMESPACE}*."
echo "Containers core/brain/web recrees avec ${NAMESPACE}*:${TAG}."

4
web/package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "loremind-web",
"version": "0.8.5",
"version": "0.8.6",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "loremind-web",
"version": "0.8.5",
"version": "0.8.6",
"dependencies": {
"@angular/animations": "^17.0.0",
"@angular/common": "^17.0.0",

View File

@@ -1,6 +1,6 @@
{
"name": "loremind-web",
"version": "0.8.5",
"version": "0.8.6",
"description": "LoreMind Frontend - Angular",
"scripts": {
"ng": "ng",