[>] Introducing Workspaces
We're familiar with CopyFail, now let's see how I make my homelab more vulnerable!
At the end of the last update, I said I was hoping for another update soon, and it seems I did make it happen! While this update should be less loaded (and boring), there's an important feature I wanted to talk about for a bit.
Enjoy!
Features and Changes
- Workspaces. I was influenced by the Cilium workshop at KubeCon in March, where they had a terminal in the browser, with all the tools like kubectl and k9s readily available. I realised that KRaft was missing something similar. Previously, the one local requirement of KRaft was kubectl to work with the kubeconfig file generated by the virtual API server. This still required something local, on the user's device, and was not something I could rely on, as the user might be on Windows, MacOS, Linux, Android, iOS, or more.
Workspaces are pods containing all the tools I think are useful for Kubernetes operations, including kubectl, kubecolor, kubectl autocompletion, k9s, vim, and some other facilities like neovim + lazyvim and fish.
From inside the browser, you can now perform all your Kubernetes operations, and cuts down a major limiting factor when it came to running workshops on KRaft.
I did have an "oops" moment where I left a workspace terminal unauthenticated on the public internet, and also happened to have a kubeconfig file for the host homelab cluster on it. Not a great idea, 10/10 cannot recommend.
Future Work
So yeah, that's all for this update. It is a somewhat major feature and definitely deserved a devlog of its own. I don't have any concrete plans for future work for the time being, and I see most of my effort going into cleaning up the codebase.
That's a wrap for this update, hopefully there will be another one soon!