nyanimedb/.forgejo/workflows/build-and-deploy.yml
nihonium f69c60c146
Some checks failed
Build and Deploy Go App / build (push) Failing after 4m41s
Build and Deploy Go App / deploy (push) Has been skipped
fix: migrate deploy to host
2025-10-08 01:53:06 +03:00

61 lines
1.4 KiB
YAML

name: Build and Deploy Go App
on:
push:
branches:
- master
pull_request:
jobs:
build:
runs-on: host
steps:
- name: Install Node
run: |
apt update
apt-get install -y nodejs
node -v
- name: Checkout code
uses: actions/checkout@v4
- name: Build Go app
run: |
cd modules/server
go mod tidy
go build -o nyanimedb .
- name: Build Docker image
run: docker build -t nyanimedb:latest .
- name: Save Docker image artifact
run: docker save nyanimedb:latest -o nyanimedb.tar
- name: Upload image artifact
uses: actions/upload-artifact@v4
with:
name: docker-image
path: nyanimedb.tar
deploy:
runs-on: host
needs: build
if: ${{ github.event.inputs.deploy == 'true' }} # manual deploy trigger
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Download image
uses: actions/download-artifact@v4
with:
name: docker-image
path: .
- name: Load Docker image
run: docker load -i nyanimedb.tar
- name: Deploy container locally
run: |
echo "Deploying nyanimedb locally..."
docker stop nyanimedb || true
docker rm nyanimedb || true
docker run -d --name nyanimedb -p 8080:8080 nyanimedb:latest