Update CI workflow to match Go+React stack with Docker registry push
Some checks failed
Dev Build & Deploy / test-and-build (push) Failing after 1s
Dev Build & Deploy / docker-build-push (push) Has been skipped
Dev Build & Deploy / deploy-dev (push) Has been skipped

This commit is contained in:
Joshua King
2026-05-20 08:04:50 -04:00
parent 0ac4898027
commit 87cb517623

View File

@@ -1,4 +1,4 @@
name: Dev Build name: Dev Build & Deploy
on: on:
pull_request: pull_request:
@@ -6,40 +6,88 @@ on:
push: push:
branches: [dev] branches: [dev]
env:
REGISTRY: code.cubecraftcreations.com
BACKEND_IMAGE: ${{ gitea.repository }}/backend
FRONTEND_IMAGE: ${{ gitea.repository }}/frontend
jobs: jobs:
build-test: test-and-build:
runs-on: ubuntu-dotnet runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: Restore backend - name: Setup Go
run: dotnet restore uses: actions/setup-go@v5
with:
go-version: "1.23"
- name: Run backend tests
run: go test ./...
working-directory: ./go-backend
- name: Build backend - name: Build backend
run: dotnet build --no-restore --configuration Release run: go build -ldflags="-w -s" -o /tmp/server ./cmd/server
working-directory: ./go-backend
- name: Test backend
run: dotnet test --no-build --configuration Release
- name: Setup Node - name: Setup Node
uses: actions/setup-node@v4 uses: actions/setup-node@v4
with: with:
node-version: "24" node-version: "22"
- name: Install frontend deps - name: Install frontend deps
run: npm ci run: npm ci
working-directory: ./frontend working-directory: ./frontend
- name: Lint frontend
run: npm run lint
working-directory: ./frontend
- name: Build frontend - name: Build frontend
run: npm run build run: npm run build
working-directory: ./frontend working-directory: ./frontend
deploy-dev: docker-build-push:
needs: build-test needs: test-and-build
if: gitea.event_name == 'push' if: gitea.event_name == 'push'
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Login to Gitea Container Registry
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
username: ${{ gitea.actor }}
password: ${{ secrets.GITEA_TOKEN }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build & push backend image
uses: docker/build-push-action@v6
with:
context: ./go-backend
push: true
tags: |
${{ env.REGISTRY }}/${{ env.BACKEND_IMAGE }}:dev
${{ env.REGISTRY }}/${{ env.BACKEND_IMAGE }}:${{ gitea.sha }}
- name: Build & push frontend image
uses: docker/build-push-action@v6
with:
context: ./frontend
push: true
tags: |
${{ env.REGISTRY }}/${{ env.FRONTEND_IMAGE }}:dev
${{ env.REGISTRY }}/${{ env.FRONTEND_IMAGE }}:${{ gitea.sha }}
deploy-dev:
needs: docker-build-push
runs-on: ubuntu-latest
steps: steps:
- name: Deploy dev - name: Deploy dev
run: | run: |