Hello there,

As some of you may be aware, I have been working part-time on a project called Tagger [1]. Its goal is to provide an image
management abstraction layer for Kubernetes. Tagger tries to mimic (to some extent) the behavior of OpenShift's Image
Streams but on a vanilla Kubernetes cluster. Among its features, I can list:

- Automatic deployment whenever a new image is pushed.
- Allow for easy rollback and roll forward among distinct versions (generations) of the same container image (today’s “latest”
  vs yesterday’s “latest”).
- Kubectl plugins for pushing and pulling images directly to the cluster (an attempt to abstract the registry existence, currently
  supports “podman” container storage).
- Integration with quay.io and docker.io webhooks.

I have recorded a brief presentation (~8min) on what Tagger can achieve [2]. Now to the meat of this email: I have been thinking
about what the next step for the project is and it seems to me it might be a good fit for tighter integration with shipwright as an
opt-in feature. Some points where I think Tagger could be beneficial when used together with shipwright:

- Trigger new builds whenever a new Image is pushed.
  - Should one’s build be triggered every time a new base image shows up? We can cover it.
- Provide shipwright with a local container storage volume with all images needed before a build
  - This is an idea I have been thinking about: an init container that pulls everything locally before the actual build takes place.
  - Builds won't need to pull images as they will be all there.
- Capture the build output image and publish it.
  - If there are deployments associated with the image why not trigger them?

I have gone a long way but I am still far from reaching the end of it. If any of you think that this is an entertaining idea, please reach
out. I want to give this project a place where it can deliver value to users. :-)

[1] https://github.com/ricardomaraschini/tagger
[2] https://youtu.be/HZZeFLooeUM