Skip to content

feat: accept { name, tagSuffix } image entries in perfkit.yaml (0.1.6) - #12

Merged
psanders merged 1 commit into
mainfrom
feat/image-tag-suffix
Nov 4, 2026
Merged

psanders merged 1 commit into
mainfrom
feat/image-tag-suffix

Conversation

@psanders

@psanders psanders commented Nov 4, 2026

Copy link
Copy Markdown
Member

What changes for callers

  • perfkit.yaml v1 (additive): an images entry can be { name, tagSuffix } besides a plain image name. Its tag is --target-version followed by tagSuffix: { name: fonoster/routr-edgeport, tagSuffix: -go-experimental } with --target-version 2.32.0 runs fonoster/routr-edgeport:2.32.0-go-experimental. tagSuffix must match ^[A-Za-z0-9._-]+$; name must carry no tag or digest. String entries behave exactly as before.
  • Compose env: unchanged rule, PERFKIT_IMAGE_<KEY> = key upper-cased, every non [A-Z0-9] character turned into _. A key edgeportGo gives PERFKIT_IMAGE_EDGEPORTGO (now documented).
  • report.json v1: unchanged shape; run.images holds name:tag@sha256:…, and the existing regex already accepts suffixed tags (test added).
  • Workflow inputs: unchanged.

Digest resolution, --dry-run output and --local all go through the same resolver. schemas/perfkit-v1.schema.json regenerated. Docs: docs/perfkit-yaml.md, docs/project-setup.md. Version 0.1.6.

Tests

Schema accept/reject, resolve with suffix, dry-run line, compose env names, report regex. typecheck, lint and npm test (439 passing).

🤖 Generated with Claude Code

https://claude.ai/code/session_01WSt25Wd7udAq3aj47MKn5J

An images entry may now be an object { name, tagSuffix }; its tag is
--target-version followed by tagSuffix (like 2.32.0-go-experimental).
Plain string entries behave as before.
@psanders
psanders merged commit 4b0f436 into main Nov 4, 2026
2 checks passed
@psanders
psanders deleted the feat/image-tag-suffix branch November 5, 2026 14:26
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