pufferpanel

PufferPanel is an open source game server management panel, designed for both small networks and personal use

APACHE-2.0 License

Stars
1.2K
Committers
56

Bot releases are visible (Hide)

pufferpanel - v3.0.0-alpha.4 Latest Release

Published by github-actions[bot] 7 months ago

pufferpanel - v2.7.1

Published by LordRalex 7 months ago

pufferpanel - v2.7.0

Published by LordRalex 7 months ago

pufferpanel - v3.0.0-alpha.3

Published by github-actions[bot] 8 months ago

pufferpanel - v3.0.0-alpha.2

Published by github-actions[bot] 8 months ago

Fixes a few small bugs found in the alpha.1 release

pufferpanel - v3.0.0-alpha.1

Published by github-actions[bot] 8 months ago

This marks the first alpha release of v3.0.0. This release has been years in the making. It comes with significant changes to the backend and frontend to ensure a smoother experience.

The goals of v3 are to improve on things we learned from v2 and update the UI to a more friendly look and feel. We are still working on improving aspects of the UI, so things may still change as we go.

The backend has seen a clean up of how things work. The API has been standardized a bit more and the documentation has been updated to account for this. The concept of the "proxy" no longer is exposed publicly, but the API will still proxy requests as needed. We also updated our swagger documentation to try to be more complete. Do note however it may still be missing some information.

Templates have also been updated with the new concept of "conditions". This is a basic "if" statement system that is designed to help consolidate our templates and drive better logic about if an operator should run. Things that the conditions now support are checking if a variable is set or if it's a certain value, if a file exist, or if something is in the PATH env. This means our templates now can support both environments at the same time, with the conditions driving what operators may be used.

Commands now also support the condition concept. A server can have multiple different commands, and one is chosen based on these conditions.

We have also moved to using the "any/any" repo with packagecloud. This means that we have a single repository that handles the packages, so the workarounds for getting an "unsupported" or a newly released LTS version of an OS should not be needed anymore.

Our Docker image also has been cleaned up. It has instead now been designed to only run the panel and a node which creates Docker containers. It will no longer run servers inside of itself. This, while useful to create a quick server, caused the image to be bloated and hard to manage. We also exposed a new config entry so that servers using Docker can better expose a folder on the host that isn't explicitly defined in the image. Previously, it was an explicit path, and changing it required changing several things. Now, a single config entry allows hiding this.
NOTE: Currently, the Docker image is not available through DockerHub. We are working to get it published there.

We also have created a new "tester" designed to keep our templates more consistent and ensure they function prior to being released. Generally speaking, the templates now have been at least validated to run and not crash immediately. This does mean we have removed several templates that either were not functional or were believed to be dead software.

Full Changelog

UI

  • Improved flow for server creation, steps are a bit more fluid. Install is also prompted after creation to help bring this action to the front.
  • Server UI will show a game server icon to help quickly identify a server type. This is controlled by the "type".
  • Templates are now pulled on demand, and only stored if modifications are required. Local templates can be managed independently.
  • Node page will show some hardware information about the node. Information includes the OS type, cpu architecture, and if the node supports Docker. This page will also show if a node is online.
  • Permissions have been stream-lined a little more. Actions are now more explicitly defined as a permission and so there are more permissions available.
  • Numerous bug fixes and code clean-ups

Backend

  • Templates can now directly pull from CurseForge. A key is provided by default so servers can be created from modpacks from CurseForge. The panel will attempt to set up the server to the best of it's ability.
  • Forge will attempt to handle both install methods. This means running the installer should permit all versions of Forge to work correctly. However, only newer versions of Forge are validated.
  • RCON and TELNET are now supported for commands. If a server needs RCON or TELNET to be used for commands, a template can specify a "stdin" section to specify additional information.
  • Logging should now support rolling over, so tools like logrotate should properly work. This is not fully confirmed though.
  • Better hooks into systemd. We will now report that we are starting up/shutting down to systemd.
  • Docker image names now support variable replacements
  • Numerous bug fixes and code clean-ups
pufferpanel - v2.6.10

Published by github-actions[bot] 12 months ago

pufferpanel - v2.6.9

Published by github-actions[bot] about 1 year ago

pufferpanel - v2.6.8

Published by github-actions[bot] over 1 year ago

pufferpanel - v2.6.7

Published by github-actions[bot] over 1 year ago

pufferpanel - v2.6.6

Published by github-actions[bot] over 1 year ago

pufferpanel - v2.6.5

Published by github-actions[bot] over 1 year ago

pufferpanel - v2.6.3

Published by github-actions[bot] over 1 year ago

pufferpanel - v2.6.2

Published by github-actions[bot] over 1 year ago

pufferpanel - v2.6.1

Published by github-actions[bot] almost 2 years ago

pufferpanel - v2.6.0

Published by github-actions[bot] almost 2 years ago

pufferpanel - v2.5.2

Published by github-actions[bot] almost 2 years ago

Bug Fixes

  • Fix newlines not applying from daemon messages to the console
  • Fix expiresIn value on OAuth token responses
  • Fix SFTP logins on long-running nodes
pufferpanel - v2.5.1

Published by github-actions[bot] over 2 years ago

Resolve security issue related with symlinks
Attempt to resolve mobile view losing header on pages
Resolve issue where session timeouts were not being detected correctly

pufferpanel - v2.5.0

Published by github-actions[bot] over 2 years ago

pufferpanel - v2.4.0

Published by github-actions[bot] almost 3 years ago

Changes:

  • Add OAuth 2 screens to both accounts and servers. This allows for creating clients which can talk to the API. This is the preferred method over using the older undocumented and unsupported method of using /auth/login.
  • Add hot keys for accessing UI options
  • Wire up additional emails to events
  • Microsoft SQL Server can be used with Linux installations
  • Attempt to resolve performance issues with the console
  • Improve node UI
  • Add –workDir as a supported argument for the service
  • Remove unique name requirement on servers
  • Create Windows MSI installer
  • Rename servers now supported
  • Add logging to when daemon downloads a Docker image
  • Fix exposed ports not being applied when port bindings are used

Windows Installer:

We now have an official Windows installer which will install a PufferPanel service to Windows. This installer is supported on Windows Server 2012+. As a warning, we DO NOT RECOMMEND USING THE LOCAL SERVICE ACOUNT. You will want to create a PufferPanel user on your server and use this to run the service. Due to the complexity of installers, we do not do this automatically. This allows for a compromised server to have less rights than Local Service would otherwise give.