mirror of
				https://github.com/pelican-dev/panel.git
				synced 2025-10-27 08:36:51 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			94 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			94 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| use Illuminate\Database\Schema\Blueprint;
 | |
| use Illuminate\Database\Migrations\Migration;
 | |
| 
 | |
| class ServiceOptionsToEggsConversion extends Migration
 | |
| {
 | |
|     /**
 | |
|      * Run the migrations.
 | |
|      */
 | |
|     public function up()
 | |
|     {
 | |
|         Schema::disableForeignKeyConstraints();
 | |
| 
 | |
|         Schema::table('service_options', function (Blueprint $table) {
 | |
|             $table->dropForeign(['config_from']);
 | |
|             $table->dropForeign(['copy_script_from']);
 | |
|         });
 | |
| 
 | |
|         Schema::rename('service_options', 'eggs');
 | |
| 
 | |
|         Schema::table('packs', function (Blueprint $table) {
 | |
|             $table->dropForeign(['option_id']);
 | |
|             $table->renameColumn('option_id', 'egg_id');
 | |
| 
 | |
|             $table->foreign('egg_id')->references('id')->on('eggs')->onDelete('CASCADE');
 | |
|         });
 | |
| 
 | |
|         Schema::table('servers', function (Blueprint $table) {
 | |
|             $table->dropForeign(['option_id']);
 | |
|             $table->renameColumn('option_id', 'egg_id');
 | |
| 
 | |
|             $table->foreign('egg_id')->references('id')->on('eggs');
 | |
|         });
 | |
| 
 | |
|         Schema::table('eggs', function (Blueprint $table) {
 | |
|             $table->foreign('config_from')->references('id')->on('eggs')->onDelete('SET NULL');
 | |
|             $table->foreign('copy_script_from')->references('id')->on('eggs')->onDelete('SET NULL');
 | |
|         });
 | |
| 
 | |
|         Schema::table('service_variables', function (Blueprint $table) {
 | |
|             $table->dropForeign(['option_id']);
 | |
|             $table->renameColumn('option_id', 'egg_id');
 | |
| 
 | |
|             $table->foreign('egg_id')->references('id')->on('eggs')->onDelete('CASCADE');
 | |
|         });
 | |
| 
 | |
|         Schema::enableForeignKeyConstraints();
 | |
|     }
 | |
| 
 | |
|     /**
 | |
|      * Reverse the migrations.
 | |
|      */
 | |
|     public function down()
 | |
|     {
 | |
|         Schema::disableForeignKeyConstraints();
 | |
| 
 | |
|         Schema::table('eggs', function (Blueprint $table) {
 | |
|             $table->dropForeign(['config_from']);
 | |
|             $table->dropForeign(['copy_script_from']);
 | |
|         });
 | |
| 
 | |
|         Schema::rename('eggs', 'service_options');
 | |
| 
 | |
|         Schema::table('packs', function (Blueprint $table) {
 | |
|             $table->dropForeign(['egg_id']);
 | |
|             $table->renameColumn('egg_id', 'option_id');
 | |
| 
 | |
|             $table->foreign('option_id')->references('id')->on('service_options')->onDelete('CASCADE');
 | |
|         });
 | |
| 
 | |
|         Schema::table('servers', function (Blueprint $table) {
 | |
|             $table->dropForeign(['egg_id']);
 | |
|             $table->renameColumn('egg_id', 'option_id');
 | |
| 
 | |
|             $table->foreign('option_id')->references('id')->on('service_options');
 | |
|         });
 | |
| 
 | |
|         Schema::table('service_options', function (Blueprint $table) {
 | |
|             $table->foreign('config_from')->references('id')->on('service_options')->onDelete('SET NULL');
 | |
|             $table->foreign('copy_script_from')->references('id')->on('service_options')->onDelete('SET NULL');
 | |
|         });
 | |
| 
 | |
|         Schema::table('service_variables', function (Blueprint $table) {
 | |
|             $table->dropForeign(['egg_id']);
 | |
|             $table->renameColumn('egg_id', 'option_id');
 | |
| 
 | |
|             $table->foreign('option_id')->references('id')->on('options')->onDelete('CASCADE');
 | |
|         });
 | |
| 
 | |
|         Schema::enableForeignKeyConstraints();
 | |
|     }
 | |
| }
 | 
