Skip to content

chore(plugin-oci): drop the per-target progress logs - #384

Open
raphaelvigee wants to merge 1 commit into
feat/oci-indexfrom
chore/oci-drop-progress-logs
Open

chore(plugin-oci): drop the per-target progress logs#384
raphaelvigee wants to merge 1 commit into
feat/oci-indexfrom
chore/oci-drop-progress-logs

Conversation

@raphaelvigee

Copy link
Copy Markdown
Member

Top of stack #379: #159#378#381#383 → this.

What

Six info! lines saying a driver did the thing it exists to do:

Driver Line
oci_pull oci_pull: pulled
oci_push oci_push: pushed
oci_load oci_load: loaded
oci_image oci_image: assembled
oci_layer oci_layer: packed
oci_index oci_index: grouped

All removed. The engine already reports which targets ran and how long they took, so these restate it in a second, less structured place — and they scale with the graph, which is the wrong direction for a build with a few hundred images.

What stays

The two warn!s, because they say something the engine cannot:

  • oci_pull on an unpinned tag — the ref string is the cache key, so a moved tag serves a stale archive. Not progress; a correctness caveat.
  • a target's log.txt failing to open — an error path.

Plus the debug! about falling back to anonymous registry credentials, which is what an unexpected 401 gets diagnosed from.

Fallout

  • oci_push no longer binds the digest push_layout returns.
  • The cdylib's log-sink doc cited docker_build built / oci_push: pushed as the reason the sink exists. It now names the diagnostics that actually depend on it, since the lines it pointed at are gone.

One thing to decide

oci_load's line was the only place the derived <repo>:<hashin> tag was surfaced. With it gone, anything that wants to know what to docker run has to recompute the name and read hashin out of heph inspect.

That is a real loss and it is not obviously the right trade. The clean fix is to expose the tag as an output group, the way oci_image exposes digest — a downstream target could then read it directly, which is better than a log line was. I have not done it here: oci_load is an uncached action with no outputs today, so adding one is a design change rather than a cleanup, and it belongs in its own PR.

Say the word and I will add it; otherwise this ships as-is.

🤖 Generated with Claude Code

https://claude.ai/code/session_01WqQZxsTqanJRWLWdPSchBo

Six `info!` lines saying a driver had done the thing it exists to do:
`oci_pull: pulled`, `oci_push: pushed`, `oci_load: loaded`,
`oci_image: assembled`, `oci_layer: packed`, `oci_index: grouped`.

The engine already reports which targets ran and how long they took, so
one line per target per driver restates it in a second, less structured
place — and scales with the graph, which is the wrong direction for a
build of a few hundred images.

The two `warn!`s stay. They report something the engine cannot: that an
`oci_pull` ref is an unpinned tag and therefore not reproducible, and that
a target's `log.txt` could not be opened. Both are diagnostics, not
progress. The `debug!` about anonymous registry credentials stays too.

`oci_push` no longer binds the digest `push_layout` returns, and the
cdylib's log-sink doc cited two of the removed lines as the reason the
sink exists; it now names the diagnostics that actually depend on it.

One consequence worth stating: `oci_load`'s line was the only place the
derived `<repo>:<hashin>` tag was surfaced. Anything that needs it now has
to compute it, or the tag has to be exposed as an output group — noted on
the PR rather than decided here.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WqQZxsTqanJRWLWdPSchBo
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.

1 participant