name: Build & Deploy to Hostverge FTP (Gitea Actions) on: push: branches: - main - master workflow_dispatch: jobs: build-and-deploy: runs-on: ubuntu-latest steps: - name: 📥 Clone Repository env: GITEA_TOKEN: ${{ gitea.token }} run: | echo "=== 1. Forcer le routage IPv4 vers l'hôte Docker ===" HOST_IP=$(ip route | awk '/default/ { print $3 }') echo "IP de l'hôte Docker : $HOST_IP" # Injecter l'IP de l'hôte pour git.kaelstudio.tech dans /etc/hosts echo "$HOST_IP git.kaelstudio.tech" >> /etc/hosts echo "=== 2. Forcer Git en IPv4 et sans vérification SSL ===" git config --global http.sslVerify false git config --global curl.ipresolve 4 echo "=== 3. Initialisation et Clonage ===" git init . git remote add origin "https://${GITEA_TOKEN}@git.kaelstudio.tech/${{ gitea.repository }}.git" || true git fetch --depth=1 origin "${{ gitea.ref_name || 'main' }}" git checkout -f FETCH_HEAD - name: 🟢 Setup Node.js 20 uses: actions/setup-node@v4 with: node-version: 20 - name: 📦 Install dependencies run: npm ci || npm install - name: 🛠️ Build application env: VITE_NCB_INSTANCE: ${{ secrets.VITE_NCB_INSTANCE || '54770_uwu_finances' }} VITE_NCB_SECRET_KEY: ${{ secrets.VITE_NCB_SECRET_KEY || 'sk_live_0dydoaq1kib4f23ou6' }} VITE_NCB_DATA_API_URL: ${{ secrets.VITE_NCB_DATA_API_URL || 'https://eu-api.nocodebackend.com' }} run: npm run build - name: 🚀 Deploy to Hostverge FTP env: FTP_HOST: ${{ secrets.FTP_SERVER || 'ftp.ka-el.fr' }} FTP_USER: ${{ secrets.FTP_USERNAME || 'antigravity@ka-el.fr' }} FTP_PASSWORD: ${{ secrets.FTP_PASSWORD || 'dxr1yaor4i' }} run: node scripts/deploy-ftp.cjs