Skip to content

ci: fix Vulkan Docker build failures and GHCR registry timeout#136

Open
Ektisad25 wants to merge 5 commits into
tetherto:masterfrom
Ektisad25:fix/docker-ci-vulkan-and-presets
Open

ci: fix Vulkan Docker build failures and GHCR registry timeout#136
Ektisad25 wants to merge 5 commits into
tetherto:masterfrom
Ektisad25:fix/docker-ci-vulkan-and-presets

Conversation

@Ektisad25

Copy link
Copy Markdown

Problem

The Publish Docker image workflow was failing on two jobs:

  1. Vulkan job — build exited with code 100 during apt install
  2. GHCR token endpointnet/http: request canceled (Client.Timeout exceeded)

Changes

.devops/vulkan.Dockerfile

  • Changed base image from ubuntu:26.04ubuntu:24.04 (stable LTS)
  • Split Vulkan SDK deps from glslc install to isolate failures
  • Added fallback package installs for glslc since the package name
    differs across Ubuntu releases and GitHub runner images:

apt install -y glslc || apt install -y shaderc || apt install -y shaderc-tools

  • Added command -v glslc to verify the binary is available before build

.github/workflows/docker.yml

  • Added max-parallel: 2 to the matrix strategy to avoid overloading
    the GHCR token endpoint when multiple Docker images are pushed simultaneously

CMakePresets.json

  • Downgraded "version" from 43 for broader CMake compatibility
  • Added new configure preset x64-linux-gcc-lowmem-release with server,
    tests, and examples disabled — suitable for memory-constrained build environments
  • Added matching build preset x64-linux-gcc-lowmem-release-cli that
    builds only llama-cli with "jobs": 1 to minimize memory usage

Commits

Hash Message
036a2d1 chore: update CMakePresets for low-memory build preset
8f62a92 ci: stabilize Vulkan Docker image build on GitHub Actions
789d827 ci: add glslc package fallbacks for Vulkan Docker build
37a8fec ci: reduce parallel docker pushes to mitigate GHCR timeouts

Testing

Validated locally. The Vulkan Dockerfile now handles package naming
differences across Ubuntu 22.04 and 24.04 runner images. The max-parallel
cap prevents GHCR token endpoint exhaustion under concurrent pushes.

@Ektisad25 Ektisad25 requested a review from a team as a code owner May 18, 2026 17:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant