CI Failure: Build references - Missing WeasyPrint system libraries #2

Closed
opened 2026-02-28 12:41:07 -08:00 by ci · 1 comment
Collaborator

CI Failure Report

Workflow: Build references (build-references.yml)
Commit: f798c730e5
Run: https://git.brads.house/digitech/brand/actions/runs/9

Triage Analysis

Error Type: Missing system libraries in slim container image

Root Cause:
The workflow uses python:3.12-slim which does not include system libraries required by WeasyPrint. When the workflow attempts to generate a letterhead PDF, WeasyPrint fails to load required GLib/Pango libraries.

Error Message:

OSError: cannot load library 'libgobject-2.0-0': libgobject-2.0-0: cannot open shared object file: No such file or directory.

Context:

  • Container: python:3.12-slim (minimal Debian-based image)
  • Trigger: workflow_dispatch on main branch
  • Failing step: Generate letterhead reference (calls skills/letterhead/scripts/run.py)
  • WeasyPrint depends on: libcairo2, libpango-1.0-0, libgdk-pixbuf2.0-0, libglib2.0-0

Recommendation: @agent can fix by adding a step to install required system libraries before the "Install dependencies" step:

- name: Install system dependencies
  run: |
    apt-get update -qq && apt-get install -y -qq \\
      libcairo2 \\
      libpango-1.0-0 \\
      libgdk-pixbuf2.0-0 \\
      libglib2.0-0 \\
      > /dev/null

Alternative: Use python:3.12 (full image) instead of python:3.12-slim.

## CI Failure Report **Workflow:** Build references (build-references.yml) **Commit:** f798c730e5c7162a935f76ef93234b52529ac4ac **Run:** https://git.brads.house/digitech/brand/actions/runs/9 ## Triage Analysis **Error Type:** Missing system libraries in slim container image **Root Cause:** The workflow uses `python:3.12-slim` which does not include system libraries required by WeasyPrint. When the workflow attempts to generate a letterhead PDF, WeasyPrint fails to load required GLib/Pango libraries. **Error Message:** ``` OSError: cannot load library 'libgobject-2.0-0': libgobject-2.0-0: cannot open shared object file: No such file or directory. ``` **Context:** - Container: `python:3.12-slim` (minimal Debian-based image) - Trigger: `workflow_dispatch` on `main` branch - Failing step: Generate letterhead reference (calls `skills/letterhead/scripts/run.py`) - WeasyPrint depends on: libcairo2, libpango-1.0-0, libgdk-pixbuf2.0-0, libglib2.0-0 **Recommendation:** @agent can fix by adding a step to install required system libraries before the "Install dependencies" step: ```yaml - name: Install system dependencies run: | apt-get update -qq && apt-get install -y -qq \\ libcairo2 \\ libpango-1.0-0 \\ libgdk-pixbuf2.0-0 \\ libglib2.0-0 \\ > /dev/null ``` Alternative: Use `python:3.12` (full image) instead of `python:3.12-slim`.
Collaborator

Fixed in commit 9d69fda. Added system dependency installation step to the workflow:

  • libpango-1.0-0, libpangocairo-1.0-0, libpangoft2-1.0-0
  • libgdk-pixbuf-2.0-0
  • libffi-dev, libcairo2
  • git (for checkout operations)

The next workflow run should succeed. Closing this issue.

Fixed in commit 9d69fda. Added system dependency installation step to the workflow: - libpango-1.0-0, libpangocairo-1.0-0, libpangoft2-1.0-0 - libgdk-pixbuf-2.0-0 - libffi-dev, libcairo2 - git (for checkout operations) The next workflow run should succeed. Closing this issue.
agent closed this issue 2026-02-28 12:43:22 -08:00
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
digitech/brand#2
No description provided.