diff --git a/Dockerfile b/Dockerfile index 23f17eb..c800c33 100644 --- a/Dockerfile +++ b/Dockerfile @@ -13,6 +13,6 @@ RUN install-php-extensions \ COPY . /app -RUN composer install +RUN composer install --no-dev ENTRYPOINT ["php", "artisan", "octane:frankenphp"] diff --git a/app/Http/Controllers/Api/V1/SiteController.php b/app/Http/Controllers/Api/V1/SiteController.php index 2137562..d414114 100644 --- a/app/Http/Controllers/Api/V1/SiteController.php +++ b/app/Http/Controllers/Api/V1/SiteController.php @@ -3,6 +3,7 @@ namespace App\Http\Controllers\Api\V1; use App\Http\Controllers\Controller; +use App\Http\Requests\SiteRequest; use App\Http\Traits\ApiResponse; use App\Jobs\CheckSiteHealth; use App\Models\Site; @@ -11,7 +12,6 @@ use GuzzleHttp\Exception\ClientException; use GuzzleHttp\Exception\ServerException; use Illuminate\Http\JsonResponse; -use Illuminate\Http\Request; /** * Class SiteController @@ -23,20 +23,16 @@ class SiteController extends Controller use ApiResponse; /** - * @param Request $request + * @param SiteRequest $request * * @return JsonResponse * @throws \Exception */ - public function register(Request $request): JsonResponse + public function register(SiteRequest $request): JsonResponse { $url = $request->string('url'); $key = $request->string('key'); - if ($url->isEmpty() || $key->isEmpty()) { - return $this->error('BadRequest'); - } - $connectionService = new Connection($url, $key); // Do a health check @@ -66,19 +62,15 @@ public function register(Request $request): JsonResponse } /** - * @param Request $request + * @param SiteRequest $request * * @return JsonResponse */ - public function check(Request $request): JsonResponse + public function check(SiteRequest $request): JsonResponse { $url = $request->string('url'); $key = $request->string('key'); - if ($url->isEmpty() || $key->isEmpty()) { - return $this->error('BadRequest'); - } - $connectionService = new Connection($url, $key); // Do a health check @@ -94,19 +86,15 @@ public function check(Request $request): JsonResponse } /** - * @param Request $request + * @param SiteRequest $request * * @return JsonResponse */ - public function delete(Request $request): JsonResponse + public function delete(SiteRequest $request): JsonResponse { $url = $request->string('url'); $key = $request->string('key'); - if ($url->isEmpty() || $key->isEmpty()) { - return $this->error('BadRequest'); - } - try { Site::where('url', $url)->where('key', $key)->delete(); } catch (\Exception $e) { diff --git a/app/Http/Requests/SiteRequest.php b/app/Http/Requests/SiteRequest.php new file mode 100644 index 0000000..76c2b9a --- /dev/null +++ b/app/Http/Requests/SiteRequest.php @@ -0,0 +1,16 @@ + 'required|url', + 'key' => 'required|string|min:32|max:64', + ]; + } +}