Files
TechradarDev/scripts/create-team-page.sh
syoul 74214fc286 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
2025-12-06 22:21:44 +01:00

116 lines
3.4 KiB
Bash
Executable File
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
# 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")"
cat > "$TEAM_PAGE" << 'EOF'
import Head from "next/head";
import { CustomPage } from "@/pages/_app";
const TeamPage: CustomPage = () => {
return (
<>
<Head>
<title>Équipe & Technologies - Laplank</title>
</Head>
<div style={{ width: '100%', height: '100vh', border: 'none', margin: 0, padding: 0 }}>
<iframe
src="/team.html"
style={{
width: '100%',
height: '100%',
border: 'none',
margin: 0,
padding: 0
}}
title="Équipe & Technologies"
/>
</div>
</>
);
};
export default TeamPage;
EOF
echo "✅ Page team.tsx créée (iframe)"
else
echo " Page team.tsx existe déjà"
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'
import re
import sys
nav_file = sys.argv[1]
print(f"📝 Modification de {nav_file}")
try:
with open(nav_file, 'r') as f:
content = f.read()
# 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'
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
"$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"
echo "📁 Contenu du dossier:"
ls -la "$(dirname "$NAV_FILE")" 2>/dev/null || echo "Dossier non trouvé"
exit 1
fi