#!/bin/bash # This script helps deploy your application to Hugging Face Spaces # Set your Hugging Face username and space name read -p "Enter your Hugging Face username: " HF_USERNAME read -p "Enter your Space name (e.g., swahili-content-generation): " SPACE_NAME # Check if git is installed if ! command -v git &> /dev/null; then echo "Git is not installed. Please install git and try again." exit 1 fi # Check if git-lfs is installed if ! command -v git-lfs &> /dev/null; then echo "Git LFS is not installed. Please install git-lfs and try again." echo "Visit https://git-lfs.github.com/ for installation instructions." exit 1 fi # Check if the repository exists if [ ! -d ".git" ]; then echo "Initializing git repository..." git init git lfs install fi # Set up Git LFS tracking for large files echo "Setting up Git LFS for large files..." git lfs track "data/pdfs/*.pdf" git lfs track "data/index/*.index" git add .gitattributes # Rename Dockerfile.spaces to Dockerfile for Hugging Face Spaces cp Dockerfile.spaces Dockerfile # Add all files to git git add . # Commit changes git commit -m "Prepare for Hugging Face Spaces deployment" # Add Hugging Face Spaces as a remote git remote add space https://huggingface.co/spaces/$HF_USERNAME/$SPACE_NAME || git remote set-url space https://huggingface.co/spaces/$HF_USERNAME/$SPACE_NAME # Push to Hugging Face Spaces echo "Pushing to Hugging Face Spaces..." git push --force space main echo "Deployment complete! Your application should be available at: https://huggingface.co/spaces/$HF_USERNAME/$SPACE_NAME" echo "Note: It may take a few minutes for the Space to build and deploy."