1
1
mirror of https://github.com/pterodactyl/panel.git synced 2024-11-22 09:02:28 +01:00

Merge branch 'develop' into feature/api-v1

This commit is contained in:
Dane Everitt 2018-01-21 17:06:31 -06:00
commit 407120a854
No known key found for this signature in database
GPG Key ID: EEA66103B3D71F53
13 changed files with 75 additions and 31 deletions

View File

@ -18,7 +18,6 @@ class EggVariableFormRequest extends AdminFormRequest
'name' => 'required|string|min:1|max:255',
'description' => 'sometimes|nullable|string',
'env_variable' => 'required|regex:/^[\w]{1,255}$/|notIn:' . EggVariable::RESERVED_ENV_NAMES,
'default_value' => 'nullable|string',
'options' => 'sometimes|required|array',
'rules' => 'bail|required|string',
];

View File

@ -3,7 +3,7 @@
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2017-11-03T22:15:08-05:00",
"exported_at": "2018-01-21T16:47:24-06:00",
"name": "Spigot",
"author": "support@pterodactyl.io",
"description": "Spigot is the most widely-used modded Minecraft server software in the world. It powers many of the top Minecraft server networks around to ensure they can cope with their huge player base and ensure the satisfaction of their players. Spigot works by reducing and eliminating many causes of lag, as well as adding in handy features and settings that help make your job of server administration easier.",
@ -48,7 +48,7 @@
"default_value": "",
"user_viewable": 0,
"user_editable": 0,
"rules": "string"
"rules": "nullable|string"
}
]
}

View File

@ -3,7 +3,7 @@
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2017-11-05T20:51:45-05:00",
"exported_at": "2018-01-21T16:58:36-06:00",
"name": "Rust",
"author": "support@pterodactyl.io",
"description": "The only aim in Rust is to survive. To do this you will need to overcome struggles such as hunger, thirst and cold. Build a fire. Build a shelter. Kill animals for meat. Protect yourself from other players, and kill them for meat. Create alliances with other players and form a town. Do whatever it takes to survive.",
@ -66,7 +66,7 @@
"default_value": "http:\/\/pterodactyl.io",
"user_viewable": 1,
"user_editable": 1,
"rules": "present|url"
"rules": "nullable|url"
},
{
"name": "World Size",
@ -84,7 +84,7 @@
"default_value": "",
"user_viewable": 1,
"user_editable": 1,
"rules": "present"
"rules": "nullable|string"
},
{
"name": "Max Players",
@ -102,7 +102,7 @@
"default_value": "",
"user_viewable": 1,
"user_editable": 1,
"rules": "present|url"
"rules": "nullable|url"
},
{
"name": "RCON Port",
@ -129,7 +129,7 @@
"default_value": "",
"user_viewable": 1,
"user_editable": 1,
"rules": "present"
"rules": "nullable|string"
}
]
}
}

View File

