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
|
||||
|
||||
# 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
|
||||
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
|
||||
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
|
||||
# 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
|
||||
|
||||
set -e # Arrêter en cas d'erreur
|
||||
|
||||
TECHRADAR_DIR=".techradar"
|
||||
TEAM_PAGE="$TECHRADAR_DIR/src/pages/team.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)
|
||||
if [ ! -f "$TEAM_PAGE" ]; then
|
||||
mkdir -p "$(dirname "$TEAM_PAGE")"
|
||||
@@ -45,31 +51,65 @@ fi
|
||||
|
||||
# Modifier Navigation.tsx pour ajouter le lien
|
||||
if [ -f "$NAV_FILE" ]; then
|
||||
echo "📝 Navigation.tsx trouvé, vérification du lien..."
|
||||
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
|
||||
# Utiliser Python pour une modification plus précise
|
||||
python3 << PYTHON_SCRIPT
|
||||
python3 << 'PYTHON_SCRIPT'
|
||||
import re
|
||||
import sys
|
||||
|
||||
with open("$NAV_FILE", 'r') as f:
|
||||
content = f.read()
|
||||
nav_file = sys.argv[1]
|
||||
print(f"📝 Modification de {nav_file}")
|
||||
|
||||
# Trouver la fin du lien Overview et insérer le nouveau lien avant le commentaire
|
||||
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'
|
||||
try:
|
||||
with open(nav_file, 'r') as f:
|
||||
content = f.read()
|
||||
|
||||
new_content = re.sub(pattern, replacement, content)
|
||||
# Trouver la fin du lien Overview et insérer le nouveau lien avant le commentaire
|
||||
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'
|
||||
|
||||
with open("$NAV_FILE", 'w') as f:
|
||||
f.write(new_content)
|
||||
new_content = re.sub(pattern, replacement, content)
|
||||
|
||||
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)
|
||||
print("✅ Navigation.tsx modifié avec succès")
|
||||
|
||||
except Exception as e:
|
||||
print(f"❌ Erreur lors de la modification: {e}")
|
||||
sys.exit(1)
|
||||
PYTHON_SCRIPT
|
||||
echo "✅ Lien Équipe ajouté au composant Navigation"
|
||||
"$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"
|
||||
else
|
||||
echo "❌ Échec: Lien Équipe non trouvé après modification"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
echo "ℹ️ Lien Équipe déjà présent dans Navigation"
|
||||
fi
|
||||
else
|
||||
echo "⚠️ Navigation.tsx non trouvé: $NAV_FILE"
|
||||
ls -la "$(dirname "$NAV_FILE")" || echo "Dossier non trouvé"
|
||||
echo "❌ Navigation.tsx non trouvé: $NAV_FILE"
|
||||
echo "📁 Contenu du dossier:"
|
||||
ls -la "$(dirname "$NAV_FILE")" 2>/dev/null || echo "Dossier non trouvé"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
Reference in New Issue
Block a user