The code change modifies the tail command in the fn_info_logs function to exclude lines containing "==>". This improves the display of log files by filtering out unnecessary information.
Add a curl command to query the Steam Master Server for server addresses. This allows retrieving server information using the GetServersAtAddress API endpoint provided by Steam.
- Updated the IP and port settings for ckserver, colserver, fctrserver, hwserver, ohdserver, rustserver, and untserver.
- Added a link to the documentation for predefined parameters in ckserver and hwserver.
- Modified the startparameters value in colserver to include additional parameters.
- Changed the branch value in fctrserver to "stable".
- Updated the servername value in hwserver and ohdserver to "LinuxGSM".
- Modified the defaultmap value in hwserver to "nullius".
- Removed optional comments from hwerver regarding defaultmap and creativemode values.
- Updated gamemode values in rusterver and untserer with their respective options.
The code change updates the assignment of the `datadir` variable in the `linuxgsm.sh` script. The new assignment checks if the environment variable `LGSM_DATADIR` is set and uses its value, otherwise it falls back to using `${lgsmdir}/data`.
* refactor: shorten module update function names
The commit renames the update functions for several game modules to shorter names. The new names are more concise and easier to remember, which should improve code readability and maintainability.
* feat: Add Update Check workflow
This commit adds a new GitHub Actions workflow that checks if LinuxGSM is picking up game server config and parameter variables. The workflow runs on push and manual triggers, with concurrency settings to cancel in-progress jobs. It downloads linuxgsm.sh, installs dependencies, grabs the server, enables developer mode, installs the server, and updates it.
* feat: Add concurrency group names to workflows
The `details-check.yml` and `update-check.yml` workflows now have a concurrency group name that includes the branch or tag name. This will allow for better management of concurrent workflow runs.
* refactor: Update script names for Minecraft, Factorio, Jedi Knight 2 and Vintage Story
This commit updates the script names for Minecraft, Factorio, Jedi Knight 2 and Vintage Story. The update includes changes to command_check_update.sh, command_update.sh, core_functions.sh and install_server_files.sh. The new script names are update_mc.sh (formerly update_minecraft.sh), update_fctr.sh (formerly update_factorio.sh), update_jk2.sh (formerly update_jediknight2.sh) and update_vints.sh (formerly update_vintagestory.sh).
* feat: Add support for 32-bit architecture
This commit adds support for 32-bit architecture by running the command "sudo dpkg --add-architecture i386" instead of installing libxml2-utils and jq.
* feat: Add i386 architecture and install libstdc++6
This commit adds the installation of libstdc++6:i386 package to support 32-bit applications. It also includes adding the i386 architecture to dpkg.
* feat: Update dependencies for LinuxGSM
Changed the dependency from libstdc++6:i386 to libgcc-s1:i386 in the update-check.yml file. This change was made to ensure compatibility with newer versions of LinuxGSM.
* feat: Add update and force-update server functionality
This commit adds the ability to check for updates and force updates on a server. The update-check.yml file has been modified to include new jobs that run the LGSM_GITHUBBRANCH command with specific arguments.
* feat: Add dependencies for server installation
This commit adds the necessary dependencies to install a game server. The `update-check.yml` file has been updated to include the installation of `bsdmainutils`, `libsdl2-2.0-0:i386`, `libtinfo5:i386`, and `steamcmd`.
* steamcmd only
* steamcmd
* test
* test
* refactor: improve random password generation in install_config.sh
The code change refactors the random password generation in the `install_config.sh` file. Instead of using `tr -dc A-Za-z0-9_ < /dev/urandom | head -c 8 | xargs`, it now uses `tr -dc 'A-Za-z0-9_' < /dev/urandom 2>/dev/null | head -c 8 | xargs`. This change improves the reliability and security of generating random passwords.
* refactor: remove redundant code and set default branch
The commit refactors the code by removing redundant code that sets the branch to "public" if no custom branch is specified. This change simplifies the logic and improves readability.
* test
* fix: fix steamcmd build version retrieval
The code changes in this commit fix an issue with retrieving the build version from SteamCMD. The previous implementation was not correctly capturing the buildid. This has been resolved by adding additional echo statements for debugging purposes.
* test
fix: remove unnecessary app_info_print command
The commit removes the unnecessary `app_info_print` command from the code. This command was not needed to check the buildid.
* fix: GitHub Actions test failure
The code change fixes a failing GitHub Actions test by running SteamCMD twice. The first run is to update the app info, and the second run retrieves the build ID for the specified branch.
* Add steam user and password secret for jk2
* refactor: update steamuser and steampass paths in jk2server config
The code changes refactor the paths for `steamuser` and `steampass` in the configuration file of the `jk2server`. The previous paths were incorrect, so they have been updated to point to the correct location.
* refactor: update steamuser and steampass insertion in LGSM configuration
The code changes refactor the way steamuser and steampass are inserted into the LGSM configuration file. Instead of hardcoding the values, they are now dynamically inserted using environment variables. This improves flexibility and security when setting up the server.
* refactor: simplify steamuser and steampass insertion in update-check.yml
The code changes remove unnecessary sed commands and replace them with a single echo command to insert the values of STEAMCMD_USER and STEAMCMD_PASS into the common.cfg file. This simplifies the code and improves readability.
* feat: update steamuser and steampass in common.cfg
The commit updates the code to properly insert the `steamuser` and `steampass` values in the `common.cfg` file. The previous code was not correctly formatting the values, which caused issues with server installation. This change ensures that the values are properly formatted using double quotes for `steamuser` and single quotes for `steampass`.
- Refactored the code to use `pgrep -fcx` instead of `pgrep -fc` for checking process counts.
- Updated print statements to provide more informative messages.
- Renamed some variables for clarity.
- Added newlines after printing information.
* refactor: remove unnecessary memory allocation in pzserver config
The startparameters variable in the pzserver configuration file was modified to remove the unnecessary memory allocation parameter. This change simplifies the configuration and improves efficiency.
* refactor: simplify startparameters in pzserver config
The startparameters in the pzserver config file have been simplified to only include the server name. This change removes unnecessary parameters and improves readability.
* adde dotnet repo
* feat: update package dependencies for Ubuntu 16.04, 18.04, and 20.04
- Updated the package dependency for "vints" from "mono-complete" to "aspnetcore-runtime-7.0" in the Ubuntu 16.04, 18.04, and 20.04 CSV files.
- Also updated the package dependency for "vpmc" from "openjdk-8-jre" to "openjdk-11-jre" in the Ubuntu 18.04 and 20.04 CSV files.
This commit ensures that the correct package dependencies are specified for these Ubuntu versions, improving compatibility and functionality of the codebase.
* refactor: update dependency check for ASP.NET Core runtime
The code has been refactored to update the dependency check for the ASP.NET Core runtime. The condition that checks for the presence of "dotnet-runtime-7.0" has been changed to "aspnetcore-runtime-7.0". This ensures that the correct dependency is being checked and improves accuracy in determining if the required runtime is installed.
* fix: fix conditional statement in check_deps.sh
The commit fixes a bug in the conditional statement of the check_deps.sh script. Previously, it incorrectly checked if dotnetversion was empty instead of checking if it was not empty. This caused an incorrect value to be assigned to depstatus and dotnetinstalled variables. The bug has been fixed by correcting the conditional statement.
* refactor: simplify install_config.sh
This commit simplifies the `install_config.sh` file by removing unnecessary code for the "vints" configuration. The configuration is now generated on first run, and the list of config locations is still provided.
* refactor: improve error handling and display in core_exit.sh and install_config.sh
- In core_exit.sh, added a check to set exit code to 4 if it is not already set.
- In install_config.sh, improved the display of missing config file by highlighting the file path.
These changes aim to enhance the error handling and provide clearer information to users.
* feat: add exitcode handling to command_install.sh
The commit adds a check for the exitcode variable in command_install.sh. If it is empty, it sets it to 0. This change ensures proper handling of the exitcode in the script.
* refactor: improve installation process
The code changes in this commit refactor the installation process. The `command_install.sh` file has been modified to remove unnecessary code. Additionally, the `install_complete.sh` file has been updated to provide more informative messages based on the exit code. This improves the overall clarity and user experience during installation.
Co-authored-by: AI Assistant <assistant@example.com>
* refactor: remove redundant code in install_config.sh
The commit removes a redundant function call in the install_config.sh file. The "fn_list_config_locations" function is no longer needed for the "vints" configuration.
* a
* refactor: improve logging in command_stop.sh
- Changed `fn_script_log_error` to `fn_script_log_info` for consistency
- Removed unnecessary empty line
* refactor: dont try to stop a server that is already stopped
* refactor: remove redundant code and improve socket name generation
The commit refactors the code in `command_start.sh` and `linuxgsm.sh` to remove redundant code related to generating a unique tmux socket name. The code now creates a uid file if it doesn't exist, stops the running server, generates a uid using the current timestamp, and updates the socketname accordingly. This change improves the efficiency and reliability of socket name generation.
* refactor: remove unnecessary command_stop.sh call
The code change removes the unnecessary call to `command_stop.sh` in the `linuxgsm.sh` file. This improves efficiency and prevents lingering tmux sessions.
* refactor: remove duplicate code for creating unique tmux socket name
The code changes in `command_start.sh` and `linuxgsm.sh` refactor the creation of a unique tmux socket name. The duplicate code in `linuxgsm.sh` has been removed, resulting in cleaner and more efficient code.
* refactor: improve socketname assignment
The code change refactors the socketname assignment in the linuxgsm.sh script. Instead of directly assigning it to "${sessionname}-$(cat "${datadir}/${selfname}.uid")", it now checks if the file "${datadir}/${selfname}.uid" exists before assigning the value. This improves error handling and prevents potential issues when the file doesn't exist.
This commit adds support for Ubuntu 22.04 and Debian 12 in the check_deps.sh script. It includes the necessary commands to install dependencies for Mono repository on these versions of the operating systems.