diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 9b4a7a8..032b1b7 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -2,20 +2,14 @@ name: CI on: push: - branches: ["main", "master"] paths: - "backend/**" - "ui/**" - - "caddy/**" - - "docker-compose.yml" - ".gitea/workflows/ci.yaml" pull_request: - branches: ["main", "master"] paths: - "backend/**" - "ui/**" - - "caddy/**" - - "docker-compose.yml" - ".gitea/workflows/ci.yaml" concurrency: @@ -23,10 +17,13 @@ concurrency: cancel-in-progress: true jobs: - # ── backend: vet & test ─────────────────────────────────────────────────────── - test-backend: - name: Test backend + # ── Go: vet + build + test ──────────────────────────────────────────────── + backend: + name: Backend runs-on: ubuntu-latest + defaults: + run: + working-directory: backend steps: - uses: actions/checkout@v4 @@ -36,16 +33,23 @@ jobs: cache-dependency-path: backend/go.sum - name: go vet - working-directory: backend run: go vet ./... + - name: Build backend + run: go build -o /dev/null ./cmd/backend + + - name: Build runner + run: go build -o /dev/null ./cmd/runner + + - name: Build healthcheck + run: go build -o /dev/null ./cmd/healthcheck + - name: Run tests - working-directory: backend run: go test -short -race -count=1 -timeout=60s ./... - # ── ui: type-check & build ──────────────────────────────────────────────────── - check-ui: - name: Check ui + # ── UI: type-check + build ──────────────────────────────────────────────── + ui: + name: UI runs-on: ubuntu-latest defaults: run: @@ -67,57 +71,3 @@ jobs: - name: Build run: npm run build - - # ── docker: validate Dockerfiles build (no push) ────────────────────────────── - docker-backend: - name: Docker / backend - runs-on: ubuntu-latest - needs: [test-backend] - steps: - - uses: actions/checkout@v4 - - uses: docker/setup-buildx-action@v3 - - name: Build - uses: docker/build-push-action@v6 - with: - context: backend - target: backend - push: false - - docker-runner: - name: Docker / runner - runs-on: ubuntu-latest - needs: [test-backend] - steps: - - uses: actions/checkout@v4 - - uses: docker/setup-buildx-action@v3 - - name: Build - uses: docker/build-push-action@v6 - with: - context: backend - target: runner - push: false - - docker-ui: - name: Docker / ui - runs-on: ubuntu-latest - needs: [check-ui] - steps: - - uses: actions/checkout@v4 - - uses: docker/setup-buildx-action@v3 - - name: Build - uses: docker/build-push-action@v6 - with: - context: ui - push: false - - docker-caddy: - name: Docker / caddy - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: docker/setup-buildx-action@v3 - - name: Build - uses: docker/build-push-action@v6 - with: - context: caddy - push: false