Add deploy script and simplify Gitea workflow
Some checks failed
Deploy hatch.surf / deploy (push) Failing after 0s

- Added deploy.sh for manual deployment
- Simplified Gitea Actions workflow
- Note: Gitea Actions Docker builds have networking issues
- Manual deployment via deploy.sh works perfectly

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
Chris Anderson 2026-06-24 10:28:07 +02:00
parent e5e535e669
commit 28ef0685b6
2 changed files with 57 additions and 8 deletions

View File

@ -1,15 +1,12 @@
name: Build hatch.surf
name: Deploy hatch.surf
on:
push:
branches: [main]
workflow_dispatch:
env:
IMAGE_NAME: hatch-web
jobs:
build:
deploy:
runs-on: ubuntu-latest
steps:
@ -18,7 +15,23 @@ jobs:
- name: Build Docker image
run: |
docker build -t ${{ env.IMAGE_NAME }}:${{ github.sha }} .
docker tag ${{ env.IMAGE_NAME }}:${{ github.sha }} ${{ env.IMAGE_NAME }}:latest
docker build -t hatch-web:latest .
echo "Docker image built successfully"
docker images | grep ${{ env.IMAGE_NAME }}
- name: Deploy container
run: |
docker stop hatch-web 2>/dev/null || true
docker rm hatch-web 2>/dev/null || true
docker compose up -d
echo "Container deployed"
- name: Verify deployment
run: |
sleep 5
if curl -s -o /dev/null -w "%{http_code}" http://localhost:8080 | grep -q "200"; then
echo "✅ hatch.surf deployed successfully!"
else
echo "❌ Deployment failed!"
docker logs hatch-web
exit 1
fi

36
deploy.sh Normal file
View File

@ -0,0 +1,36 @@
#!/bin/bash
# Deploy hatch.surf
# Run this script to build and deploy the Docker container
set -e
echo "=== Deploying hatch.surf ==="
# Build the Docker image
echo "Building Docker image..."
docker build -t hatch-web:latest .
# Stop existing container
echo "Stopping existing container..."
docker stop hatch-web 2>/dev/null || true
docker rm hatch-web 2>/dev/null || true
# Start new container
echo "Starting new container..."
docker compose up -d
# Wait for health check
echo "Waiting for container to be healthy..."
sleep 5
# Verify
if curl -s -o /dev/null -w "%{http_code}" http://localhost:8080 | grep -q "200"; then
echo "✅ hatch.surf deployed successfully!"
echo " Container: hatch-web"
echo " Port: 8080"
echo " Status: $(curl -s -o /dev/null -w "%{http_code}" http://localhost:8080)"
else
echo "❌ Deployment failed!"
docker logs hatch-web
exit 1
fi