-
Notifications
You must be signed in to change notification settings - Fork 283
[FEATURE]: Remove requirement for docker
in garden publish
#6776
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
garden publish
in CIdocker
in garden publish
Thanks for the feature request. I worked on this in the past and i agree that it is not great to have a dependency on docker for publishing images. In #6208 i added regctl to publish multi-platform images and in #6681 i made sure that we use regctl for all cases where the image exists in a remote registry. The dependency on docker would only remain if the image was build and stored locally because regctl would not work in this scenario. The warning in the docs should reflect that though, oversight on our end. |
Yes, I have a previous build step that does an in-cluster build (kaniko) and pushes to the registry.
Yes I tried this first, but ran into regctl not having credentials. The in-cluster build uses the imagePullSecret in the cluster, whereas regctl needs credentials in the local CI runner. AFAIU |
Gotcha. I guess we'd need to run regctl from the cluster. Which means you'd add So aside from the incorrect documentation we are not really talking about the need to have docker on your CI runner for publish but more about the need to have the creds for one or more registries on the CI runner. |
This issue is mostly for the documentation aspect. Cluster publishes are something I'm also interested in, but I guess would be a bigger issue. I can open another for that for ideas there. What I think would be the easiest thing to improve the situation that wouldn't require a bunch of documentation explaining how to run You should be able to figure out the You can document when and how docker is needed. The guide for "Garden in CI" could be updated with some patterns.
They are related. If I can load the credentials directly into |
Feature Request
Background / Motivation
I am attempting to run
garden publish
in a CI pipeline which runs in kubernetes containers.The main issue is the reliance on
docker
for performing/helping this. The documentation at least claims you need docker locally to make this work.However, in container based CI having docker available is usually quite difficult and avoided. The
gardendev/garden-gcloud
images I use don't have it, and it wouldn't work in my CI system anyhow without massive tweaking.What should the user be able to do?
garden publish
should have more options available to set up authentication and credentials other than just "use docker".Why do they want to do this? What problem does it solve?
Publishing images is currently pretty painful and under documented. In a previous attempt I just fell back to running my own CI jobs with Skopeo and outputting the garden build versions etc. Which was also ugly and requires a lot more CI steps and tooling. Which otherwise Garden usually helps eliminate a lot of.
Suggested Implementation(s)
I don't think this would be too hard to take away as a requirement as I was able to get it working with the assumption that I am using the
gardendev/garden-gcloud
container. With this I can:So I don't have a proposal for the full system. But I think it should be doable to relax the hard requirement on docker fairly easily.
How important is this feature for you/your team?
🌵 Not having this feature makes using Garden painful
The text was updated successfully, but these errors were encountered: