This repository has been archived by the owner on May 14, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2.3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1 from PsychoZander/PsychoZander-add-clusterio
Create Clusterio Egg
- Loading branch information
Showing
1 changed file
with
116 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,116 @@ | ||
{ | ||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||
"meta": { | ||
"version": "PTDL_v2", | ||
"update_url": null | ||
}, | ||
"exported_at": "2022-10-05T12:57:53+01:00", | ||
"name": "Clusterio", | ||
"author": "psychoalex@thevcbc.com", | ||
"description": "a generic node.js egg\r\n\r\nThis will clone a git repo. it defaults to master if no branch is specified.\r\n\r\nInstalls the node_modules on install. If you set user_upload then I assume you know what you are doing.", | ||
"features": null, | ||
"docker_images": { | ||
"ghcr.io\/parkervcp\/yolks:nodejs_17": "ghcr.io\/parkervcp\/yolks:nodejs_17", | ||
"ghcr.io\/parkervcp\/yolks:nodejs_16": "ghcr.io\/parkervcp\/yolks:nodejs_16", | ||
"ghcr.io\/parkervcp\/yolks:nodejs_15": "ghcr.io\/parkervcp\/yolks:nodejs_15", | ||
"ghcr.io\/parkervcp\/yolks:nodejs_14": "ghcr.io\/parkervcp\/yolks:nodejs_14", | ||
"ghcr.io\/parkervcp\/yolks:nodejs_12": "ghcr.io\/parkervcp\/yolks:nodejs_12" | ||
}, | ||
"file_denylist": [], | ||
"startup": "exec .\/node_modules\/.bin\/clusterio{{SERVER_MODE}} run", | ||
"config": { | ||
"files": "{\r\n \"config-master.json\": {\r\n \"parser\": \"json\",\r\n \"find\": {\r\n \"groups[0].fields.http_port\": \"{{server.build.default.port}}\",\r\n\t\t\t\"groups[0].fields.name\": \"{{server.build.env.CLUSTER_NAME}}\"\r\n }\r\n },\r\n\t\"config-slave.json\": {\r\n \"parser\": \"json\",\r\n \"find\": {\r\n \"groups[0].fields.master_url\": \"{{server.build.env.MASTER_URL}}\",\r\n\t\t\t\"groups[0].fields.master_token\": \"{{server.build.env.MASTER_TOKEN}}\",\r\n\t\t\t\"groups[0].fields.public_address\": \"{{server.build.default.ip}}:{{server.build.default.port}}\"\r\n }\r\n }\r\n}", | ||
"startup": "{\r\n \"done\": \"Started\"\r\n}", | ||
"logs": "{}", | ||
"stop": "^c" | ||
}, | ||
"scripts": { | ||
"installation": { | ||
"script": "#!\/bin\/bash\r\n# Clusterio Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y git curl jq file unzip make gcc g++ python python-dev libtool\r\n\r\nmkdir -p \/mnt\/server\r\ncd \/mnt\/server\r\n\r\nif [ \"${USER_UPLOAD}\" == \"true\" ] || [ \"${USER_UPLOAD}\" == \"1\" ]; then\r\n echo -e \"assuming user knows what they are doing have a good day.\"\r\n exit 0\r\nfi\r\n\r\ncase \"${SERVER_MODE}\" in\r\n\r\n \"master\")\r\n echo -e \"Initialising Clustorio In Master mode\"\r\n npm init \"@clusterio\" --allow-install-as-root --mode \"${SERVER_MODE}\" --download-headless --log-level \"${LOG_LEVEL}\" --admin \"${ADMIN_STRING}\" --public-address \"${SERVER_IP}\":\"${SERVER_PORT}\" --plugins ${PLUGINS}\r\n\t;;\r\n\r\n \"slave\")\r\n echo -e \"Initialising Clustorio In Slave mode\"\r\n\tnpm init \"@clusterio\" --allow-install-as-root --mode \"${SERVER_MODE}\" --download-headless --log-level \"${LOG_LEVEL}\" --slave-name \"${SLAVE_NAME}\" --public-address \"${SERVER_IP}\":\"${SERVER_PORT}\" --master-url \"${MASTER_URL}\" --master-token \"${MASTER_TOKEN}\" --plugins ${PLUGINS}\r\n ;;\r\n \r\nesac\r\n\r\necho -e \"install complete\"\r\nexit 0", | ||
"container": "node:14-buster-slim", | ||
"entrypoint": "bash" | ||
} | ||
}, | ||
"variables": [ | ||
{ | ||
"name": "Server Mode", | ||
"description": "Set's the cluster operation mode of the server, can be either \"master\" or \"slave\".\r\n\r\nRequired on:\r\nAll", | ||
"env_variable": "SERVER_MODE", | ||
"default_value": "master", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "required|string|in:master,slave", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "Log Level", | ||
"description": "Options: \"none\", \"fatal\", \"error\", \"warn\", \"audit\", \"info\", \"verbose\"\r\n\r\nRequired on:\r\nAll", | ||
"env_variable": "LOG_LEVEL", | ||
"default_value": "info", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "required|string|in:none,fatal,error,warn,audit,info,verbose", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "Server Admin", | ||
"description": "Superadmin account name\r\n\r\nRequired on:\r\nMaster", | ||
"env_variable": "ADMIN_STRING", | ||
"default_value": "", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "required|string|max:64", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "Slave Name", | ||
"description": "Slave name in the Master Web UI\r\n\r\nRequired on:\r\nSlave", | ||
"env_variable": "SLAVE_NAME", | ||
"default_value": "Your Sub-Server", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "nullable|string|max:20", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "Master URL", | ||
"description": "Connection URL to the Master server, can be an internal address if you have allocated an additional internal port to the Master Server.\r\n\r\nRequired on:\r\nSlave", | ||
"env_variable": "MASTER_URL", | ||
"default_value": "", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "nullable|string|max:64", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "Master Token", | ||
"description": "Authentication token used to connect to the Master server, generated through the Master Web UI.\r\n\r\nRequired on:\r\nSlave", | ||
"env_variable": "MASTER_TOKEN", | ||
"default_value": "", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "nullable|string|max:256", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "Plugins", | ||
"description": "Clusterio Plugins to install, space separate list.\r\n\r\nExample:\r\n@clusterio\/plugin-subspace_storage @clusterio\/plugin-global_chat @clusterio\/plugin-research_sync @clusterio\/plugin-inventory_sync\r\n\r\nRequired on:\r\nAll", | ||
"env_variable": "PLUGINS", | ||
"default_value": "", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "nullable|string|max:512", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "Cluster Name", | ||
"description": "The Name of your Master server cluster.\r\n\r\nRequired:\r\nMaster", | ||
"env_variable": "CLUSTER_NAME", | ||
"default_value": "Your Cluster", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "nullable|string|max:20", | ||
"field_type": "text" | ||
} | ||
] | ||
} |