diff --git a/.env b/.env index 6f533b6..e6825f4 100644 --- a/.env +++ b/.env @@ -43,9 +43,3 @@ DEFAULT_URI=http://localhost # DATABASE_URL="mysql://app:!ChangeMe!@127.0.0.1:3306/app?serverVersion=10.11.2-MariaDB&charset=utf8mb4" DATABASE_URL="postgresql://app:!ChangeMe!@127.0.0.1:5432/app?serverVersion=16&charset=utf8" ###< doctrine/doctrine-bundle ### - -###> malio/maintenance ### -SIRH_MAINTENANCE_PATH=/var/www/maintenance/sirh/maintenance.on -LESSTIME_MAINTENANCE_PATH=/var/www/maintenance/lesstime/maintenance.on -INVENTORY_MAINTENANCE_PATH=/var/www/maintenance/inventory/maintenance.on -###< malio/maintenance ### diff --git a/config/applications.yaml b/config/applications.yaml deleted file mode 100644 index 97abed8..0000000 --- a/config/applications.yaml +++ /dev/null @@ -1,5 +0,0 @@ -parameters: - app.managed_applications: - - { name: 'SIRH', slug: 'sirh', maintenance_path: '%env(SIRH_MAINTENANCE_PATH)%' } - - { name: 'Lesstime', slug: 'lesstime', maintenance_path: '%env(LESSTIME_MAINTENANCE_PATH)%' } - - { name: 'Inventory', slug: 'inventory', maintenance_path: '%env(INVENTORY_MAINTENANCE_PATH)%' } diff --git a/config/services.yaml b/config/services.yaml index 17985ab..fbcf601 100644 --- a/config/services.yaml +++ b/config/services.yaml @@ -4,7 +4,6 @@ parameters: imports: - { resource: version.yaml } - - { resource: applications.yaml } services: # default configuration for services in *this* file diff --git a/src/ApiResource/ManagedApplication.php b/src/ApiResource/ManagedApplication.php deleted file mode 100644 index 9f9d824..0000000 --- a/src/ApiResource/ManagedApplication.php +++ /dev/null @@ -1,51 +0,0 @@ - ['app:read']], - security: "is_granted('ROLE_ADMIN')", - provider: ManagedApplicationProvider::class, - ), - new Get( - uriTemplate: '/applications/{slug}', - normalizationContext: ['groups' => ['app:read']], - security: "is_granted('ROLE_ADMIN')", - provider: ManagedApplicationProvider::class, - ), - new Post( - uriTemplate: '/applications/{slug}/maintenance', - normalizationContext: ['groups' => ['app:read']], - denormalizationContext: ['groups' => ['app:write']], - security: "is_granted('ROLE_ADMIN')", - provider: ManagedApplicationProvider::class, - processor: MaintenanceToggleProcessor::class, - ), - ], -)] -final class ManagedApplication -{ - #[ApiProperty(identifier: true)] - #[Groups(['app:read'])] - public string $slug = ''; - - #[Groups(['app:read'])] - public string $name = ''; - - #[Groups(['app:read', 'app:write'])] - public bool $maintenance = false; -} diff --git a/src/State/ManagedApplicationProvider.php b/src/State/ManagedApplicationProvider.php deleted file mode 100644 index e4581c6..0000000 --- a/src/State/ManagedApplicationProvider.php +++ /dev/null @@ -1,56 +0,0 @@ - $managedApplications - */ - public function __construct( - #[Autowire('%app.managed_applications%')] - private array $managedApplications, - ) {} - - public function provide(Operation $operation, array $uriVariables = [], array $context = []): ManagedApplication|array - { - if ($operation instanceof GetCollection) { - return array_map( - fn (array $app) => $this->buildDto($app), - $this->managedApplications, - ); - } - - $slug = $uriVariables['slug'] ?? ''; - - foreach ($this->managedApplications as $app) { - if ($app['slug'] === $slug) { - return $this->buildDto($app); - } - } - - throw new NotFoundHttpException(sprintf('Application "%s" not found.', $slug)); - } - - /** - * @param array{name: string, slug: string, maintenance_path: string} $app - */ - private function buildDto(array $app): ManagedApplication - { - $dto = new ManagedApplication(); - $dto->slug = $app['slug']; - $dto->name = $app['name']; - $dto->maintenance = file_exists($app['maintenance_path']); - - return $dto; - } -}