-
Notifications
You must be signed in to change notification settings - Fork 12
/
egg-pterodactyl-bastion.json
122 lines (122 loc) · 5.93 KB
/
egg-pterodactyl-bastion.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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PANEL",
"meta": {
"update_url": null,
"version": "PTDL_v2"
},
"exported_at": "2024-06-01T19:44:09+00:00",
"name": "Bastion",
"author": "parker@parkervcp.com",
"description": "Bastion is a multi-purpose Discord Bot that can help you automate most tasks in your server, from administration and moderation to keeping the members active through various incentives, games and other fun activities",
"features": null,
"docker_images": {
"Bastion": "ghcr.io/parkervcp/yolks:bot_bastion"
},
"file_denylist": [],
"startup": "{{STARTUP_CMD}}",
"config": {
"files": "{}",
"logs": "{}",
"startup": "{\r\n \"done\": \"Ready\"\r\n}",
"stop": "^^C"
},
"scripts": {
"installation": {
"container": "node:20-bookworm",
"entrypoint": "bash",
"script": "#!/bin/bash\r\n# Bastion Bot Installation Script\r\n#\r\n# Server Files: /mnt/server\r\n## Move to install folder\r\napt update\r\napt install -y build-essential libtool python3 git tar\r\n\r\n\r\nmkdir -p /mnt/server/\r\ncd /mnt/server/\r\n\r\nif [ -d \"/mnt/server/mongodb\" ]\r\nthen\r\n cd /mnt/server/\r\n echo \"backing up mongodb\"\r\n REINSTALL=true\r\n tar -czf mongodb_backup.tar.gz mongodb/\r\n mv mongodb_backup.tar.gz /tmp\r\nfi\r\n\r\ncd /mnt/server\r\nrm -rf * .git/ .github/ .env.example .eslintrc.yml .gitattributes .gitignore .npm/\r\n\r\n\r\n## Clone repo\r\necho \"cloning Bastion bot\"\r\ngit clone -q --depth 1 https://github.com/TheBastionBot/Bastion.git ./\r\n\r\necho \"updating npm\"\r\nnpm install -g npm@latest\r\necho \"npm install --no-package-lock\"\r\nnpm install --no-package-lock\r\necho \"npm run build\"\r\nnpm run build\r\n\r\n## Move config files.\r\nmv settings.example.yaml settings.yaml\r\nrm -rf bastion.cmd .env.example bastion.sh scrips/\r\n\r\n\r\nmkdir -p mongodb/\r\nif [ \"$REINSTALL\" == \"true\" ]\r\nthen\r\n cd /mnt/server\r\n echo \"reinstall\"\r\n mv /tmp/mongodb_backup.tar.gz /mnt/server\r\n tar xf mongodb_backup.tar.gz\r\n rm mongodb_backup.tar.gz\r\nelse\r\n echo \"fresh install\"\r\nfi\r\n\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\""
}
},
"variables": [
{
"name": "Bot Token",
"description": "The Bot Token you get from https://discordapp.com/developers/applications/",
"env_variable": "BOT_TOKEN",
"default_value": "GETABOTTOKEN",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:80",
"field_type": "text"
},
{
"name": "Bot Client ID",
"description": "The Bot ID you get from https://discordapp.com/developers/applications/",
"env_variable": "BOT_ID",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:32",
"field_type": "text"
},
{
"name": "Mongo URL",
"description": "use `mongodb://127.0.0.1:27017/bastion` for using the build in mongodb server",
"env_variable": "MONGO_URI",
"default_value": "mongodb://127.0.0.1:27017/bastion",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:128",
"field_type": "text"
},
{
"name": "Music Activity",
"description": "When enabled, Bastion updates the activity to the currently playing track",
"env_variable": "BASTION_MUSIC_ACTIVITY",
"default_value": "true",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|in:true,false",
"field_type": "text"
},
{
"name": "Relay Direct Messages",
"description": "When enabled, Bastion will relay any direct messages it receives to the owner of the bot application / team.",
"env_variable": "BASTION_RELAY_DMS",
"default_value": "false",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|in:true,false",
"field_type": "text"
},
{
"name": "Safe Mode",
"description": "When enabled, this disables usage of unsafe commands like `exec` and `eval`.",
"env_variable": "UNSAFE_MODE",
"default_value": "false",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|in:true,false",
"field_type": "text"
},
{
"name": "Bastion API Port",
"description": "Port used for Bastion API Server",
"env_variable": "BASTION_API_PORT",
"default_value": "8377",
"user_viewable": true,
"user_editable": false,
"rules": "required|string|max:10",
"field_type": "text"
},
{
"name": "Bastion API Auth",
"description": "Auth for accessing the Bastion API Server.",
"env_variable": "BASTION_API_AUTH",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "nullable|string|max:128",
"field_type": "text"
},
{
"name": "Startup cmd",
"description": "set to `npm start` if you just want to start the bot.\r\nset to `npm run commands` to activate the slash commands",
"env_variable": "STARTUP_CMD",
"default_value": "npm start",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|in:npm start,npm run commands",
"field_type": "text"
}
]
}