datawire / forge

Define and run multi-container apps in Kubernetes
http://forge.sh
Apache License 2.0
416 stars 43 forks source link

Comparison with ksonnet #126

Open mumoshu opened 6 years ago

mumoshu commented 6 years ago

Hi, thanks for maintaining the great project!

It would be great to mention about a comparison between forge and ksonnet - it seems to have evolved to a CLI w/ a k8s manifest framework on top of jsonnet.

A biggest (theoretical) difference between the two would be that forge seems to focus on workflows but not specific framework(s) to organize your k8s manifests(ksonnet seeems to be tied to ksonnet-lib/jsonnet) after seeing #15

richarddli commented 6 years ago

Hello! Thanks for your feedback. Have you used Ksonnet? I'd be definitely interested in your point of view on comparisons, since my first hand experience with ksonnet is limited.

With Forge, our primary focus has been on enabling a great developer workflow from source (GitHub) --> running in Kubernetes. Ksonnet (even with the new changes) seems to be focused on the app templating problem: how do you generate the right Kubernetes manifests for a given application.

The two are definitely related (that's why both support templating manifests, for example).

What do you think? Would love to collaborate on crafting an accurate answer.

plombardi89 commented 6 years ago

Ksonnet is doing a bit more than just generating templates. It's handling the apply of the templates, tracking the state of deployments in multiple environments and providing a way to have a reusable set of components throughout many templates. It also allows users to have per-environment configurations.