forked from fa/breadcrumb-the-shire
refactor(cli)!: hard-cut legacy scripts and standardize console runtime
- remove legacy bin/module-*.php and bin/doctor.php entry scripts - move module/doctor execution into class-based runners under lib/Console - add stable JSON output for doctor and module:sync - introduce bin/dev for init/up/down/logs/console/qa workflow - update DI wiring, phpstan scan config, tests, and docs to new CLI contract
This commit is contained in:
82
lib/Console/Runner/Module/ModuleRunnerInterface.php
Normal file
82
lib/Console/Runner/Module/ModuleRunnerInterface.php
Normal file
@@ -0,0 +1,82 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace MintyPHP\Console\Runner\Module;
|
||||
|
||||
interface ModuleRunnerInterface
|
||||
{
|
||||
/**
|
||||
* @return array{command: string, status: string, exit_code: int, vendor_warnings_ignored: int, message: string}
|
||||
*/
|
||||
public function migrate(): array;
|
||||
|
||||
/**
|
||||
* @return array{
|
||||
* command: string,
|
||||
* status: string,
|
||||
* exit_code: int,
|
||||
* vendor_warnings_ignored: int,
|
||||
* created: int,
|
||||
* updated: int,
|
||||
* unchanged: int,
|
||||
* deactivated: int,
|
||||
* total: int,
|
||||
* message: string
|
||||
* }
|
||||
*/
|
||||
public function permissionsSync(): array;
|
||||
|
||||
/**
|
||||
* @return array{
|
||||
* command: string,
|
||||
* status: string,
|
||||
* exit_code: int,
|
||||
* vendor_warnings_ignored: int,
|
||||
* core_entries: int,
|
||||
* module_entries: int,
|
||||
* message: string
|
||||
* }
|
||||
*/
|
||||
public function build(): array;
|
||||
|
||||
/**
|
||||
* @return array{
|
||||
* command: string,
|
||||
* status: string,
|
||||
* exit_code: int,
|
||||
* vendor_warnings_ignored: int,
|
||||
* mode: string,
|
||||
* created: int,
|
||||
* updated: int,
|
||||
* removed: int,
|
||||
* unchanged: int,
|
||||
* message: string
|
||||
* }
|
||||
*/
|
||||
public function assetsSync(): array;
|
||||
|
||||
/**
|
||||
* @return array{
|
||||
* command: string,
|
||||
* status: string,
|
||||
* exit_code: int,
|
||||
* vendor_warnings_ignored: int,
|
||||
* message: string
|
||||
* }
|
||||
*/
|
||||
public function deactivate(string $moduleId, bool $confirm, bool $dryRun): array;
|
||||
|
||||
/**
|
||||
* @return array{
|
||||
* command: string,
|
||||
* status: string,
|
||||
* exit_code: int,
|
||||
* vendor_warnings_ignored_total: int,
|
||||
* duration_ms: int,
|
||||
* steps: array<string, array{status: string, exit_code: int, vendor_warnings_ignored: int}>,
|
||||
* message: string
|
||||
* }
|
||||
*/
|
||||
public function runtimeSync(): array;
|
||||
}
|
||||
Reference in New Issue
Block a user