@ -3,7 +3,7 @@
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2017-11-03T22:29:34-05:00",
"exported_at": "2018-01-21T16:59:40-06:00",
"name": "Ark: Survival Evolved",
"author": "support@pterodactyl.io",
"description": "As a man or woman stranded, naked, freezing, and starving on the unforgiving shores of a mysterious island called ARK, use your skill and cunning to kill or tame and ride the plethora of leviathan dinosaurs and other primeval creatures roaming the land. Hunt, harvest resources, craft items, grow crops, research technologies, and build shelters to withstand the elements and store valuables, all while teaming up with (or preying upon) hundreds of other players to survive, dominate... and escape! \u2014 Gamepedia: ARK",
@ -11,8 +11,8 @@
"startup": ".\/ShooterGame\/Binaries\/Linux\/ShooterGameServer TheIsland?listen?ServerPassword={{ARK_PASSWORD}}?ServerAdminPassword={{ARK_ADMIN_PASSWORD}}?Port={{SERVER_PORT}}?MaxPlayers={{SERVER_MAX_PLAYERS}}",
"config": {
"files": "{}",
"startup": "{\"done\": \"gameserver Steam ID\", \"userInteraction\": []}",
"logs": "{\"custom\": true, \"location\": \"logs\/latest.log\"}",
"startup": "{\r\n \"done\": \"gameserver Steam ID\",\r\n \"userInteraction\": []\r\n}",
"logs": "{\r\n \"custom\": true,\r\n \"location\": \"logs\/latest.log\"\r\n}",
"stop": "quit"
},
"scripts": {
@ -30,7 +30,7 @@
"default_value": "",
"user_viewable": 1,
"user_editable": 1,
"rules": "alpha_dash|between:1,100"
"rules": "nullable|alpha_dash|between:1,100"
},
{
"name": "Admin Password",
@ -39,7 +39,7 @@
"default_value": "",
"user_viewable": 1,
"user_editable": 1,
"rules": "alpha_dash|between:1,100"
"rules": "nullable|alpha_dash|between:1,100"
},
{
"name": "Maximum Players",

View File

@ -3,7 +3,7 @@
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2017-11-03T22:29:36-05:00",
"exported_at": "2018-01-21T16:59:47-06:00",
"name": "Counter-Strike: Global Offensive",
"author": "support@pterodactyl.io",
"description": "Counter-Strike: Global Offensive is a multiplayer first-person shooter video game developed by Hidden Path Entertainment and Valve Corporation.",
@ -11,8 +11,8 @@
"startup": ".\/srcds_run -game csgo -console -port {{SERVER_PORT}} +ip 0.0.0.0 +map {{SRCDS_MAP}} -strictportbind -norestart +sv_setsteamaccount {{STEAM_ACC}}",
"config": {
"files": "{}",
"startup": "{\"done\": \"gameserver Steam ID\", \"userInteraction\": []}",
"logs": "{\"custom\": true, \"location\": \"logs\/latest.log\"}",
"startup": "{\r\n \"done\": \"gameserver Steam ID\",\r\n \"userInteraction\": []\r\n}",
"logs": "{\r\n \"custom\": true,\r\n \"location\": \"logs\/latest.log\"\r\n}",
"stop": "quit"
},
"scripts": {

View File

@ -3,7 +3,7 @@
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2017-11-03T22:30:06-05:00",
"exported_at": "2018-01-21T16:59:45-06:00",
"name": "Custom Source Engine Game",
"author": "support@pterodactyl.io",
"description": "This option allows modifying the startup arguments and other details to run a custom SRCDS based game on the panel.",

View File

@ -3,7 +3,7 @@
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2017-11-03T22:29:37-05:00",
"exported_at": "2018-01-21T16:59:47-06:00",
"name": "Garrys Mod",
"author": "support@pterodactyl.io",
"description": "Garrys Mod, is a sandbox physics game created by Garry Newman, and developed by his company, Facepunch Studios.",
@ -11,13 +11,13 @@
"startup": ".\/srcds_run -game garrysmod -console -port {{SERVER_PORT}} +ip 0.0.0.0 +map {{SRCDS_MAP}} -strictportbind -norestart +sv_setsteamaccount {{STEAM_ACC}}",
"config": {
"files": "{}",
"startup": "{\"done\": \"gameserver Steam ID\", \"userInteraction\": []}",
"logs": "{\"custom\": true, \"location\": \"logs\/latest.log\"}",
"startup": "{\r\n \"done\": \"gameserver Steam ID\",\r\n \"userInteraction\": []\r\n}",
"logs": "{\r\n \"custom\": true,\r\n \"location\": \"logs\/latest.log\"\r\n}",
"stop": "quit"
},
"scripts": {
"installation": {
"script": "#!\/bin\/bash\n# Garry's Mod Installation Script\n#\n# Server Files: \/mnt\/server\napt -y update\napt -y --no-install-recommends install curl lib32gcc1 lib32stdc++6 ca-certificates\n\ncd \/tmp\ncurl -sSL -o steamcmd.tar.gz http:\/\/media.steampowered.com\/installer\/steamcmd_linux.tar.gz\n\nmkdir -p \/mnt\/server\/steamcmd\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steamcmd\ncd \/mnt\/server\/steamcmd\n\n# SteamCMD fails otherwise for some reason, even running as root.\n# This is changed at the end of the install process anyways.\nchown -R root:root \/mnt\n\nexport HOME=\/mnt\/server\n.\/steamcmd.sh +login anonymous +force_install_dir \/mnt\/server +app_update 4020 +quit\n\nmkdir -p \/mnt\/server\/.steam\/sdk32\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so",
"script": "#!\/bin\/bash\n# Garry's Mod Installation Script\n#\n# Server Files: \/mnt\/server\napt -y update\napt -y --no-install-recommends install curl lib32gcc1 ca-certificates\n\ncd \/tmp\ncurl -sSL -o steamcmd.tar.gz http:\/\/media.steampowered.com\/installer\/steamcmd_linux.tar.gz\n\nmkdir -p \/mnt\/server\/steamcmd\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steamcmd\ncd \/mnt\/server\/steamcmd\n\n# SteamCMD fails otherwise for some reason, even running as root.\n# This is changed at the end of the install process anyways.\nchown -R root:root \/mnt\n\nexport HOME=\/mnt\/server\n.\/steamcmd.sh +login anonymous +force_install_dir \/mnt\/server +app_update 4020 +quit\n\nmkdir -p \/mnt\/server\/.steam\/sdk32\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so",
"container": "ubuntu:16.04",
"entrypoint": "bash"
}
@ -42,4 +42,4 @@
"rules": "required|string|alpha_num|size:32"
}
]
}
}

View File

@ -3,7 +3,7 @@
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2017-11-03T22:29:33-05:00",
"exported_at": "2018-01-21T16:59:48-06:00",
"name": "Insurgency",
"author": "support@pterodactyl.io",
"description": "Take to the streets for intense close quarters combat, where a team's survival depends upon securing crucial strongholds and destroying enemy supply in this multiplayer and cooperative Source Engine based experience.",

