Initial commit: Add HomeBase application with Docker support, deployment scripts, and health check endpoint
Some checks failed
Deploy to BeePC / deploy (push) Has been cancelled
Some checks failed
Deploy to BeePC / deploy (push) Has been cancelled
This commit is contained in:
47
.github/workflows/deploy.yml
vendored
Normal file
47
.github/workflows/deploy.yml
vendored
Normal file
@@ -0,0 +1,47 @@
|
||||
name: Deploy to BeePC
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ main ]
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
deploy:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Setup SSH
|
||||
run: |
|
||||
mkdir -p ~/.ssh
|
||||
echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa
|
||||
chmod 600 ~/.ssh/id_rsa
|
||||
ssh-keyscan -H beepc >> ~/.ssh/known_hosts 2>/dev/null || true
|
||||
|
||||
- name: Deploy to server
|
||||
run: |
|
||||
ssh spencer@beepc "mkdir -p /home/spencer/homebase"
|
||||
rsync -avz --delete \
|
||||
--exclude 'node_modules' \
|
||||
--exclude '.git' \
|
||||
--exclude '.github' \
|
||||
--exclude '*.log' \
|
||||
./ spencer@beepc:/home/spencer/homebase/
|
||||
|
||||
- name: Run Docker Compose
|
||||
run: |
|
||||
ssh spencer@beepc << 'ENDSSH'
|
||||
cd /home/spencer/homebase
|
||||
docker compose down 2>/dev/null || true
|
||||
docker compose up -d --build
|
||||
sleep 5
|
||||
docker compose ps
|
||||
docker compose logs --tail=20
|
||||
ENDSSH
|
||||
|
||||
- name: Verify deployment
|
||||
run: |
|
||||
sleep 10
|
||||
curl -f http://homebase.sketchferret.com/health || exit 1
|
||||
Reference in New Issue
Block a user