State of the Incubator
Some eggciting news today — we’ve started development on v0.6.0 which focuses on improving remote management of nodes as well as service improvements.
If you’ve been having out in Discord recently you’ve probably seen some back and forth discussions regarding modifications to our current server deployment system. We’re moving to a more repository based implementation when it comes to services and options, as well as implementing support for things such as modpacks and pre-downloaded configurations. One of the biggest issues we currently face is long install times for services such as CS:GO and Ark, mostly due to file sizes. This puts a lot of network pressure on servers, especially if deploying multiple to the same node, or if handling updates.
We’ve started work on a centralized repository interface in the panel that nodes will communicate with. You can upload a compressed archive of files as a “Service Pack (“Pack”)” in the panel, which will then be communicated to nodes. Nodes maintain a local cache of packs, and can download, build, and update packs without any admin involvement. The other cool thing with these packs is that you don’t necessarily have to upload the final product for the pack. We support build scripts which are run inside a docker container of your choosing, which you can then use to handle any other dependency downloads. For example, maybe you want to run a custom modded server, but uploading everything would require a humongous file. You can upload a specific part of that pack, and ten use a build script that will run on the nodes and work with what you’ve uploaded. The final product is then cached on the node until it is determined that it needs to be updated.
This setup is also allowing us to create a more community driven collection of packs which you can share with friends or other administrators (assuming you have the rights to do so). Each pack can be exported as a template which someone can then upload to their own panel. These exports can include either the complete pack (archive and template file), or just the template file which admins can then use to upload their own archive to.