As someone within GCP, do you know / can you find out what the story is with Application Delivery (
https://cloud.google.com/kubernetes-engine/docs/concepts/add...) ? It looks like a promising
idea, but it’s half-baked† and showing no signs of progressing to becoming fully-baked. Is it still being actively worked on? I’d love to use it — compared to Flux/Argo, App Delivery has semantics closest to what I want — but only if there’s some promise of it reaching GA and receiving some more polishing.
† I could list off the reasons it’s half-baked, but you’re not the target of that ire, so I’ll leave off with it :)
There was one blog post about App Delivery (https://cloud.google.com/blog/products/containers-kubernetes...) in early 2020, then nothing. There’s no official site, or reference, for it, or the components within it.
The Application Delivery client appctl(1), despite being a standalone static Go binary, isn’t available separately — the only place to get it is from the “pkg” component of gcloud(1). Nor is there any way to deploy the cluster-side components other than through the GKE dashboard/gcloud(1) CLI. So there’s no good way to deploy+test Application Delivery in your own (e.g. minikube) cluster, to test ‘doing GitOps with Application Delivery’ in a sandbox.
Nor is there any promise of App Delivery becoming tooling that’s portable to other Kubernetes hosts. Nothing about any of this is open-source or even source-available — despite App Delivery advertising itself as a “best practices” approach to GitOps, something intended to show other vendors how this kind of thing should done. (How are they going to learn GitOps from a black box?)
—————
Application Delivery seems to be based on some (Google-internal? Unpublished, at least) software called KALM (which, I assume, translates to “Kubernetes Application Lifecycle Management” or some such.)
Installing Application Delivery into a cluster installs “kalm-controller”; and appctl(1) seems to be at-least-in-part a fork or wrapper for a “kalmcli” client. (I learned this by digging through the debugging-symbol table of appctl; it’s not documented anywhere.)
It seems that, because of this separation-of-concerns, KALM itself isn’t supposed to be GKE-specific, whereas Application Delivery is.
Well, if an open Application Delivery isn’t in the pipeline, is an open KALM? Or was it ever (and did it stall—perhaps because the lead on it left the project?)
(I notice that KALM also has something to do with how Google Cloud Marketplace “Click to Deploy” k8s applications are packaged, which at least leads me to believe that unlike Application Delivery itself, KALM is probably still a living project.)