Status Update - 11/15/2016



  • The Delay News

    This status update is a bit later than usual, but that's because we've not had as much time to effectively push into testing of the new daemon as much as we need. We've hoped to have the daemon ready some time ago, and I've postponed my usual status updates on the hope that I can instead have them in the release, but alas. It's been 2 weeks since the day I would have posted it, so I believe I need to just provide the status update.

    Daemon news

    We have been slowly working our way through the daemon, finding new ways we can handle the complexity of Source servers, while making the daemon not truly care about what is going on with it. It took us time, but we found a way to achieve that. pufferd will be able to handle programs that require ttys (Source for example) properly for the software that needs it, while using the standard process for others. pufferd is still Windows supported, and so we have not removed any features to handle that.

    We've been cleaning up how the daemon works as well, to try to limit our maintenance of it, and making it easier to work on things in the future. An example is our environment loader. Depending on the OS you are on, different environments are available. This mostly impacts TTY processes (Source) as this does not exist on Windows, but is required on Linux. We will properly handle running them depending on the OS, so Source will work on Windows just as it would work on Linux to you. How it runs is handled by pufferd.

    pufferd also supports data migration from Scales. While this is not perfect, and could fail, pufferd will (when used with a commandline argument) attempt to migrate your existing Scales servers over to pufferd. It will attempt to do the following:

    • Migrate data from /home to /srv/pufferd
    • Create new server jsons based on the Scales config for that server

    This process is not 100% tested, but has worked for a few test servers on our end. We hope this will help push you to try out pufferd.

    Panel news

    The panel has been updated to handle the new daemon, but we've had to remove some features for now to handle it until we work out the best way to achieve them.

    Subusers has been removed for now until we build the new system around them. While the old worked, it's not going to be compatible in a way to the new system that I'd consider acceptable. The addition of oauth partly covers how subusers worked, but since our usage of Oauth is not completely integrated, we've not migrated subusers.

    File Manager has been disabled for now. Due to the new daemon, the existing file manager does not communicate correctly. While the daemon supports the functionality it needs for it, the code to migrate the manager over is more difficult due to the horrendous way that it was built. Instead of simply making it work, we are building it from the ground up to make it work, and make it work well.

    Roadmap

    Knowing what I have said, I've already determined the following roadmap to which will be our goals for our future version.

    PufferPanel/pufferd version
    0.9.0/0.1.0 - Initial release with the above features
    0.9.1/0.1.1 - Inclusion of new file manager
    0.9.1/0.1.2 - Inclusion of docker with proper implementation and support
    0.9.2/0.1.3 - Complete control over editing servers
    0.9.3/0.1.4 - Bug fixes from previous releases
    1.0.0/1.0.0 - Complete refractor of existing panel to a proper and sustainable codebase

    pufferd is built to be compatible with any major version below it (or will be), and the panel will always use the latest version that's most compatible with it. With the current versions, they will not appear to be in sync, but when we refractor the panel, the daemon will become synced with the versions, so that you can rely on the major version to decide compatibility.

    Security concerns

    Those who believe that simply using containers is the "solution" are only fooling themselves. There exists many places of weakness for security, not just at the server level.

    We will absolutely be integrating container support into pufferd very soon, as the ability to support multiple different environment was one of the key motivators to make pufferd. We will be implementing docker properly and natively, in ways that other game server daemons do not.

    Since we are not targeting hosting companies for this release but instead you, the general administrator, you gain no benefit with containers because you know the servers and plugins running on them. While it'd be nice to have, we know it's not the only security you need.

    We know security is only as good as your weakest point, and that will lie within the panel itself. This is why we focus our efforts on the panel level as well, making sure that the panel is secure, so that your servers are not going to be compromised because of our panel. After all, if your panel is compromised, that container for your server will be meaningless. Who needs to delete the server when someone can just delete your database and files?

    Ending notes

    That's all we have for today really. Our release is much closer, although I've made the decision to clean up some of the newly implemented code to use the database even more, so that it is much easier to maintain. This does delay the release, but we will be able to ship a more functional and professional product. We know what a database can do, and we will make sure we take advantage of its functionality, not just be a place where your data exists. It has power to manage and work with the data, and we are going to use that.

    As always, thank you for using PufferPanel!



  • Great to hear. Hopefully the file manager won't be as horrendous as Pterodactyl but I'm sticking with 0.8.6 until 0.9.1

    So excited for the future of PufferPanel! Keep up the good work



  • @PacksGamingHD said in Status Update - 11/15/2016:

    Great to hear. Hopefully the file manager won't be as horrendous as Pterodactyl but I'm sticking with 0.8.6 until 0.9.1

    So excited for the future of PufferPanel! Keep up the good work

    May I ask why you think that way? Right now it might be a similar look and feel of the old manager, which I believe Pter is also using (yay for them using our HTML), but any input on how to improve it will greatly help, as we made this for users. We may not know what you want.



  • @LordRalex well the file manager has its quirks, but really lacks in terms of folders. When making one (or a file) most users look at the directory bar, but instead look for a text box or something similar that would define its name in the current working folder.

    Also I've seen folder uploads handled in many ways before, and from my experience pufferpanel will just error if you try to upload one. The method that works the best I believe is the panel would tell scales to create each folder before, then take the files the user is uploading and put those in the correct directories.

    Another thing (unrelated, bug) happens when you open a browser window and are on the file manager page, then were on the same page on another server in a new tab, changes made in the first tab would take effect on the server in the 2nd tab (aka edit, upload, remove in the exact same directory



  • @LordRalex said in Status Update - 11/15/2016:

    @PacksGamingHD said in Status Update - 11/15/2016:

    Great to hear. Hopefully the file manager won't be as horrendous as Pterodactyl but I'm sticking with 0.8.6 until 0.9.1

    So excited for the future of PufferPanel! Keep up the good work

    May I ask why you think that way? Right now it might be a similar look and feel of the old manager, which I believe Pter is also using (yay for them using our HTML), but any input on how to improve it will greatly help, as we made this for users. We may not know what you want.

    What I mean by Pterodactyl is how awful it is:

    • You have to run the daemon in a screen and Scales runs with ./scales start manually
    • The file manager on pterodactyl was HORRENDOUS. From a birds eye view it actually has some nice features: you can rename, move, delete, and even create folders. However the file manager doesn't upload files over 100kb (bug they didn't bother fixing) and will often fail to work. Also their FTP (SFTP doesn't work in Pterodactyl for some reason) system was completely broken because you can't even connect to it. I will be sticking with 0.8.6 because the file manager built in has all I need.
      The one you guys have doesn't:
    • Upload files via Safari (lmao THATS no surprise) but works fine on chrome and actually gets the job done. I primarily use filezilla for uploading JARs but its more convenient to be able to edit a file on the fly and not have to use an external ftp client.

    You guys have great potential on NOT screwing up miserably like Pterodactyl and the only reason i tried it out (and immediately reinstalled puffer panel 10 minutes later) was because of their web FTP (failed on chrome and safari) and their built in database system.



  • Will be a whmcs addon and billing integration ? and the posibility to suspend users servers without deleting their servers ?



  • Thank you for your work. This panel is really good. It is a pleasure to use it :)



  • Any new status update coming soon? I am hyped for this new release :D



  • @RobinMCNetwork
    I have been out of town this week, and don't want to make a new status update post until I have sat down and see what is left for pufferd's release.


Log in to reply
 

Looks like your connection to PufferPanel Community was lost, please wait while we try to reconnect.