veza/scripts/start-backend.sh
senke f74b020d4b api-contracts: install openapi-generator-cli and create type generation script
- Completed Action 1.1.2.1: Installed @openapitools/openapi-generator-cli
- Completed Action 1.1.2.2: Created generate-types.sh script
- Added swagger annotations to cmd/modern-server/main.go
- Regenerated swagger.yaml with proper info section
- Successfully generated TypeScript types to src/types/generated/

The script generates types from veza-backend-api/openapi.yaml using
typescript-axios generator and creates barrel exports.
2026-01-11 16:30:43 +01:00

68 lines
2.3 KiB
Bash

#!/bin/bash
# Script pour démarrer le backend Go Veza
# Usage: ./scripts/start-backend.sh
set -e
# Couleurs pour les messages
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m' # No Color
echo -e "${BLUE}🚀 Démarrage du backend Veza...${NC}"
# Vérifier que Go est installé
if ! command -v go &> /dev/null; then
echo -e "${RED}❌ Go n'est pas installé. Veuillez installer Go 1.23+${NC}"
exit 1
fi
# Aller dans le répertoire du backend
cd "$(dirname "$0")/../veza-backend-api" || exit 1
# Vérifier que le répertoire existe
if [ ! -f "go.mod" ]; then
echo -e "${RED}❌ Répertoire backend non trouvé ou invalide${NC}"
exit 1
fi
# Vérifier les dépendances
echo -e "${YELLOW}📦 Vérification des dépendances...${NC}"
go mod download
# Vérifier que la base de données est accessible
echo -e "${YELLOW}🔍 Vérification de la connexion à la base de données...${NC}"
if ! command -v psql &> /dev/null; then
echo -e "${YELLOW}⚠️ psql non trouvé, impossible de vérifier la DB. Continuons...${NC}"
else
# Tenter de se connecter (ne pas échouer si ça ne marche pas)
psql -h localhost -U veza -d veza -c "SELECT 1;" &> /dev/null || echo -e "${YELLOW}⚠️ Impossible de se connecter à la DB. Assurez-vous qu'elle est démarrée.${NC}"
fi
# Vérifier si air (hot reload) est disponible
if command -v air &> /dev/null; then
echo -e "${GREEN}✅ Air détecté - Démarrage avec hot reload${NC}"
echo -e "${BLUE}📍 Backend sera accessible sur http://127.0.0.1:8080${NC}"
echo -e "${BLUE}📍 API sera accessible sur http://127.0.0.1:8080/api/v1${NC}"
echo ""
exec air
else
echo -e "${YELLOW}⚠️ Air non trouvé - Démarrage sans hot reload${NC}"
echo -e "${YELLOW} Installez air avec: go install github.com/air-verse/air@latest${NC}"
echo -e "${BLUE}📍 Backend sera accessible sur http://127.0.0.1:8080${NC}"
echo -e "${BLUE}📍 API sera accessible sur http://127.0.0.1:8080/api/v1${NC}"
echo ""
# Chercher le point d'entrée
if [ -f "cmd/modern-server/main.go" ]; then
exec go run cmd/modern-server/main.go
elif [ -f "cmd/server/main.go" ]; then
exec go run cmd/server/main.go
else
echo -e "${RED}❌ Point d'entrée non trouvé (cmd/modern-server/main.go ou cmd/server/main.go)${NC}"
exit 1
fi
fi