project-nomad/.github/workflows/build-admin-on-pr.yml
Chris Sherwood c049956073 fix(ci): install libzim-dev so native @openzim/libzim build can resolve headers
The Build Admin workflow's `npm ci` step started failing on every PR opened
since early May 2026 with:

    fatal error: zim/archive.h: No such file or directory
    #include <zim/archive.h>

@openzim/libzim is a native Node module that compiles against the system
libzim C++ library via node-gyp. Builds were green through 2026-05-04 because
the ubuntu-latest runner image included libzim-dev preinstalled. Sometime
between 2026-05-04 and 2026-05-05 the runner image stopped shipping it, and
every admin PR since has failed at the libzim compile step.

Cuyua9's #733 (kiwix self-heal) and chriscrosstalk's #832 (vendor-aware AMD
HSA override) both hit this at 14:16 UTC and 16:01 UTC on 2026-05-05.

Fix: add an apt step that installs libzim-dev before `npm ci` runs.
2026-05-05 10:18:23 -07:00

31 lines
822 B
YAML

name: Build Admin
on: pull_request
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v6
- name: Set up Node.js
uses: actions/setup-node@v6
with:
node-version: '24'
cache: 'npm'
- name: Install libzim system headers
# @openzim/libzim is a native Node module that compiles against the system
# libzim C++ library via node-gyp. The ubuntu-latest runner image stopped
# shipping libzim-dev preinstalled in early May 2026, breaking npm ci.
run: sudo apt-get update && sudo apt-get install -y libzim-dev
- name: Install dependencies
run: npm ci
working-directory: ./admin
- name: Run build
run: npm run build
working-directory: ./admin