Skip to content

Conversation

@Glitchy-Sheep
Copy link
Contributor

@Glitchy-Sheep Glitchy-Sheep commented Jan 21, 2026

PR Description

Migrates the imagedigest utility from deckhouse-cse to d8 CLI tools.

➕ What's New

New d8 tools imagedigest command for working with GOST R 34.11-2012 (Streebog-256) digests on container images.

There was general refactor along the way, to make the code consistent with d8-cli layout/style but behavior is generally the same.

Subcommands:

  • calculate - compute GOST digest for a remote image
  • calculate-from-file - compute GOST digest for a local file or stdin
  • add - add GOST digest annotation to image metadata
  • validate - verify stored digest (supports --fix for auto-repair)

Flags:

  • --insecure / -i — allow insecure registry connections
  • --debug / -d — enable debug logging
  • --json — use JSON formatter for output logs

🧪 Tests

Unit tests cover core functionality: hash calculation, layer extraction, annotation handling, and digest validation (including mismatch scenarios).

Signed-off-by: Roman Berezkin <roman.berezkin@flant.com>
Signed-off-by: Roman Berezkin <roman.berezkin@flant.com>
Signed-off-by: Roman Berezkin <roman.berezkin@flant.com>
Signed-off-by: Roman Berezkin <roman.berezkin@flant.com>
Signed-off-by: Roman Berezkin <roman.berezkin@flant.com>
Signed-off-by: Roman Berezkin <roman.berezkin@flant.com>
Signed-off-by: Roman Berezkin <roman.berezkin@flant.com>
Signed-off-by: Roman Berezkin <roman.berezkin@flant.com>
@Glitchy-Sheep Glitchy-Sheep self-assigned this Jan 21, 2026
@Glitchy-Sheep Glitchy-Sheep added the enhancement New feature or request label Jan 21, 2026
@Glitchy-Sheep Glitchy-Sheep marked this pull request as ready for review January 21, 2026 20:46
Signed-off-by: Roman Berezkin <roman.berezkin@flant.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants