Add foreign keys to all necessary tables 👏
I thoroughly hate myself for doing MEDIUMINT(8) on so many tables.
This commit is contained in:
parent
55c9f0f2f2
commit
13ce251593
|
@ -0,0 +1,65 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
|
||||
class AddForeignKeysServers extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
DB::statement('ALTER TABLE servers
|
||||
MODIFY COLUMN node INT(10) UNSIGNED NOT NULL,
|
||||
MODIFY COLUMN owner INT(10) UNSIGNED NOT NULL,
|
||||
MODIFY COLUMN allocation INT(10) UNSIGNED NOT NULL,
|
||||
MODIFY COLUMN service INT(10) UNSIGNED NOT NULL,
|
||||
MODIFY COLUMN servers.option INT(10) UNSIGNED NOT NULL
|
||||
');
|
||||
|
||||
Schema::table('servers', function (Blueprint $table) {
|
||||
$table->foreign('node')->references('id')->on('nodes');
|
||||
$table->foreign('owner')->references('id')->on('users');
|
||||
$table->foreign('allocation')->references('id')->on('allocations');
|
||||
$table->foreign('service')->references('id')->on('services');
|
||||
$table->foreign('option')->references('id')->on('service_options');
|
||||
$table->softDeletes();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::table('servers', function (Blueprint $table) {
|
||||
$table->dropForeign('servers_node_foreign');
|
||||
$table->dropForeign('servers_owner_foreign');
|
||||
$table->dropForeign('servers_allocation_foreign');
|
||||
$table->dropForeign('servers_service_foreign');
|
||||
$table->dropForeign('servers_option_foreign');
|
||||
|
||||
$table->dropIndex('servers_node_foreign');
|
||||
$table->dropIndex('servers_owner_foreign');
|
||||
$table->dropIndex('servers_allocation_foreign');
|
||||
$table->dropIndex('servers_service_foreign');
|
||||
$table->dropIndex('servers_option_foreign');
|
||||
|
||||
$table->dropColumn('deleted_at');
|
||||
});
|
||||
|
||||
DB::statement('ALTER TABLE servers
|
||||
MODIFY COLUMN node MEDIUMINT(8) UNSIGNED NOT NULL,
|
||||
MODIFY COLUMN owner MEDIUMINT(8) UNSIGNED NOT NULL,
|
||||
MODIFY COLUMN allocation MEDIUMINT(8) UNSIGNED NOT NULL,
|
||||
MODIFY COLUMN service MEDIUMINT(8) UNSIGNED NOT NULL,
|
||||
MODIFY COLUMN servers.option MEDIUMINT(8) UNSIGNED NOT NULL
|
||||
');
|
||||
}
|
||||
}
|
|
@ -0,0 +1,47 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
|
||||
class AddForeignAllocations extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
DB::statement('ALTER TABLE allocations
|
||||
MODIFY COLUMN assigned_to INT(10) UNSIGNED NULL,
|
||||
MODIFY COLUMN node INT(10) UNSIGNED NOT NULL
|
||||
');
|
||||
|
||||
Schema::table('allocations', function (Blueprint $table) {
|
||||
$table->foreign('assigned_to')->references('id')->on('servers');
|
||||
$table->foreign('node')->references('id')->on('nodes');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::table('allocations', function (Blueprint $table) {
|
||||
$table->dropForeign('allocations_assigned_to_foreign');
|
||||
$table->dropForeign('allocations_node_foreign');
|
||||
|
||||
$table->dropIndex('allocations_assigned_to_foreign');
|
||||
$table->dropIndex('allocations_node_foreign');
|
||||
});
|
||||
|
||||
DB::statement('ALTER TABLE allocations
|
||||
MODIFY COLUMN assigned_to MEDIUMINT(8) UNSIGNED NULL,
|
||||
MODIFY COLUMN node MEDIUMINT(8) UNSIGNED NOT NULL
|
||||
');
|
||||
}
|
||||
}
|
|
@ -0,0 +1,33 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
|
||||
class AddForeignApiKeys extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::table('api_keys', function (Blueprint $table) {
|
||||
$table->foreign('user')->references('id')->on('users');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::table('api_keys', function (Blueprint $table) {
|
||||
$table->dropForeign('api_keys_user_foreign');
|
||||
$table->dropIndex('api_keys_user_foreign');
|
||||
});
|
||||
}
|
||||
}
|
|
@ -0,0 +1,37 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
|
||||
class AddForeignApiPermissions extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
DB::statement('ALTER TABLE api_permissions MODIFY key_id INT(10) UNSIGNED NOT NULL');
|
||||
|
||||
Schema::table('api_permissions', function (Blueprint $table) {
|
||||
$table->foreign('key_id')->references('id')->on('api_keys');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::table('api_permissions', function (Blueprint $table) {
|
||||
$table->dropForeign('api_permissions_key_id_foreign');
|
||||
$table->dropIndex('api_permissions_key_id_foreign');
|
||||
});
|
||||
|
||||
DB::statement('ALTER TABLE api_permissions MODIFY key_id MEDIUMINT(8) UNSIGNED NOT NULL');
|
||||
}
|
||||
}
|
|
@ -0,0 +1,33 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
|
||||
class AddForeignDatabaseServers extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::table('database_servers', function (Blueprint $table) {
|
||||
$table->foreign('linked_node')->references('id')->on('nodes');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::table('database_servers', function (Blueprint $table) {
|
||||
$table->dropForeign('database_servers_linked_node_foreign');
|
||||
$table->dropIndex('database_servers_linked_node_foreign');
|
||||
});
|
||||
}
|
||||
}
|
|
@ -0,0 +1,37 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
|
||||
class AddForeignDatabases extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::table('databases', function (Blueprint $table) {
|
||||
$table->foreign('server_id')->references('id')->on('servers');
|
||||
$table->foreign('db_server')->references('id')->on('database_servers');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::table('databases', function (Blueprint $table) {
|
||||
$table->dropForeign('databases_server_id_foreign');
|
||||
$table->dropForeign('databases_db_server_foreign');
|
||||
|
||||
$table->dropIndex('databases_server_id_foreign');
|
||||
$table->dropIndex('databases_db_server_foreign');
|
||||
});
|
||||
}
|
||||
}
|
|
@ -0,0 +1,37 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
|
||||
class AddForeignNodes extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
DB::statement('ALTER TABLE nodes MODIFY location INT(10) UNSIGNED NOT NULL');
|
||||
|
||||
Schema::table('nodes', function (Blueprint $table) {
|
||||
$table->foreign('location')->references('id')->on('locations');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::table('nodes', function (Blueprint $table) {
|
||||
$table->dropForeign('nodes_location_foreign');
|
||||
$table->dropIndex('nodes_location_foreign');
|
||||
});
|
||||
|
||||
DB::statement('ALTER TABLE nodes MODIFY location MEDIUMINT(10) UNSIGNED NOT NULL');
|
||||
}
|
||||
}
|
|
@ -0,0 +1,38 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
|
||||
class AddForeignPermissions extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::table('permissions', function (Blueprint $table) {
|
||||
$table->foreign('user_id')->references('id')->on('users');
|
||||
$table->foreign('server_id')->references('id')->on('servers');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::table('permissions', function (Blueprint $table) {
|
||||
$table->dropForeign('permissions_user_id_foreign');
|
||||
$table->dropForeign('permissions_server_id_foreign');
|
||||
|
||||
$table->dropIndex('permissions_user_id_foreign');
|
||||
$table->dropIndex('permissions_server_id_foreign');
|
||||
});
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,48 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
|
||||
class AddForeignServerVariables extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
DB::statement('ALTER TABLE server_variables
|
||||
MODIFY COLUMN server_id INT(10) UNSIGNED NULL,
|
||||
MODIFY COLUMN variable_id INT(10) UNSIGNED NOT NULL
|
||||
');
|
||||
|
||||
Schema::table('server_variables', function (Blueprint $table) {
|
||||
$table->foreign('server_id')->references('id')->on('servers');
|
||||
$table->foreign('variable_id')->references('id')->on('service_variables');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::table('server_variables', function (Blueprint $table) {
|
||||
$table->dropForeign('server_variables_server_id_foreign');
|
||||
$table->dropForeign('server_variables_variable_id_foreign');
|
||||
|
||||
$table->dropIndex('server_variables_server_id_foreign');
|
||||
$table->dropIndex('server_variables_variable_id_foreign');
|
||||
});
|
||||
|
||||
DB::statement('ALTER TABLE allocations
|
||||
MODIFY COLUMN server_id MEDIUMINT(8) UNSIGNED NULL,
|
||||
MODIFY COLUMN variable_id MEDIUMINT(8) UNSIGNED NOT NULL
|
||||
');
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,37 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
|
||||
class AddForeignServiceOptions extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
DB::statement('ALTER TABLE service_options MODIFY parent_service INT(10) UNSIGNED NOT NULL');
|
||||
|
||||
Schema::table('service_options', function (Blueprint $table) {
|
||||
$table->foreign('parent_service')->references('id')->on('services');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::table('service_options', function (Blueprint $table) {
|
||||
$table->dropForeign('service_options_parent_service_foreign');
|
||||
$table->dropIndex('service_options_parent_service_foreign');
|
||||
});
|
||||
|
||||
DB::statement('ALTER TABLE service_options MODIFY parent_service MEDIUMINT(8) UNSIGNED NOT NULL');
|
||||
}
|
||||
}
|
|
@ -0,0 +1,37 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
|
||||
class AddForeignServiceVariables extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
DB::statement('ALTER TABLE service_variables MODIFY option_id INT(10) UNSIGNED NOT NULL');
|
||||
|
||||
Schema::table('service_variables', function (Blueprint $table) {
|
||||
$table->foreign('option_id')->references('id')->on('service_options');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::table('service_variables', function (Blueprint $table) {
|
||||
$table->dropForeign('service_variables_option_id_foreign');
|
||||
$table->dropIndex('service_variables_option_id_foreign');
|
||||
});
|
||||
|
||||
DB::statement('ALTER TABLE service_variables MODIFY option_id MEDIUMINT(8) UNSIGNED NOT NULL');
|
||||
}
|
||||
}
|
|
@ -0,0 +1,37 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
|
||||
class AddForeignSubusers extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::table('subusers', function (Blueprint $table) {
|
||||
$table->foreign('user_id')->references('id')->on('users');
|
||||
$table->foreign('server_id')->references('id')->on('servers');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::table('subusers', function (Blueprint $table) {
|
||||
$table->dropForeign('subusers_user_id_foreign');
|
||||
$table->dropForeign('subusers_server_id_foreign');
|
||||
|
||||
$table->dropIndex('subusers_user_id_foreign');
|
||||
$table->dropIndex('subusers_server_id_foreign');
|
||||
});
|
||||
}
|
||||
}
|
|
@ -0,0 +1,36 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
|
||||
class AddForeignTasks extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::table('tasks', function (Blueprint $table) {
|
||||
$table->foreign('server')->references('id')->on('servers');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::table('tasks', function (Blueprint $table) {
|
||||
$table->dropForeign('tasks_server_foreign');
|
||||
$table->dropForeign('tasks_server_foreign');
|
||||
|
||||
$table->dropIndex('tasks_server_foreign');
|
||||
$table->dropIndex('tasks_server_foreign');
|
||||
});
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue