I love Skaffold, and I want to use it in my Kubernetes workflow. However, I also love Jib, another Google project.
Problem is, to use Jib, I delegate my image construction process to Maven. So I can't use the default Skaffold method of building images, which calls out to the local Docker runtime or GCB (both good options, neither work with Jib, to my knowledge).
How might this be accomplished?
Skaffold has a build API, which is currently implemented for local docker or GCB. Our plan here is to add more implementations exactly for this reason: to work well with existing workflows. Projects like jib are perfect for another implementation of skaffold's build API.
The only contract here is that the build API is responsible for both building and making the image available to the cluster (either push or loading it in the docker daemon for minikube/docker for mac/windows)
https://github.com/GoogleCloudPlatform/skaffold/blob/master/pkg/skaffold/build/build.go
cc @loosebazooka @coollog
@r2d4, fantastic! Thank you. Yes, I believe Jib would be a great addition and I also believe it handles both building and pushing the image.
Let me know if I can be of help on this, including testing :)
Any update on this as jib is getting more attractions.
https://github.com/GoogleContainerTools/skaffold-tools-for-java is under development by @coollog and functionality from jib is brought into skaffold. Help him with giving star, submit issue or PR.
@sgammon @hrqiang @joelhandwell are you currently using java and skaffold together? Would you mind explaining how you are currently using it? And what you're hoping to get out of a skaffold/jib integration (for example: automatic rebuild, tag injection). It will help us understand what user needs are.
@loosebazooka using now but struggling with war. For now I'm using it to containerize an war by using jetty embedded mode and making fat jar file out of Main.kt file to be installed in a jdk container. Gradle / maven integration with plugin is also needed too.
Jib is now implemented as a builder. Closing.
Most helpful comment
Jib is now implemented as a builder. Closing.