-
-
Notifications
You must be signed in to change notification settings - Fork 3
/
pterodactyl-egg.json
82 lines (82 loc) · 5.98 KB
/
pterodactyl-egg.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2024-05-26T09:45:13-10:00",
"name": "Redon Hub",
"author": "[email protected]",
"description": "Redon Hub Pterodactyl Egg",
"features": null,
"docker_images": {
"ghcr.io\/parkervcp\/yolks:python_3.9": "ghcr.io\/parkervcp\/yolks:python_3.9"
},
"file_denylist": [],
"startup": "if [[ ! -z ${VERSION} ]]; then\r\n echo -e \"Using version ${VERSION}\";\r\nelse\r\n echo -e \"Please set the VERSION variable\";\r\n exit 0;\r\nfi;\r\n\r\nif [[ -d .git ]] && [[ ${MODFILES} == 0 ]]; then\r\n echo -e \"Forcing git checkout\";\r\n git fetch --all --tags;\r\n git checkout tags\/${VERSION} -f;\r\nelif [[ -d .git ]] && [[ ${MODFILES} == 1 ]]; then\r\n echo -e \"User modify files enabled\";\r\n git fetch --all --tags;\r\n git checkout tags\/${VERSION};\r\nfi;\r\n\r\nif [ -f \/home\/container\/requirements.txt ]; then\r\n pip install -U --prefix .local -r \/home\/container\/requirements.txt;\r\nfi;\r\n\r\nif [[ ${DBPUSH} == 0 ]]; then\r\n echo -e \"Running prisma generate\";\r\n \/usr\/local\/bin\/python -m prisma generate --schema \/home\/container\/mysql-schema.prisma;\r\nelif [[ ${DBPUSH} == 1 ]]; then\r\n echo -e \"Running prisma db push\";\r\n \/usr\/local\/bin\/python -m prisma db push --schema \/home\/container\/mysql-schema.prisma;\r\nfi;\r\n\r\n\/usr\/local\/bin\/python \/home\/container\/launcher.py;",
"config": {
"files": "{}",
"startup": "{\r\n \"done\": \"Database Connected\"\r\n}",
"logs": "{}",
"stop": "^C"
},
"scripts": {
"installation": {
"script": "#!\/bin\/bash\r\n# Redon Hub Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\nif [ ! -d \/mnt\/server\/ ]; then\r\n mkdir \/mnt\/server\/\r\nfi\r\ncd \/mnt\/server\r\n\r\napt update\r\napt install -y git curl jq file unzip make gcc g++ python3 python3-pip python-dev-is-python3 libtool libmariadb-dev\r\n\r\nif [[ ! -z ${VERSION} ]]; then\r\n echo -e \"Using version ${VERSION}\"\r\nelse\r\n echo -e \"Please set the VERSION variable\"\r\n exit 1\r\nfi\r\n\r\nGIT_ADDRESS=${GITREPO}\r\n\r\n## pull git\r\nif [ \"$(ls -A \/mnt\/server)\" ]; then\r\n echo -e \"\/mnt\/server directory is not empty.\"\r\n if [ -d .git ]; then\r\n echo -e \".git directory exists\"\r\n if [ -f .git\/config ]; then\r\n echo -e \"loading info from git config\"\r\n ORIGIN=$(git config --get remote.origin.url)\r\n else\r\n echo -e \"files found with no git config\"\r\n echo -e \"closing out without touching things to not break anything\"\r\n exit 10\r\n fi\r\n fi\r\n\r\n if [ \"${ORIGIN}\" == \"${GIT_ADDRESS}\" ]; then\r\n echo \"pulling latest from github\"\r\n git pull\r\n fi\r\nelse\r\n echo -e \"\/mnt\/server is empty.\\ncloning files into repo\"\r\n git clone ${GIT_ADDRESS} .\r\n git checkout tags\/${VERSION}\r\nfi\r\n\r\nexport HOME=\/mnt\/server\r\n\r\nif [ ! -f \/mnt\/server\/config.json ]; then\r\n echo -e \"Creating config.json\"\r\n cp example.config.json config.json\r\nfi\r\n\r\nif [ -f \/mnt\/server\/requirements.txt ]; then\r\n echo -e \"Installing python requirements into folder\"\r\n pip install -U --prefix .local -r \/mnt\/server\/requirements.txt\r\nfi\r\n\r\necho -e \"${OPENCLOUD}\"\r\nif [ \"${OPENCLOUD}\" == \"false\" ] || [ \"${OPENCLOUD}\" == \"0\" ]; then\r\n echo -e \"Open cloud disabled, generating mysql-schema\"\r\n python -m prisma generate --schema \/mnt\/server\/mysql-schema.prisma\r\nfi\r\n\r\necho -e \"install complete\"\r\nexit 0",
"container": "python:3.9-slim",
"entrypoint": "bash"
}
},
"variables": [
{
"name": "version",
"description": "The version of the bot to use.\r\nPlease ensure to update your database whenever you update to a later version.",
"env_variable": "version",
"default_value": "1.0.2",
"user_viewable": true,
"user_editable": true,
"rules": "required|string",
"field_type": "text"
},
{
"name": "modify files",
"description": "Enable modification of files.\r\n\r\nOnly modifiable by paying users.",
"env_variable": "modfiles",
"default_value": "0",
"user_viewable": true,
"user_editable": true,
"rules": "required|boolean",
"field_type": "text"
},
{
"name": "Git Source",
"description": "Source git repo",
"env_variable": "gitrepo",
"default_value": "https:\/\/github.com\/Redon-Tech\/Redon-Hub",
"user_viewable": false,
"user_editable": false,
"rules": "required|string",
"field_type": "text"
},
{
"name": "Uses Open Cloud",
"description": "If you use open cloud please enable this, this prevents the script from running prisma generate.\r\n\r\nPlease contact staff to get this changed.\r\nCan only be changed by paying users.",
"env_variable": "opencloud",
"default_value": "0",
"user_viewable": true,
"user_editable": false,
"rules": "required|boolean",
"field_type": "text"
},
{
"name": "db push",
"description": "Run this to sync your database to the server.\r\nIt is recommended to only use this once, or after updates. \r\n\r\nOnce you enable this restart your server and the bot will automatically run `prisma db push`.",
"env_variable": "dbpush",
"default_value": "0",
"user_viewable": true,
"user_editable": true,
"rules": "required|boolean",
"field_type": "text"
}
]
}