{
    "_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"
        }
    ]
}