Skip to content

fix: avoid GHCR dependency in dashboard build - #55

Open
eldraco wants to merge 5 commits into
mainfrom
fix/dashboard-build-without-ghcr
Open

fix: avoid GHCR dependency in dashboard build#55
eldraco wants to merge 5 commits into
mainfrom
fix/dashboard-build-without-ghcr

Conversation

@eldraco

@eldraco eldraco commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

Summary

  • install the pinned uv==0.12.9 package from PyPI instead of copying the binary from a GHCR image
  • preserve the original plugin lifecycle: stop the previous Compose project and run up -d --build so changed build contexts are detected

Motivation

The dashboard build failed while resolving the pinned ghcr.io/astral-sh/uv image because the GHCR token request was denied. This prevented SCL itself from building. Installing the same pinned uv version through the Python package index avoids that additional registry dependency.

The later Docker Hub timeout on Kilimanjaro was a separate host networking problem and is not a reason to disable plugin builds.

Tradeoff

This pins the uv version but does not commit an explicit artifact checksum. The previous GHCR reference pinned an image digest. If an explicit package hash is required, we should add architecture-specific wheel hashes rather than skip plugin rebuilds.

Validation

  • docker compose build dashboard completed successfully
  • Docker Hub metadata checks succeeded and unchanged dashboard layers were cached
  • local Agent Manager Start executed the normal --build path and returned HTTP 200
  • proxied Agent Manager health returned healthy, version 1.0.2
  • git diff --check

@eldraco eldraco changed the title fix: avoid GHCR dependency in dashboard build fix: make dashboard and plugin starts resilient to registry outages Sep 4, 2026
@HappyStoic

Copy link
Copy Markdown
Collaborator

What is the motivation behind these changes @eldraco?

The commit fix: reuse local images when starting plugins is not good because it does not allow me to fix classes/changes during semester. Students would be stuck with the old wrong image because the image would be never rebuilt without some manual image deletion performed by students. So the original step to always check if build context changed was on purpose. If the build context was not changed, cache layers are used and there's no problem. So I don't think we want this change. The same effect applies for plugins.

The second commit might be okay with a drawback that we are not checking checksum of the dependency. What is the issue in your computer with ghcr?

@eldraco eldraco changed the title fix: make dashboard and plugin starts resilient to registry outages fix: avoid GHCR dependency in dashboard build Sep 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants