fix: services view

This commit is contained in:
Andras Bacsai
2023-09-27 21:14:13 +02:00
parent 398f122593
commit fe8a7fc54f
6 changed files with 38 additions and 49 deletions

View File

@@ -73,7 +73,6 @@ class ProjectController extends Controller
if ($oneClickDotEnvs) {
$oneClickDotEnvs = Str::of(base64_decode($oneClickDotEnvs))->split('/\r\n|\r|\n/');
}
ray($oneClickDotEnvs);
if ($oneClickService) {
$service = Service::create([
'name' => "$oneClickServiceName-" . Str::random(10),
@@ -83,7 +82,7 @@ class ProjectController extends Controller
]);
$service->name = "$oneClickServiceName-" . $service->uuid;
$service->save();
if ($oneClickDotEnvs->count() > 0) {
if ($oneClickDotEnvs?->count() > 0) {
$oneClickDotEnvs->each(function ($value) use ($service) {
$key = Str::before($value, '=');
$value = Str::of(Str::after($value, '='));

View File

@@ -9,7 +9,6 @@ use Livewire\Component;
class Index extends Component
{
use WithRateLimiting;
public Service $service;
public $applications;
public $databases;
@@ -21,26 +20,22 @@ class Index extends Component
'service.name' => 'required',
'service.description' => 'nullable',
];
public function manualRefreshStack() {
try {
$this->rateLimit(5);
dispatch_sync(new ContainerStatusJob($this->service->server));
$this->refreshStack();
} catch(\Throwable $e) {
return handleError($e, $this);
}
public function checkStatus() {
dispatch_sync(new ContainerStatusJob($this->service->server));
$this->refreshStack();
}
public function refreshStack()
{
$this->applications = $this->service->applications->sort();
$this->applications->each(function ($application) {
$application->refresh();
$application->configuration_required = $application->configurationRequired();
});
$this->databases = $this->service->databases->sort();
$this->databases->each(function ($database) {
$database->refresh();
$database->configuration_required = $database->configurationRequired();
});
$this->emit('success', 'Stack refreshed successfully.');
}
public function mount()
{

View File

@@ -115,30 +115,30 @@ class Service extends BaseModel
}
return "{$server->ip}.sslip.io";
}
private function generateFqdn($serviceVariables, $serviceName, Collection $configuration)
{
// Add sslip.io to the service
$defaultUsableFqdn = null;
$sslip = $this->sslip($this->server);
if (Str::of($serviceVariables)->contains('SERVICE_FQDN') || Str::of($serviceVariables)->contains('SERVICE_URL')) {
$defaultUsableFqdn = "http://$serviceName-{$this->uuid}.{$sslip}";
}
if ($configuration->count() > 0) {
foreach ($configuration as $requiredFqdn) {
$requiredFqdn = (array)$requiredFqdn;
$name = data_get($requiredFqdn, 'name');
$path = data_get($requiredFqdn, 'path');
$customFqdn = data_get($requiredFqdn, 'customFqdn');
if ($serviceName === $name) {
$defaultUsableFqdn = "http://$serviceName-{$this->uuid}.{$sslip}{$path}";
if ($customFqdn) {
$defaultUsableFqdn = "http://$customFqdn-{$this->uuid}.{$sslip}{$path}";
}
}
}
}
return $defaultUsableFqdn ?? null;
}
// private function generateFqdn($serviceVariables, $serviceName, Collection $configuration)
// {
// // Add sslip.io to the service
// $defaultUsableFqdn = null;
// $sslip = $this->sslip($this->server);
// if (Str::of($serviceVariables)->contains('SERVICE_FQDN') || Str::of($serviceVariables)->contains('SERVICE_URL')) {
// $defaultUsableFqdn = "http://$serviceName-{$this->uuid}.{$sslip}";
// }
// if ($configuration->count() > 0) {
// foreach ($configuration as $requiredFqdn) {
// $requiredFqdn = (array)$requiredFqdn;
// $name = data_get($requiredFqdn, 'name');
// $path = data_get($requiredFqdn, 'path');
// $customFqdn = data_get($requiredFqdn, 'customFqdn');
// if ($serviceName === $name) {
// $defaultUsableFqdn = "http://$serviceName-{$this->uuid}.{$sslip}{$path}";
// if ($customFqdn) {
// $defaultUsableFqdn = "http://$customFqdn-{$this->uuid}.{$sslip}{$path}";
// }
// }
// }
// }
// return $defaultUsableFqdn ?? null;
// }
public function parse(bool $isNew = false): Collection
{
// ray()->clearAll();
@@ -376,14 +376,10 @@ class Service extends BaseModel
$generatedServiceFQDNS->put($key->value(), $fqdn);
}
} else {
ray($key, $fqdn);
$generatedServiceFQDNS->put($key->value(), $fqdn);
}
$fqdn = "http://$containerName.$sslip$path";
ray($fqdn);
}
if (!$isDatabase) {
$savedService->fqdn = $fqdn;
$savedService->save();