From d65e724a1b1ec4a5b9eaeab91e7577ad73e83641 Mon Sep 17 00:00:00 2001 From: Nicholas Hastings Date: Sun, 12 Jul 2026 11:58:52 -0400 Subject: [PATCH] Add CI job for validating plugins/inc --- .github/workflows/ci.yml | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8f07dc6..f2216e7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -101,6 +101,41 @@ jobs: path: build/package/addons if-no-files-found: error + compile-plugins: + name: compile-plugins-sm${{ matrix.sm.label }} + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + sm: + - label: "1.12" + branch: "1.12-dev" + - label: "1.13" + branch: "master" + + steps: + - name: Checkout + uses: actions/checkout@v7 + + - name: Clone SourceMod includes + run: | + git clone --depth 1 -b ${{ matrix.sm.branch }} https://github.com/alliedmodders/sourcemod.git sourcemod + + - name: Compile Pawn plugins + run: | + mkdir -p compiled + status=0 + for f in Pawn/*.sp; do + echo "::group::${f}" + docker run --rm -v "${{ github.workspace }}:/work" -w /work \ + ghcr.io/alliedmodders/sourcemod-spcomp:master \ + -i Pawn/includes -i sourcemod/plugins/include \ + "${f}" -o "compiled/$(basename "${f%.sp}.smx")" \ + || status=1 + echo "::endgroup::" + done + exit "${status}" + release: name: Release needs: build