diff --git a/database/migrations/2024_09_16_160709_add_ssh_sftp_fields_to_private_keys_table.php b/database/migrations/2024_09_16_160709_add_ssh_sftp_fields_to_private_keys_table.php new file mode 100644 index 000000000..a12cd04e9 --- /dev/null +++ b/database/migrations/2024_09_16_160709_add_ssh_sftp_fields_to_private_keys_table.php @@ -0,0 +1,37 @@ +deleteDirectory(''); + Storage::disk('ssh-keys')->makeDirectory(''); + + Schema::table('private_keys', function (Blueprint $table) { + $table->boolean('is_server_ssh_key')->default(true); + $table->boolean('is_sftp_key')->default(false); + }); + + // Re-save SSH keys on server only for records with is_server_ssh_key = true + PrivateKey::where('is_server_ssh_key', true)->chunk(100, function ($keys) { + foreach ($keys as $key) { + $key->storeInFileSystem(); + } + }); + } + + public function down() + { + Schema::table('private_keys', function (Blueprint $table) { + $table->dropColumn('is_sftp_storage_key'); + $table->dropColumn('is_server_ssh_key'); + }); + } +}; \ No newline at end of file