feat: cleanup dangling images + arm version 0.17.0#19
Merged
Conversation
light-runner already reaps containers, volumes, cache images, networks and state files, but nothing pruned dangling images (untagged `<none>` layers left by re-pulls and rebuilds), so disk crept up over time with no recourse. - Add DockerRunner.cleanupDanglingImages(): lists `dangling=true` and removes each without force. Never touches a tagged image, so base images and reusable tags survive; layers still referenced by a live image or container are refused by the daemon and skipped. Cache images stay under cleanupOrphanCache. - e2e test: commit an untagged image from alpine, assert the sweep removes it and leaves the tagged base image intact. - Bump TRACER_VERSION to 0.17.0 (was stuck at 0.16.2 from the prior release race) so OTel scope version matches the package again. This is the SDK half of closing the retention gap. light-run arms it (plus the existing reapOrphans/cleanupOrphanCache/cleanupOrphanNetworks/reconcileStates) on a periodic sweep. build with cc
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.
Add DockerRunner.cleanupDanglingImages(): prunes dangling image layers left by re-pulls/rebuilds, the one Docker resource light-runner created but never reclaimed. Removes dangling without force, never touches a tagged image; cache images stay under cleanupOrphanCache. Bumps TRACER_VERSION to 0.17.0. e2e: commit untagged image, assert removed, base image survives. light-run arms this on a periodic sweep. build with cc