I’m really forgetful huh, I have to start writing these more often or I’ll lose hours in between my devlogs!
so, just a quick recap of what I’ve done:
- before, the Panel would proxy some requests to & from the NodeRep server. This doesn’t happen anymore, and the client talks directly to the NodeRep server with a Ticket.
- (anonymous) permissions! users (and anonymous visitors) can have some permissions by default, and they’re included in the Ticket. They define what Nodes/VMs you can or can’t see, also what you can or can’t do with them.
- WIP, configuration! there’s already a very simple API setup that lets you rename the VM, but I want it to allow for changing stuff like the maximum memory allocated to the VM, the amount of vCPUs allocated to the VM, and so on. Not sure exactly how I’d do it in a good way since there are many ways to define vCPUs in libvirt, but I’ll find a way soon enough!
- DB migrations! this is good for people self-hosting, since updates are much more reliable.
- graphics! You can finally see a host for graphics, and you can even connect to it! there’s nothing there, because I’m a little scared of moderation. (you people can be cruel sometimes..) I might add a simple TempleOS VM though for funsies.
the video below demonstrates permissions in the beginning, half as a logged out user (that doesn’t have permission to start/stop VMs), and the other half as a logged in user (that does have permission to do those things).
the other half demonstrates graphics, TabVMs tells you when you’ll need a web-viewer (since Cloudflare Tunnels is such a great product). You can see me connect through NoVNC to a VM that’s not running any OS.