Kubernaut is rather painful to develop on, not because it is a complex technical project, but because there are several moving parts that need to be developed.
The API server and claims broker
The Kubernaut VM image (dev loop is painful because need to setup ad-hoc cloud resources to hack on it)
The Kubernautlet (aka "kubernaut-agent") which registers and heartbeats the availability of a cluster to the broker.
Various "cloud" specific things (e.g. VPC management, autoscaling group management). They're not intuitive or exposed in a dev-friendly way.
The Kubernaut CLI
The fronting API gateway and authentication system.
This is a bit of a planning / goal setting epic. But we should look into why extending Kubernaut is difficult. I suspect it's some of the following:
Poor architectural and operational docs.
The broker is written in Kotlin rather than Python or Go.
Dev environment setup is difficult.
We lack a good separation between "live" and "staging" environments.
Any other issues folks can think of that come to mind?
Kubernaut is rather painful to develop on, not because it is a complex technical project, but because there are several moving parts that need to be developed.
This is a bit of a planning / goal setting epic. But we should look into why extending Kubernaut is difficult. I suspect it's some of the following:
Any other issues folks can think of that come to mind?