fix: amélioration script create-team-page avec logs détaillés
- Installation de Python3 dans Dockerfile - Logs détaillés pour diagnostic - Vérification après modification - set -e pour arrêter en cas d'erreur - Vérification dans Dockerfile que le script a réussi
This commit is contained in:
@@ -26,7 +26,7 @@ ENV NODE_PATH=/app/node_modules
|
|||||||
ENV NODE_ENV=production
|
ENV NODE_ENV=production
|
||||||
|
|
||||||
# Installation des dépendances système
|
# Installation des dépendances système
|
||||||
RUN apk add --no-cache git
|
RUN apk add --no-cache git python3
|
||||||
|
|
||||||
# Copie des fichiers de dépendances
|
# Copie des fichiers de dépendances
|
||||||
COPY package.json package-lock.json* ./
|
COPY package.json package-lock.json* ./
|
||||||
@@ -73,7 +73,13 @@ RUN mkdir -p .techradar/data && \
|
|||||||
|
|
||||||
# Créer la page Next.js /team et modifier Navigation
|
# Créer la page Next.js /team et modifier Navigation
|
||||||
RUN chmod +x scripts/create-team-page.sh && \
|
RUN chmod +x scripts/create-team-page.sh && \
|
||||||
./scripts/create-team-page.sh || echo "⚠️ Échec de la création de la page team"
|
echo "🚀 Exécution de create-team-page.sh..." && \
|
||||||
|
./scripts/create-team-page.sh && \
|
||||||
|
echo "✅ Script create-team-page.sh terminé" && \
|
||||||
|
echo "📋 Vérification de Navigation.tsx:" && \
|
||||||
|
grep -q 'href="/team"' .techradar/src/components/Navigation/Navigation.tsx && echo "✅ Lien Équipe trouvé dans Navigation.tsx" || echo "❌ Lien Équipe NON trouvé dans Navigation.tsx" && \
|
||||||
|
echo "📋 Vérification de team.tsx:" && \
|
||||||
|
test -f .techradar/src/pages/team.tsx && echo "✅ team.tsx existe" || echo "❌ team.tsx n'existe pas"
|
||||||
|
|
||||||
# Builder l'application en mode production pour éviter Fast Refresh
|
# Builder l'application en mode production pour éviter Fast Refresh
|
||||||
# Utiliser WORKDIR pour changer de répertoire de manière fiable
|
# Utiliser WORKDIR pour changer de répertoire de manière fiable
|
||||||
|
|||||||
@@ -2,10 +2,16 @@
|
|||||||
|
|
||||||
# Script pour créer la page Next.js /team et modifier Navigation
|
# Script pour créer la page Next.js /team et modifier Navigation
|
||||||
|
|
||||||
|
set -e # Arrêter en cas d'erreur
|
||||||
|
|
||||||
TECHRADAR_DIR=".techradar"
|
TECHRADAR_DIR=".techradar"
|
||||||
TEAM_PAGE="$TECHRADAR_DIR/src/pages/team.tsx"
|
TEAM_PAGE="$TECHRADAR_DIR/src/pages/team.tsx"
|
||||||
NAV_FILE="$TECHRADAR_DIR/src/components/Navigation/Navigation.tsx"
|
NAV_FILE="$TECHRADAR_DIR/src/components/Navigation/Navigation.tsx"
|
||||||
|
|
||||||
|
echo "📁 TECHRADAR_DIR: $TECHRADAR_DIR"
|
||||||
|
echo "📄 TEAM_PAGE: $TEAM_PAGE"
|
||||||
|
echo "📄 NAV_FILE: $NAV_FILE"
|
||||||
|
|
||||||
# Créer la page team.tsx qui charge team.html via iframe (plus simple et fiable)
|
# Créer la page team.tsx qui charge team.html via iframe (plus simple et fiable)
|
||||||
if [ ! -f "$TEAM_PAGE" ]; then
|
if [ ! -f "$TEAM_PAGE" ]; then
|
||||||
mkdir -p "$(dirname "$TEAM_PAGE")"
|
mkdir -p "$(dirname "$TEAM_PAGE")"
|
||||||
@@ -45,31 +51,65 @@ fi
|
|||||||
|
|
||||||
# Modifier Navigation.tsx pour ajouter le lien
|
# Modifier Navigation.tsx pour ajouter le lien
|
||||||
if [ -f "$NAV_FILE" ]; then
|
if [ -f "$NAV_FILE" ]; then
|
||||||
|
echo "📝 Navigation.tsx trouvé, vérification du lien..."
|
||||||
if ! grep -q 'href="/team"' "$NAV_FILE"; then
|
if ! grep -q 'href="/team"' "$NAV_FILE"; then
|
||||||
|
echo "➕ Ajout du lien Équipe dans Navigation.tsx..."
|
||||||
# Ajouter le lien après Overview, avant le commentaire
|
# Ajouter le lien après Overview, avant le commentaire
|
||||||
# Utiliser Python pour une modification plus précise
|
# Utiliser Python pour une modification plus précise
|
||||||
python3 << PYTHON_SCRIPT
|
python3 << 'PYTHON_SCRIPT'
|
||||||
import re
|
import re
|
||||||
|
import sys
|
||||||
|
|
||||||
with open("$NAV_FILE", 'r') as f:
|
nav_file = sys.argv[1]
|
||||||
|
print(f"📝 Modification de {nav_file}")
|
||||||
|
|
||||||
|
try:
|
||||||
|
with open(nav_file, 'r') as f:
|
||||||
content = f.read()
|
content = f.read()
|
||||||
|
|
||||||
# Trouver la fin du lien Overview et insérer le nouveau lien avant le commentaire
|
# Trouver la fin du lien Overview et insérer le nouveau lien avant le commentaire
|
||||||
pattern = r'(</Link>\s*</li>\s*)(\{/\*)'
|
pattern = r'(</Link>\s*</li>\s*)(\{/\*)'
|
||||||
replacement = r'\1 <li className={styles.item}>\n <Link href="/team">\n <span className={styles.label}>👥 Équipe</span>\n </Link>\n </li>\n \2'
|
replacement = r'\1 <li className={styles.item}>\n <Link href="/team">\n <span className={styles.label}>👥 Équipe</span>\n </Link>\n </li>\n \2'
|
||||||
|
|
||||||
new_content = re.sub(pattern, replacement, content)
|
new_content = re.sub(pattern, replacement, content)
|
||||||
|
|
||||||
with open("$NAV_FILE", 'w') as f:
|
if new_content == content:
|
||||||
|
print("⚠️ Aucune modification effectuée, pattern non trouvé")
|
||||||
|
print("Contenu autour de Overview:")
|
||||||
|
lines = content.split('\n')
|
||||||
|
for i, line in enumerate(lines):
|
||||||
|
if 'overview' in line.lower():
|
||||||
|
print(f"Ligne {i}: {line}")
|
||||||
|
if i+1 < len(lines):
|
||||||
|
print(f"Ligne {i+1}: {lines[i+1]}")
|
||||||
|
if i+2 < len(lines):
|
||||||
|
print(f"Ligne {i+2}: {lines[i+2]}")
|
||||||
|
break
|
||||||
|
else:
|
||||||
|
with open(nav_file, 'w') as f:
|
||||||
f.write(new_content)
|
f.write(new_content)
|
||||||
|
print("✅ Navigation.tsx modifié avec succès")
|
||||||
|
|
||||||
|
except Exception as e:
|
||||||
|
print(f"❌ Erreur lors de la modification: {e}")
|
||||||
|
sys.exit(1)
|
||||||
PYTHON_SCRIPT
|
PYTHON_SCRIPT
|
||||||
|
"$NAV_FILE"
|
||||||
|
|
||||||
|
# Vérifier que la modification a réussi
|
||||||
|
if grep -q 'href="/team"' "$NAV_FILE"; then
|
||||||
echo "✅ Lien Équipe ajouté au composant Navigation"
|
echo "✅ Lien Équipe ajouté au composant Navigation"
|
||||||
|
else
|
||||||
|
echo "❌ Échec: Lien Équipe non trouvé après modification"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
echo "ℹ️ Lien Équipe déjà présent dans Navigation"
|
echo "ℹ️ Lien Équipe déjà présent dans Navigation"
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
echo "⚠️ Navigation.tsx non trouvé: $NAV_FILE"
|
echo "❌ Navigation.tsx non trouvé: $NAV_FILE"
|
||||||
ls -la "$(dirname "$NAV_FILE")" || echo "Dossier non trouvé"
|
echo "📁 Contenu du dossier:"
|
||||||
|
ls -la "$(dirname "$NAV_FILE")" 2>/dev/null || echo "Dossier non trouvé"
|
||||||
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user