NTIA-PRO / deploy.sh
Ntdeseb's picture
Initial commit: Modelos libres de IA
5cd9469
#!/bin/bash
# Script para desplegar el Space en Hugging Face
# Uso: ./deploy.sh [nombre-del-space]
set -e
# Colores para output
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m' # No Color
# Función para imprimir mensajes
print_message() {
echo -e "${GREEN}[INFO]${NC} $1"
}
print_warning() {
echo -e "${YELLOW}[WARNING]${NC} $1"
}
print_error() {
echo -e "${RED}[ERROR]${NC} $1"
}
print_header() {
echo -e "${BLUE}================================${NC}"
echo -e "${BLUE}$1${NC}"
echo -e "${BLUE}================================${NC}"
}
# Verificar si se proporcionó un nombre
if [ -z "$1" ]; then
print_error "Debes proporcionar un nombre para el Space"
echo "Uso: ./deploy.sh [nombre-del-space]"
echo "Ejemplo: ./deploy.sh modelos-libres-ia"
exit 1
fi
SPACE_NAME=$1
USERNAME=$(git config user.name || echo "tu-usuario")
print_header "🚀 Desplegando Space: $SPACE_NAME"
# Verificar que estamos en el directorio correcto
if [ ! -f "app.py" ]; then
print_error "No se encontró app.py. Asegúrate de estar en el directorio correcto."
exit 1
fi
# Verificar que git está configurado
if ! git config user.name > /dev/null 2>&1; then
print_warning "Git no está configurado. Configurando..."
read -p "Ingresa tu nombre de usuario de Git: " git_username
read -p "Ingresa tu email de Git: " git_email
git config user.name "$git_username"
git config user.email "$git_email"
fi
# Verificar que huggingface_hub está instalado
if ! python -c "import huggingface_hub" > /dev/null 2>&1; then
print_warning "Instalando huggingface_hub..."
pip install huggingface_hub
fi
print_message "Inicializando repositorio Git..."
git init
git add .
print_message "Haciendo commit inicial..."
git commit -m "Initial commit: Modelos libres de IA"
print_message "Creando Space en Hugging Face..."
huggingface-cli repo create $SPACE_NAME --type space --space-sdk gradio
print_message "Configurando el repositorio remoto..."
git remote add origin https://huggingface.co/spaces/$USERNAME/$SPACE_NAME
print_message "Subiendo archivos al Space..."
git push -u origin main
print_header "✅ ¡Space creado exitosamente!"
echo -e "${GREEN}Tu Space está disponible en:${NC}"
echo -e "${BLUE}https://huggingface.co/spaces/$USERNAME/$SPACE_NAME${NC}"
echo ""
echo -e "${YELLOW}Próximos pasos:${NC}"
echo "1. Ve a la URL del Space"
echo "2. Espera a que se construya (puede tomar unos minutos)"
echo "3. ¡Disfruta usando tus modelos libres!"
echo ""
echo -e "${YELLOW}Para actualizar el Space en el futuro:${NC}"
echo "git add ."
echo "git commit -m 'Actualización'"
echo "git push"
echo ""
print_message "¡Despliegue completado! 🎉"