{ "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", "meta": { "version": "PTDL_v1" }, "exported_at": "2020-06-20T13:11:43-04:00", "name": "Bastion", "author": "parker@parkervcp.com", "description": "Bastion is an all-in-one multipurpose Discord bot that can do a whole bunch of things and its features are expanding daily. Bastion does everything most people will ever need it to do. Check out some feature highlights below to get a peek into the vast feature list of Bastion. And if you think Bastion lacks some feature, please send a suggestion and we will add it to Bastion as soon as possible.", "image": "quay.io\/parkervcp\/pterodactyl-images:bot_bastion", "startup": "\"rmv() { echo -e \"stopping nodejs\"; for i in $(pgrep node); do kill $i; done; echo -e \"stopping mongo\"; mongo --eval \\\"db.getSiblingDB('admin').shutdownServer()\\\" ; }; trap \\'echo -e \\\"ctrl-c caught\\\" && rmv\\'; mongod --fork --dbpath \/home\/container\/mongodb\/ --port 27017 --logpath \/home\/container\/mongod.log && until nc -z -v -w5 127.0.0.1 27017; do echo 'Waiting for mongodb connection...'; sleep 5; done && yarn start\"", "config": { "files": "{\r\n \"settings\/credentials.yaml\": {\r\n \"parser\": \"yaml\",\r\n \"find\": {\r\n \"token\": \"{{server.build.env.BOT_TOKEN}}\"\r\n }\r\n },\r\n \"settings\/configurations.yaml\": {\r\n \"parser\": \"yaml\",\r\n \"find\": {\r\n \"presence.status\": \"{{server.build.env.STATUS}}\",\r\n \"presence.activity.type\": \"{{server.build.env.ACTIVITY}}\",\r\n \"presence.activity.name\": \"{{server.build.env.PLAYING}}\",\r\n \"presence.activity.url\": \"{{server.build.env.STREAM_URL}}\"\r\n }\r\n }\r\n}", "startup": "{\r\n \"done\": \"Systems Ready!\"\r\n}", "logs": "{}", "stop": "^C" }, "scripts": { "installation": { "script": "#!\/bin\/bash\r\n# Bastion Bot Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n## Move to install folder\r\ncd \/mnt\/server\/\r\n\r\n## Clone repo\r\ngit clone -q --depth 1 https:\/\/github.com\/TheBastionBot\/Bastion.git .\/\r\n\r\n## Install node_modules\r\nyarn install --only=production\r\n\r\n## Move config files.\r\nmv settings\/credentials.example.yaml settings\/credentials.yaml\r\nmv settings\/configurations.example.yaml settings\/configurations.yaml\r\n\r\n## make folders for mongodb\r\nmkdir mongodb\/", "container": "node:12-buster", "entrypoint": "bash" } }, "variables": [ { "name": "Bot Token", "description": "The Bot ID you get from https:\/\/discordapp.com\/developers\/applications\/", "env_variable": "BOT_TOKEN", "default_value": "GETABOTTOKEN", "user_viewable": 1, "user_editable": 1, "rules": "required|string|max:64" }, { "name": "Bot Status", "description": "valid values are `online`, `idle`, `dnd` and `invisible`", "env_variable": "STATUS", "default_value": "online", "user_viewable": 1, "user_editable": 1, "rules": "required|string|max:20" }, { "name": "Activity Type", "description": "valid options are `PLAYING`, `LISTENING`, `WATCHING` and `STREAMING`", "env_variable": "ACTIVITY", "default_value": "PLAYING", "user_viewable": 1, "user_editable": 1, "rules": "required|string|max:9" }, { "name": "ACTIVITY", "description": "What the bot is doing", "env_variable": "PLAYING", "default_value": "on a pterodactyl server", "user_viewable": 1, "user_editable": 1, "rules": "required|string|max:64" }, { "name": "Stream URL", "description": "If the bot activity is set to `STREAMING`", "env_variable": "STREAM_URL", "default_value": "", "user_viewable": 1, "user_editable": 1, "rules": "nullable|string|max:64" } ] }