-
Notifications
You must be signed in to change notification settings - Fork 0
[app] Image digest pinning and CI digest propagation #38
Copy link
Copy link
Open
Labels
area/app-chartshopsys-app chart (workloads, ingresses, secrets, hooks)shopsys-app chart (workloads, ingresses, secrets, hooks)area/ciCI, testing and release toolingCI, testing and release toolingarea/infra-chartshopsys-infra chart (Redis, RabbitMQ, RBAC)shopsys-infra chart (Redis, RabbitMQ, RBAC)enhancementNew feature or requestNew feature or requestpriority/low
Description
Activity
Metadata
Metadata
Assignees
Labels
area/app-chartshopsys-app chart (workloads, ingresses, secrets, hooks)shopsys-app chart (workloads, ingresses, secrets, hooks)area/ciCI, testing and release toolingCI, testing and release toolingarea/infra-chartshopsys-infra chart (Redis, RabbitMQ, RBAC)shopsys-infra chart (Redis, RabbitMQ, RBAC)enhancementNew feature or requestNew feature or requestpriority/low
Context
Tags are now pinned (redis, nginx, rabbitmq, exporter, kubectl), but tags are still mutable
— a registry re-push of
redis:7.4-alpinesilently changes what nodes pull. Applicationimages are deployed as
TAGreferences without a digest, so a re-pushed CI tag would alsochange the running binary.
Proposal
tag@sha256:...digests in chart values (renovate — [ci] Dependabot for image tags and GitHub Actions #22 —keeps them fresh; its
helm-valuesmanager handles digest pinning natively).TAG=registry/project:v1.2.3@sha256:...(theshopsys.imagehelper already passes fullreferences through; document the CI-side
docker inspect --format='{{index .RepoDigests 0}}'step in examples/).
imagePullPolicy: IfNotPresenteverywhere once digests guarantee identity.(
registry.company.com/mirror/...as a values override).Tasks
Related: #22