Ресурс создаёт git-репо, Пуш в этот репо инициализирует сборку образа с помощью kaniko, выхлоп передаётся пользователю. Пуш по тэгам также инициирует сборку и пуш в докер-регистри конкретного тэга.
Останется после этого реализовать сборку всего этого дела в 1 бинарник))