View File

@ -3,7 +3,7 @@
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2017-11-03T22:29:33-05:00",
"exported_at": "2018-01-21T16:59:45-06:00",
"name": "Team Fortress 2",
"author": "support@pterodactyl.io",
"description": "Team Fortress 2 is a team-based first-person shooter multiplayer video game developed and published by Valve Corporation. It is the sequel to the 1996 mod Team Fortress for Quake and its 1999 remake.",
@ -11,8 +11,8 @@
"startup": ".\/srcds_run -game {{SRCDS_GAME}} -console -port {{SERVER_PORT}} +map {{SRCDS_MAP}} +ip 0.0.0.0 -strictportbind -norestart",
"config": {
"files": "{}",
"startup": "{\"done\": \"gameserver Steam ID\", \"userInteraction\": []}",
"logs": "{\"custom\": true, \"location\": \"logs\/latest.log\"}",
"startup": "{\r\n \"done\": \"gameserver Steam ID\",\r\n \"userInteraction\": []\r\n}",
"logs": "{\r\n \"custom\": true,\r\n \"location\": \"logs\/latest.log\"\r\n}",
"stop": "quit"
},
"scripts": {

View File

@ -0,0 +1,45 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2018-01-21T17:01:31-06:00",
"name": "Terraria Server (TShock)",
"author": "support@pterodactyl.io",
"description": "TShock is a server modification for Terraria, written in C#, and based upon the Terraria Server API. It uses JSON for configuration management, and offers several features not present in the Terraria Server normally.",
"image": "quay.io\/pterodactyl\/core:mono",
"startup": null,
"config": {
"files": "{\"tshock\/config.json\":{\"parser\": \"json\", \"find\":{\"ServerPort\": \"{{server.build.default.port}}\", \"MaxSlots\": \"{{server.build.env.MAX_SLOTS}}\"}}}",
"startup": "{\"done\": \"Type 'help' for a list of commands\", \"userInteraction\": []}",
"logs": "{\"custom\": false, \"location\": \"ServerLog.txt\"}",
"stop": "exit"
},
"scripts": {
"installation": {
"script": "#!\/bin\/ash\n# TShock Installation Script\n#\n# Server Files: \/mnt\/server\napk update\napk add curl unzip\n\ncd \/tmp\n\ncurl -sSLO https:\/\/github.com\/NyxStudios\/TShock\/releases\/download\/v${T_VERSION}\/tshock_${T_VERSION}.zip\n\nunzip -o tshock_${T_VERSION}.zip -d \/mnt\/server",
"container": "alpine:3.4",
"entrypoint": "ash"
}
},
"variables": [
{
"name": "TShock Version",
"description": "Which version of TShock to install and use.",
"env_variable": "T_VERSION",
"default_value": "4.3.22",
"user_viewable": 1,
"user_editable": 1,
"rules": "required|regex:\/^([0-9_\\.-]{5,10})$\/"
},
{
"name": "Maximum Slots",
"description": "Total number of slots to allow on the server.",
"env_variable": "MAX_SLOTS",
"default_value": "20",
"user_viewable": 1,
"user_editable": 0,
"rules": "required|numeric|digits_between:1,3"
}
]
}

View File

@ -3,7 +3,7 @@
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2017-11-03T22:53:04-05:00",
"exported_at": "2018-01-21T17:01:44-06:00",
"name": "Mumble Server",
"author": "support@pterodactyl.io",
"description": "Mumble is an open source, low-latency, high quality voice chat software primarily intended for use while gaming.",

View File

@ -3,7 +3,7 @@
"meta": {
"version": "PTDL_v1"
},
"exported_at": "2017-11-03T22:53:05-05:00",
"exported_at": "2018-01-21T17:01:45-06:00",
"name": "Teamspeak3 Server",
"author": "support@pterodactyl.io",
"description": "VoIP software designed with security in mind, featuring crystal clear voice quality, endless customization options, and scalabilty up to thousands of simultaneous users.",

View File

@ -100,7 +100,7 @@ class FileActionsControllerTest extends ControllerTestCase
$this->repository->shouldReceive('setServer')->with($server)->once()->andReturnSelf()
->shouldReceive('setToken')->with('abc123')->once()->andReturnSelf()
->shouldReceive('getContent')->with($file)->once()->andReturn((object) ['test']);
->shouldReceive('getContent')->with($file)->once()->andReturn('test');
$response = $controller->view($this->request, '1234', $file);
$this->assertIsViewResponse($response);
@ -111,7 +111,7 @@ class FileActionsControllerTest extends ControllerTestCase
$this->assertViewHasKey('directory', $response);
$this->assertViewKeyEquals('file', $file, $response);
$this->assertViewKeyEquals('stat', 'fileStatsObject', $response);
$this->assertViewKeyEquals('contents', (object) ['test'], $response);
$this->assertViewKeyEquals('contents', 'test', $response);
$this->assertViewKeyEquals('directory', $expected, $response);
}