ci: authenticate the registry upload with DX_HUB_API_KEY - #30
Merged
Conversation
The registry publish 401s at the edge upload: it authenticates with a hub-identity verifiable presentation, and CI holds no HALO identity to produce one. The CLI (dxos/dxos) now accepts DX_HUB_API_KEY and sends it as X-Admin-Key in place of the VP flow, so the release passes the secret through. Also lets a dispatch override the pinned CLI (`cli_package`), so a pkg.pr.new branch build can be tested against the real edge before landing in dxos, and teaches the debug workflow to probe /registry/upload with the key — whether the server honors X-Admin-Key on that route is not observable from this repo. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SZ4ZdaPo9erkh5yF4eXh3Z
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The registry publish 401s at the edge upload: it authenticates with a hub-identity verifiable presentation, and CI holds no HALO identity to produce one (
'unauthorized response received before identity was set'in dxos'sbase-http-client). Seeding an identity per run would accrete a device into its HALO on every release, so the unblock is the edge/hub admin API key.Changes
release.yml— passDX_HUB_API_KEY: ${{ secrets.DX_HUB_API_KEY }}(already set on this repo) to the publish step. The CLI side (dxos brancha66cc24, PR to follow once proven) sends it asX-Admin-Keyin place of the VP flow, leaving the identity path untouched when the env is absent.release.yml— new optionalcli_packagedispatch input overriding the pinnedDX_CLI_PACKAGE, so a pkg.pr.new branch build can be tested against the real edge before its dxos PR lands.debug-registry-auth.yml— the edge probe now also POSTs/registry/uploadwithX-Admin-Key(status only), answering the one question not observable from these repos: whether the edge honors the admin key on that route.Verification (CLI side, local)
Against a live local HTTP server capturing headers:
The sandbox cannot reach the real edge (socket close before response), so server acceptance is exactly what the debug probe and the next
registry_onlydispatch establish.Test plan after merge
with X-Admin-Keystatus per environment tells us if the server honors the key.registry_only: trueandcli_package=https://pkg.pr.new/dxos/dxos/@dxos/cli-linux-x64@a66cc24→ the full credentialed publish with the branch CLI.a66cc24as proven.Generated by Claude Code