diff --git a/.gitea/workflows/deploy.yaml b/.gitea/workflows/deploy.yaml index b9d8729..9d1dafa 100644 --- a/.gitea/workflows/deploy.yaml +++ b/.gitea/workflows/deploy.yaml @@ -8,52 +8,36 @@ on: jobs: deploy: runs-on: ubuntu-latest - container: - image: node:20-bookworm - volumes: - - /home/deploy/.ssh:/root/.ssh:ro steps: - - name: Install SSH client - run: | - apt-get update && apt-get install -y openssh-client rsync - - name: Checkout uses: actions/checkout@v4 - - name: Install deps + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: '20' + + - name: Install dependencies run: npm ci - name: Build run: npm run build - - name: Check SSH keys + - name: Setup SSH run: | - echo "=== SSH keys available? ===" - ls -la /root/.ssh/ - - - name: Deploy to web server + mkdir -p ~/.ssh + echo "${{ secrets.SSH_DEPLOY_KEY }}" > ~/.ssh/deploy_key + chmod 600 ~/.ssh/deploy_key + + - name: Deploy to server run: | - # determine build output dir - if [ -d build ]; then DIR=build - elif [ -d dist ]; then DIR=dist - else - echo "❌ No build output directory found" >&2 - ls -la - exit 1 - fi - echo "Using build dir: $DIR" - - # deploy - tar czf portfolio.tar.gz -C "$DIR" . - scp -i /root/.ssh/deploy_to_web -o StrictHostKeyChecking=accept-new portfolio.tar.gz deploy@91.98.34.152:/tmp/ - ssh -i /root/.ssh/deploy_to_web -o StrictHostKeyChecking=accept-new deploy@91.98.34.152 "\ + tar czf portfolio.tar.gz -C dist . + scp -i ~/.ssh/deploy_key -o StrictHostKeyChecking=accept-new portfolio.tar.gz deploy@91.98.34.152:/tmp/ + ssh -i ~/.ssh/deploy_key -o StrictHostKeyChecking=accept-new deploy@91.98.34.152 "\ sudo rm -rf /var/www/louisemard.dev/* && \ sudo tar xzf /tmp/portfolio.tar.gz -C /var/www/louisemard.dev/ && \ sudo rm /tmp/portfolio.tar.gz && \ sudo chown -R deploy:www-data /var/www/louisemard.dev && \ sudo chmod -R 775 /var/www/louisemard.dev && \ sudo systemctl reload nginx" - - - name: Success - run: echo "✅ Déployé sur https://louisemard.dev" \ No newline at end of file