Files
iot-dc3/.github/workflows/ci-backend.yml
Henry Zhang 8ec3d38043 ci(backend): run backend CI on every PR (fix required-checks BLOCKED) (#155)
ci-backend.yml ignored dc3-web paths on pull_request, so npm-only
dependabot PRs never triggered backend CI — but compile/Unit/Integration/
coverage are required status checks, leaving those PRs perpetually
BLOCKED (had to --admin merge). Drop the pull_request paths-ignore so
every PR runs backend CI; keep it on push (a dc3-web-only push still
skips backend CI, which is fine — the PR already ran it).
2026-08-03 14:23:49 +08:00

44 lines
1.1 KiB
YAML

name: Backend CI
on:
push:
branches: [ develop, main ]
paths-ignore:
- dc3-web/**
pull_request:
branches: [ develop, main ]
# no paths-ignore here: required checks (compile/Unit/Integration/coverage)
# must run on every PR, including dc3-web-only ones (they compile the
# unchanged backend — fast with the maven cache — so the PR isn't left BLOCKED)
permissions:
contents: read
concurrency:
group: ci-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
compile:
runs-on: ubuntu-latest
timeout-minutes: 60
steps:
- name: Checkout
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0
- name: Set up JDK 21
uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961
with:
distribution: liberica
java-version: 21
cache: maven
cache-dependency-path: "**/pom.xml"
- name: Audit controller permissions
run: python3 dc3/bin/audit_controller_permissions.py
- name: Compile
run: |
set -euo pipefail
mvn -U -e -B -DskipTests compile --no-transfer-progress