diff --git a/app/Http/Livewire/Dev/Compose.php b/app/Http/Livewire/Dev/Compose.php new file mode 100644 index 000000000..d3a0ee4e5 --- /dev/null +++ b/app/Http/Livewire/Dev/Compose.php @@ -0,0 +1,28 @@ +services = getServiceTemplates(); + } + public function setService(string $selected) { + $this->base64 = data_get($this->services, $selected . '.compose'); + if ($this->base64) { + $this->compose = base64_decode($this->base64); + } + } + public function updatedCompose($value) { + $this->base64 = base64_encode($value); + } + public function render() + { + return view('livewire.dev.compose'); + } +} diff --git a/examples/docker-compose-appwrite.yaml b/examples/compose/docker-compose-appwrite.yaml similarity index 100% rename from examples/docker-compose-appwrite.yaml rename to examples/compose/docker-compose-appwrite.yaml diff --git a/examples/docker-compose-fider.yaml b/examples/compose/docker-compose-fider.yaml similarity index 100% rename from examples/docker-compose-fider.yaml rename to examples/compose/docker-compose-fider.yaml diff --git a/examples/docker-compose-ghost.yaml b/examples/compose/docker-compose-ghost.yaml similarity index 73% rename from examples/docker-compose-ghost.yaml rename to examples/compose/docker-compose-ghost.yaml index eb55f86f6..ee88bd974 100644 --- a/examples/docker-compose-ghost.yaml +++ b/examples/compose/docker-compose-ghost.yaml @@ -11,7 +11,8 @@ services: - database__connection__password=$SERVICE_PASSWORD_MYSQL - database__connection__database=${MYSQL_DATABASE-ghost} depends_on: - - mysql + mysql: + condition: service_healthy mysql: image: mysql:8.0 volumes: @@ -20,4 +21,9 @@ services: - MYSQL_USER=${SERVICE_USER_MYSQL} - MYSQL_PASSWORD=${SERVICE_PASSWORD_MYSQL} - MYSQL_DATABASE=${MYSQL_DATABASE} - - MYSQL_ROOT_PASSWORD=${SERVICE_PASSWORD_MYSQL_ROOT} + - MYSQL_ROOT_PASSWORD=${SERVICE_PASSWORD_MYSQLROOT} + healthcheck: + test: ["CMD", "mysqladmin", "ping", "-h", "localhost"] + interval: 5s + timeout: 5s + retries: 10 diff --git a/examples/docker-compose-plausible.yaml b/examples/compose/docker-compose-plausible.yaml similarity index 100% rename from examples/docker-compose-plausible.yaml rename to examples/compose/docker-compose-plausible.yaml diff --git a/examples/docker-compose-postgres.yaml b/examples/compose/docker-compose-postgres.yaml similarity index 100% rename from examples/docker-compose-postgres.yaml rename to examples/compose/docker-compose-postgres.yaml diff --git a/examples/docker-compose-uptime-kuma.yaml b/examples/compose/docker-compose-uptime-kuma.yaml similarity index 100% rename from examples/docker-compose-uptime-kuma.yaml rename to examples/compose/docker-compose-uptime-kuma.yaml diff --git a/examples/docker-compose-weird.yaml b/examples/compose/docker-compose-weird.yaml similarity index 100% rename from examples/docker-compose-weird.yaml rename to examples/compose/docker-compose-weird.yaml diff --git a/resources/views/livewire/dev/compose.blade.php b/resources/views/livewire/dev/compose.blade.php new file mode 100644 index 000000000..5d7ad1be1 --- /dev/null +++ b/resources/views/livewire/dev/compose.blade.php @@ -0,0 +1,13 @@ +
+

Compose

+
All kinds of compose files.
+

Services

+ @foreach ($services as $serviceName => $value) + {{ Str::headline($serviceName) }} + @endforeach +

Base64 En/Decode

+ Copy Base64 Compose +
+ +
+
diff --git a/routes/web.php b/routes/web.php index 8fe8bd1db..1ebbb46fd 100644 --- a/routes/web.php +++ b/routes/web.php @@ -9,6 +9,7 @@ use App\Http\Controllers\ServerController; use App\Http\Livewire\Boarding\Index as BoardingIndex; use App\Http\Livewire\Project\Service\Index as ServiceIndex; use App\Http\Livewire\Project\Service\Show as ServiceShow; +use App\Http\Livewire\Dev\Compose as Compose; use App\Http\Livewire\Dashboard; use App\Http\Livewire\Project\Shared\Logs; use App\Http\Livewire\Server\All; @@ -29,6 +30,9 @@ use Laravel\Fortify\Contracts\FailedPasswordResetLinkRequestResponse; use Laravel\Fortify\Contracts\SuccessfulPasswordResetLinkRequestResponse; use Laravel\Fortify\Fortify; +if (isDev()) { + Route::get('/dev/compose', Compose::class)->name('dev.compose'); +} Route::post('/forgot-password', function (Request $request) { if (is_transactional_emails_active()) { $arrayOfRequest = $request->only(Fortify::email()); @@ -94,7 +98,6 @@ Route::middleware(['auth'])->group(function () { Route::get('/project/{project_uuid}/{environment_name}/service/{service_uuid}', ServiceIndex::class)->name('project.service'); Route::get('/project/{project_uuid}/{environment_name}/service/{service_uuid}/{service_name}', ServiceShow::class)->name('project.service.show'); Route::get('/project/{project_uuid}/{environment_name}/service/{service_uuid}/{service_name}/logs', Logs::class)->name('project.service.logs'); - }); Route::middleware(['auth'])->group(function () {