Add support for node management actions using new services

This commit is contained in:
Dane Everitt 2017-08-05 17:20:07 -05:00
parent 4391defb9f
commit c1a078bdcf
No known key found for this signature in database
GPG key ID: EEA66103B3D71F53
33 changed files with 1375 additions and 745 deletions

View file

@ -15,7 +15,7 @@
$factory->define(Pterodactyl\Models\Server::class, function (Faker\Generator $faker) {
return [
'id' => $faker->randomNumber(),
'id' => $faker->unique()->randomNumber(),
'uuid' => $faker->uuid,
'uuidShort' => str_random(8),
'name' => $faker->firstName,
@ -40,7 +40,7 @@ $factory->define(Pterodactyl\Models\Server::class, function (Faker\Generator $fa
$factory->define(Pterodactyl\Models\User::class, function (Faker\Generator $faker) {
return [
'id' => $faker->randomNumber(),
'id' => $faker->unique()->randomNumber(),
'external_id' => null,
'uuid' => $faker->uuid,
'username' => $faker->userName,
@ -56,19 +56,21 @@ $factory->define(Pterodactyl\Models\User::class, function (Faker\Generator $fake
$factory->state(Pterodactyl\Models\User::class, 'admin', function () {
return [
'root_admin' => true,
'root_admin' => true,
];
});
$factory->define(Pterodactyl\Models\Location::class, function (Faker\Generator $faker) {
return [
'short' => $faker->domainWord,
'long' => $faker->catchPhrase,
];
'id' => $faker->unique()->randomNumber(),
'short' => $faker->domainWord,
'long' => $faker->catchPhrase,
];
});
$factory->define(Pterodactyl\Models\Node::class, function (Faker\Generator $faker) {
return [
'id' => $faker->unique()->randomNumber(),
'public' => true,
'name' => $faker->firstName,
'fqdn' => $faker->ipv4,
@ -88,7 +90,7 @@ $factory->define(Pterodactyl\Models\Node::class, function (Faker\Generator $fake
$factory->define(Pterodactyl\Models\ServiceVariable::class, function (Faker\Generator $faker) {
return [
'id' => $faker->randomNumber(),
'id' => $faker->unique()->randomNumber(),
'name' => $faker->firstName,
'description' => $faker->sentence(),
'env_variable' => strtoupper(str_replace(' ', '_', $faker->words(2, true))),
@ -98,7 +100,7 @@ $factory->define(Pterodactyl\Models\ServiceVariable::class, function (Faker\Gene
'rules' => 'required|string',
'created_at' => \Carbon\Carbon::now(),
'updated_at' => \Carbon\Carbon::now(),
];
];
});
$factory->state(Pterodactyl\Models\ServiceVariable::class, 'viewable', function () {

View file

@ -0,0 +1,34 @@
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CascadeNullValuesForDatabaseHostWhenNodeIsDeleted extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('database_hosts', function (Blueprint $table) {
$table->dropForeign(['node_id']);
$table->foreign('node_id')->references('id')->on('nodes')->onDelete('set null');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('database_hosts', function (Blueprint $table) {
$table->dropForeign(['node_id']);
$table->foreign('node_id')->references('id')->on('nodes');
});
}
}

View file

@ -0,0 +1,34 @@
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class AllowNegativeValuesForOverallocation extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('nodes', function (Blueprint $table) {
$table->integer('disk_overallocate')->default(0)->nullable(false)->change();
$table->integer('memory_overallocate')->default(0)->nullable(false)->change();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('nodes', function (Blueprint $table) {
$table->mediumInteger('disk_overallocate')->unsigned()->nullable()->change();
$table->mediumInteger('memory_overallocate')->unsigned()->nullable()->change();
});
}
}