From 38c2c74bc646b2eb512a8d66107cfa4d1e560e8f Mon Sep 17 00:00:00 2001 From: Hosmel Quintana Date: Sun, 9 Apr 2023 23:12:44 -0600 Subject: [PATCH 01/10] ignore .idea and vendor --- .gitignore | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitignore b/.gitignore index 165765a..6482272 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,4 @@ .phpunit.result.cache + +/.idea +/vendor From 8e490cde7af7c7aacecf43e80aed714fc9cef031 Mon Sep 17 00:00:00 2001 From: Hosmel Quintana Date: Sun, 9 Apr 2023 23:13:33 -0600 Subject: [PATCH 02/10] use anonymous migration --- ..._28_000000_create_one_time_operations_table.php | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/database/migrations/2023_02_28_000000_create_one_time_operations_table.php b/database/migrations/2023_02_28_000000_create_one_time_operations_table.php index 9cc247f..da4d958 100644 --- a/database/migrations/2023_02_28_000000_create_one_time_operations_table.php +++ b/database/migrations/2023_02_28_000000_create_one_time_operations_table.php @@ -6,18 +6,10 @@ use TimoKoerber\LaravelOneTimeOperations\Models\Operation; use TimoKoerber\LaravelOneTimeOperations\OneTimeOperationManager; -class CreateOneTimeOperationsTable extends Migration -{ - protected string $name; - - public function __construct() - { - $this->name = OneTimeOperationManager::getTableName(); - } - +return new class () extends Migration { public function up() { - Schema::create($this->name, function (Blueprint $table) { + Schema::create(OneTimeOperationManager::getTableName(), function (Blueprint $table) { $table->bigIncrements('id'); $table->string('name'); $table->enum('dispatched', [Operation::DISPATCHED_SYNC, Operation::DISPATCHED_ASYNC]); @@ -27,6 +19,6 @@ public function up() public function down() { - Schema::dropIfExists($this->name); + Schema::dropIfExists(OneTimeOperationManager::getTableName()); } } From 6da175a88ebc84a18a5f4ca515a7866b87a071e4 Mon Sep 17 00:00:00 2001 From: Hosmel Quintana Date: Sun, 9 Apr 2023 23:18:05 -0600 Subject: [PATCH 03/10] move config publish inside of runningInConsole --- src/Providers/OneTimeOperationsServiceProvider.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Providers/OneTimeOperationsServiceProvider.php b/src/Providers/OneTimeOperationsServiceProvider.php index 74c0d6d..acb9d79 100644 --- a/src/Providers/OneTimeOperationsServiceProvider.php +++ b/src/Providers/OneTimeOperationsServiceProvider.php @@ -13,14 +13,14 @@ public function boot(): void { $this->loadMigrationsFrom([__DIR__.'/../../database/migrations']); - $this->publishes([ - __DIR__.'/../../config/one-time-operations.php' => config_path('one-time-operations.php'), - ]); - if ($this->app->runningInConsole()) { $this->commands(OneTimeOperationsMakeCommand::class); $this->commands(OneTimeOperationsProcessCommand::class); $this->commands(OneTimeOperationShowCommand::class); + + $this->publishes([ + __DIR__.'/../../config/one-time-operations.php' => config_path('one-time-operations.php'), + ]); } } From 55b07e7066341112d670a81eb0baa4d68f086e2a Mon Sep 17 00:00:00 2001 From: Hosmel Quintana Date: Sun, 9 Apr 2023 23:18:24 -0600 Subject: [PATCH 04/10] add tag for config --- src/Providers/OneTimeOperationsServiceProvider.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Providers/OneTimeOperationsServiceProvider.php b/src/Providers/OneTimeOperationsServiceProvider.php index acb9d79..edfb3a7 100644 --- a/src/Providers/OneTimeOperationsServiceProvider.php +++ b/src/Providers/OneTimeOperationsServiceProvider.php @@ -20,7 +20,7 @@ public function boot(): void $this->publishes([ __DIR__.'/../../config/one-time-operations.php' => config_path('one-time-operations.php'), - ]); + ], 'one-time-operations-config'); } } From 446b290ec86f166189332937559b8dc5ea498a41 Mon Sep 17 00:00:00 2001 From: Hosmel Quintana Date: Sun, 9 Apr 2023 23:19:26 -0600 Subject: [PATCH 05/10] publish migration file --- .../OneTimeOperationsServiceProvider.php | 23 +++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/src/Providers/OneTimeOperationsServiceProvider.php b/src/Providers/OneTimeOperationsServiceProvider.php index edfb3a7..af0585d 100644 --- a/src/Providers/OneTimeOperationsServiceProvider.php +++ b/src/Providers/OneTimeOperationsServiceProvider.php @@ -2,6 +2,7 @@ namespace TimoKoerber\LaravelOneTimeOperations\Providers; +use Illuminate\Filesystem\Filesystem; use Illuminate\Support\ServiceProvider; use TimoKoerber\LaravelOneTimeOperations\Commands\OneTimeOperationShowCommand; use TimoKoerber\LaravelOneTimeOperations\Commands\OneTimeOperationsMakeCommand; @@ -11,8 +12,6 @@ class OneTimeOperationsServiceProvider extends ServiceProvider { public function boot(): void { - $this->loadMigrationsFrom([__DIR__.'/../../database/migrations']); - if ($this->app->runningInConsole()) { $this->commands(OneTimeOperationsMakeCommand::class); $this->commands(OneTimeOperationsProcessCommand::class); @@ -21,6 +20,14 @@ public function boot(): void $this->publishes([ __DIR__.'/../../config/one-time-operations.php' => config_path('one-time-operations.php'), ], 'one-time-operations-config'); + + $this->publishes([ + __DIR__.'/../../database/migrations/2023_02_28_000000_create_one_time_operations_table.php' => database_path('migrations/'.date('Y_m_d_His', time()).'_create_one_time_operations_table.php'), + ], 'one-time-operations-migrations'); + + if (! $this->migrationFileExists()) { + $this->loadMigrationsFrom([__DIR__.'/../../database/migrations']); + } } } @@ -30,4 +37,16 @@ public function register() __DIR__.'/../../config/one-time-operations.php', 'one-time-operations' ); } + + protected function migrationFileExists(): bool + { + $files = $this->app->make(Filesystem::class)->glob(sprintf( + '%s%s%s', + database_path('migrations'), + DIRECTORY_SEPARATOR, + '*_create_one_time_operations_table.php' + )); + + return count($files) > 0; + } } From 2b38f5f8c176b4d100c961f1097e109964abb109 Mon Sep 17 00:00:00 2001 From: Hosmel Quintana Date: Sun, 9 Apr 2023 23:22:14 -0600 Subject: [PATCH 06/10] fix migration --- .../2023_02_28_000000_create_one_time_operations_table.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/database/migrations/2023_02_28_000000_create_one_time_operations_table.php b/database/migrations/2023_02_28_000000_create_one_time_operations_table.php index da4d958..f68892c 100644 --- a/database/migrations/2023_02_28_000000_create_one_time_operations_table.php +++ b/database/migrations/2023_02_28_000000_create_one_time_operations_table.php @@ -21,4 +21,4 @@ public function down() { Schema::dropIfExists(OneTimeOperationManager::getTableName()); } -} +}; From 62d358f3aab7e85304ed085048d61bb78365a055 Mon Sep 17 00:00:00 2001 From: Hosmel Quintana Date: Fri, 5 May 2023 09:32:49 -0600 Subject: [PATCH 07/10] add early return --- .../OneTimeOperationsServiceProvider.php | 26 ++++++++++--------- 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/src/Providers/OneTimeOperationsServiceProvider.php b/src/Providers/OneTimeOperationsServiceProvider.php index af0585d..cbaff2f 100644 --- a/src/Providers/OneTimeOperationsServiceProvider.php +++ b/src/Providers/OneTimeOperationsServiceProvider.php @@ -13,21 +13,23 @@ class OneTimeOperationsServiceProvider extends ServiceProvider public function boot(): void { if ($this->app->runningInConsole()) { - $this->commands(OneTimeOperationsMakeCommand::class); - $this->commands(OneTimeOperationsProcessCommand::class); - $this->commands(OneTimeOperationShowCommand::class); + return; + } + + $this->commands(OneTimeOperationsMakeCommand::class); + $this->commands(OneTimeOperationsProcessCommand::class); + $this->commands(OneTimeOperationShowCommand::class); - $this->publishes([ - __DIR__.'/../../config/one-time-operations.php' => config_path('one-time-operations.php'), - ], 'one-time-operations-config'); + $this->publishes([ + __DIR__.'/../../config/one-time-operations.php' => config_path('one-time-operations.php'), + ], 'one-time-operations-config'); - $this->publishes([ - __DIR__.'/../../database/migrations/2023_02_28_000000_create_one_time_operations_table.php' => database_path('migrations/'.date('Y_m_d_His', time()).'_create_one_time_operations_table.php'), - ], 'one-time-operations-migrations'); + $this->publishes([ + __DIR__.'/../../database/migrations/2023_02_28_000000_create_one_time_operations_table.php' => database_path('migrations/'.date('Y_m_d_His', time()).'_create_one_time_operations_table.php'), + ], 'one-time-operations-migrations'); - if (! $this->migrationFileExists()) { - $this->loadMigrationsFrom([__DIR__.'/../../database/migrations']); - } + if (! $this->migrationFileExists()) { + $this->loadMigrationsFrom([__DIR__.'/../../database/migrations']); } } From 50e15d52912a9ca2edfaf7ae5b1963aed4bc5007 Mon Sep 17 00:00:00 2001 From: Hosmel Quintana Date: Fri, 5 May 2023 09:33:38 -0600 Subject: [PATCH 08/10] fix --- src/Providers/OneTimeOperationsServiceProvider.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Providers/OneTimeOperationsServiceProvider.php b/src/Providers/OneTimeOperationsServiceProvider.php index cbaff2f..0a15da1 100644 --- a/src/Providers/OneTimeOperationsServiceProvider.php +++ b/src/Providers/OneTimeOperationsServiceProvider.php @@ -12,7 +12,7 @@ class OneTimeOperationsServiceProvider extends ServiceProvider { public function boot(): void { - if ($this->app->runningInConsole()) { + if (! $this->app->runningInConsole()) { return; } From 345c96f256db52e2fcddd631b46446a11eeb140c Mon Sep 17 00:00:00 2001 From: Hosmel Quintana Date: Fri, 5 May 2023 09:34:41 -0600 Subject: [PATCH 09/10] fix indentation --- src/Providers/OneTimeOperationsServiceProvider.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/Providers/OneTimeOperationsServiceProvider.php b/src/Providers/OneTimeOperationsServiceProvider.php index 0a15da1..f6f5544 100644 --- a/src/Providers/OneTimeOperationsServiceProvider.php +++ b/src/Providers/OneTimeOperationsServiceProvider.php @@ -15,18 +15,18 @@ public function boot(): void if (! $this->app->runningInConsole()) { return; } - + $this->commands(OneTimeOperationsMakeCommand::class); $this->commands(OneTimeOperationsProcessCommand::class); $this->commands(OneTimeOperationShowCommand::class); $this->publishes([ - __DIR__.'/../../config/one-time-operations.php' => config_path('one-time-operations.php'), - ], 'one-time-operations-config'); + __DIR__.'/../../config/one-time-operations.php' => config_path('one-time-operations.php'), + ], 'one-time-operations-config'); $this->publishes([ - __DIR__.'/../../database/migrations/2023_02_28_000000_create_one_time_operations_table.php' => database_path('migrations/'.date('Y_m_d_His', time()).'_create_one_time_operations_table.php'), - ], 'one-time-operations-migrations'); + __DIR__.'/../../database/migrations/2023_02_28_000000_create_one_time_operations_table.php' => database_path('migrations/'.date('Y_m_d_His', time()).'_create_one_time_operations_table.php'), + ], 'one-time-operations-migrations'); if (! $this->migrationFileExists()) { $this->loadMigrationsFrom([__DIR__.'/../../database/migrations']); From 92c465d387f487cac1ebe5d922731a08dac7294b Mon Sep 17 00:00:00 2001 From: Hosmel Quintana Date: Fri, 5 May 2023 09:36:09 -0600 Subject: [PATCH 10/10] fix indentation --- src/Providers/OneTimeOperationsServiceProvider.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/Providers/OneTimeOperationsServiceProvider.php b/src/Providers/OneTimeOperationsServiceProvider.php index f6f5544..7d57e5c 100644 --- a/src/Providers/OneTimeOperationsServiceProvider.php +++ b/src/Providers/OneTimeOperationsServiceProvider.php @@ -43,11 +43,11 @@ public function register() protected function migrationFileExists(): bool { $files = $this->app->make(Filesystem::class)->glob(sprintf( - '%s%s%s', - database_path('migrations'), - DIRECTORY_SEPARATOR, - '*_create_one_time_operations_table.php' - )); + '%s%s%s', + database_path('migrations'), + DIRECTORY_SEPARATOR, + '*_create_one_time_operations_table.php' + )); return count($files) > 0; }