update eggs.

* upd. deps / package-lock
This commit is contained in:
a-sync
2025-04-15 08:41:52 +02:00
parent 0e1803a613
commit 07bb7ae3a6
5 changed files with 1421 additions and 563 deletions

View File

@@ -14,7 +14,7 @@ app.json
azuredeploy.json
docker-compose.yml
Dockerfile
egg.json
eggs
fly.toml
Procfile
TODO

View File

@@ -35,7 +35,7 @@ The project is in a mature stage. New customization options and features are add
* github action workflows to deploy to other cloud providers (aws, linode, atlantic, vultr, pikapods, okteto, ibm cloud etc.)
* SQL, JSON or object store database support (postgres, redis etc.)
* run as stateless serverless function (aws lambda, azure function, heroku, vercel, fly.io machines etc.)
* ~~pterodactyl egg release~~
* ~~pterodactyl/pelican egg release~~
# Getting Started
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See [deployment](#deployment) for notes on how to deploy the project on a live system.
@@ -111,7 +111,7 @@ _The bot has no cleanup functionality, leftover messages must be removed manuall
# Deployment
Check the wiki page for detailed instructions on [how to setup a self deploying free cloud instance at fly.io](https://github.com/a-sync/game-server-watcher/wiki/Free-hosting-via-fly.io).
The latest Pterodactyl egg can always be found here: [🥚](https://raw.githubusercontent.com/a-sync/game-server-watcher/master/egg.json)
The latest Pterodactyl and Pelican eggs can always be found here: [🥚](./eggs/).
Pre-built container images can be downloaded from the github container registry: `docker pull ghcr.io/a-sync/game-server-watcher`
<p align="center">
<!--<a href="https://app.koyeb.com/deploy?type=git&repository=github.com/a-sync/game-server-watcher&branch=master&name=gsw"><img src="https://www.koyeb.com/static/images/deploy/button.svg" height="32" alt="Deploy to Koyeb"></a>//TODO: support ephemeral storage-->

View File

@@ -1,12 +1,13 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PANEL",
"meta": {
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2024-04-02T14:15:38+02:00",
"exported_at": "2024-06-01T19:44:15+00:00",
"name": "Game Server Watcher",
"author": "a-sync@devs.space",
"uuid": "d163b89a-a9e6-4525-b073-a405eec86fc1",
"description": "A simple discord\/telegram\/slack bot that can be hosted on a free service to monitor your game servers and players in style. \ud83d\ude0e",
"features": null,
"docker_images": {
@@ -36,6 +37,7 @@
"user_viewable": true,
"user_editable": true,
"rules": "required|string|min:8|max:255",
"sort": null,
"field_type": "text"
},
{
@@ -46,6 +48,7 @@
"user_viewable": true,
"user_editable": true,
"rules": "required|string|min:1|max:255",
"sort": null,
"field_type": "text"
},
{
@@ -56,6 +59,7 @@
"user_viewable": true,
"user_editable": true,
"rules": "required|integer|min:1",
"sort": null,
"field_type": "text"
},
{
@@ -66,6 +70,7 @@
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string",
"sort": null,
"field_type": "text"
},
{
@@ -76,6 +81,7 @@
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string",
"sort": null,
"field_type": "text"
},
{
@@ -86,6 +92,7 @@
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string",
"sort": null,
"field_type": "text"
},
{
@@ -96,6 +103,7 @@
"user_viewable": true,
"user_editable": true,
"rules": "required|in:0,1",
"sort": null,
"field_type": "text"
},
{
@@ -106,6 +114,7 @@
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string",
"sort": null,
"field_type": "text"
},
{
@@ -116,7 +125,8 @@
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string",
"sort": null,
"field_type": "text"
}
]
}
}

122
eggs/pterodactyl-egg.json Normal file
View File

@@ -0,0 +1,122 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PANEL",
"meta": {
"update_url": null,
"version": "PTDL_v2"
},
"exported_at": "2024-06-01T19:44:15+00:00",
"name": "Game Server Watcher",
"author": "a-sync@devs.space",
"description": "A simple discord/telegram/slack bot that can be hosted on a free service to monitor your game servers and players in style. 😎",
"features": null,
"docker_images": {
"Node.js 20": "ghcr.io/parkervcp/yolks:nodejs_20"
},
"file_denylist": [],
"startup": "env PORT={{SERVER_PORT}} /usr/local/bin/node /home/container/dist/server.js",
"config": {
"files": "{}",
"logs": "{}",
"startup": "{\r\n \"done\": \"starting loop...\"\r\n}",
"stop": "^^C"
},
"scripts": {
"installation": {
"container": "node:20-bookworm-slim",
"entrypoint": "bash",
"script": "#!/bin/bash\r\n\r\napt-get update \u0026\u0026 apt-get install ca-certificates git -yq --no-install-suggests --no-install-recommends --allow-downgrades --allow-remove-essential --allow-change-held-packages\r\n\r\n\r\ncd /mnt/server\r\n\r\ngit config --global --add safe.directory /mnt/server\r\ngit clone https://github.com/a-sync/game-server-watcher.git . || git pull\r\n\r\n\r\nnpm install --no-save \u0026\u0026 npm update gamedig \u0026\u0026 npm run build\r\nnpm prune --omit=dev\r\n\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\""
}
},
"variables": [
{
"name": "SECRET",
"description": "Admin secret",
"env_variable": "SECRET",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|min:8|max:255",
"field_type": "text"
},
{
"name": "DATA_PATH",
"description": "Writable folder for data storage",
"env_variable": "DATA_PATH",
"default_value": "./data/",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|min:1|max:255",
"field_type": "text"
},
{
"name": "REFRESH_TIME_MINUTES",
"description": "Game server info refresh interval in minutes",
"env_variable": "REFRESH_TIME_MINUTES",
"default_value": "2",
"user_viewable": true,
"user_editable": true,
"rules": "required|integer|min:1",
"field_type": "text"
},
{
"name": "DISCORD_BOT_TOKEN",
"description": "Discord bot token",
"env_variable": "DISCORD_BOT_TOKEN",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string",
"field_type": "text"
},
{
"name": "TELEGRAM_BOT_TOKEN",
"description": "Telegram bot token",
"env_variable": "TELEGRAM_BOT_TOKEN",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string",
"field_type": "text"
},
{
"name": "STEAM_WEB_API_KEY",
"description": "Steam web API key",
"env_variable": "STEAM_WEB_API_KEY",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string",
"field_type": "text"
},
{
"name": "Debug Mode",
"description": "Enable or disable debug mode.",
"env_variable": "DBG",
"default_value": "0",
"user_viewable": true,
"user_editable": true,
"rules": "required|in:0,1",
"field_type": "text"
},
{
"name": "SLACK_BOT_TOKEN",
"description": "Slack bot token",
"env_variable": "SLACK_BOT_TOKEN",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string",
"field_type": "text"
},
{
"name": "SLACK_APP_TOKEN",
"description": "Slack app token",
"env_variable": "SLACK_APP_TOKEN",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string",
"field_type": "text"
}
]
}

1840
package-lock.json generated

File diff suppressed because it is too large Load Diff