new uuid routes
This commit is contained in:
@@ -5,6 +5,7 @@ namespace App\Livewire\Project;
|
|||||||
use App\Models\Project;
|
use App\Models\Project;
|
||||||
use Livewire\Attributes\Validate;
|
use Livewire\Attributes\Validate;
|
||||||
use Livewire\Component;
|
use Livewire\Component;
|
||||||
|
use Visus\Cuid2\Cuid2;
|
||||||
|
|
||||||
class AddEmpty extends Component
|
class AddEmpty extends Component
|
||||||
{
|
{
|
||||||
@@ -22,6 +23,7 @@ class AddEmpty extends Component
|
|||||||
'name' => $this->name,
|
'name' => $this->name,
|
||||||
'description' => $this->description,
|
'description' => $this->description,
|
||||||
'team_id' => currentTeam()->id,
|
'team_id' => currentTeam()->id,
|
||||||
|
'uuid' => (string) new Cuid2,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
return redirect()->route('project.show', $project->uuid);
|
return redirect()->route('project.show', $project->uuid);
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ class Configuration extends Component
|
|||||||
if (! $project) {
|
if (! $project) {
|
||||||
return redirect()->route('dashboard');
|
return redirect()->route('dashboard');
|
||||||
}
|
}
|
||||||
$environment = $project->load(['environments'])->environments->where('name', request()->route('environment_name'))->first()->load(['applications']);
|
$environment = $project->load(['environments'])->environments->where('uuid', request()->route('environment_uuid'))->first()->load(['applications']);
|
||||||
if (! $environment) {
|
if (! $environment) {
|
||||||
return redirect()->route('dashboard');
|
return redirect()->route('dashboard');
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ class Index extends Component
|
|||||||
if (! $project) {
|
if (! $project) {
|
||||||
return redirect()->route('dashboard');
|
return redirect()->route('dashboard');
|
||||||
}
|
}
|
||||||
$environment = $project->load(['environments'])->environments->where('name', request()->route('environment_name'))->first()->load(['applications']);
|
$environment = $project->load(['environments'])->environments->where('uuid', request()->route('environment_uuid'))->first()->load(['applications']);
|
||||||
if (! $environment) {
|
if (! $environment) {
|
||||||
return redirect()->route('dashboard');
|
return redirect()->route('dashboard');
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -171,7 +171,7 @@ class Previews extends Component
|
|||||||
'project_uuid' => $this->parameters['project_uuid'],
|
'project_uuid' => $this->parameters['project_uuid'],
|
||||||
'application_uuid' => $this->parameters['application_uuid'],
|
'application_uuid' => $this->parameters['application_uuid'],
|
||||||
'deployment_uuid' => $this->deployment_uuid,
|
'deployment_uuid' => $this->deployment_uuid,
|
||||||
'environment_name' => $this->parameters['environment_name'],
|
'environment_uuid' => $this->parameters['environment_uuid'],
|
||||||
]);
|
]);
|
||||||
} catch (\Throwable $e) {
|
} catch (\Throwable $e) {
|
||||||
return handleError($e, $this);
|
return handleError($e, $this);
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ class Rollback extends Component
|
|||||||
'project_uuid' => $this->parameters['project_uuid'],
|
'project_uuid' => $this->parameters['project_uuid'],
|
||||||
'application_uuid' => $this->parameters['application_uuid'],
|
'application_uuid' => $this->parameters['application_uuid'],
|
||||||
'deployment_uuid' => $deployment_uuid,
|
'deployment_uuid' => $deployment_uuid,
|
||||||
'environment_name' => $this->parameters['environment_name'],
|
'environment_uuid' => $this->parameters['environment_uuid'],
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ class CloneMe extends Component
|
|||||||
{
|
{
|
||||||
public string $project_uuid;
|
public string $project_uuid;
|
||||||
|
|
||||||
public string $environment_name;
|
public string $environment_uuid;
|
||||||
|
|
||||||
public int $project_id;
|
public int $project_id;
|
||||||
|
|
||||||
@@ -44,7 +44,7 @@ class CloneMe extends Component
|
|||||||
{
|
{
|
||||||
$this->project_uuid = $project_uuid;
|
$this->project_uuid = $project_uuid;
|
||||||
$this->project = Project::where('uuid', $project_uuid)->firstOrFail();
|
$this->project = Project::where('uuid', $project_uuid)->firstOrFail();
|
||||||
$this->environment = $this->project->environments->where('name', $this->environment_name)->first();
|
$this->environment = $this->project->environments->where('uuid', $this->environment_uuid)->first();
|
||||||
$this->project_id = $this->project->id;
|
$this->project_id = $this->project->id;
|
||||||
$this->servers = currentTeam()->servers;
|
$this->servers = currentTeam()->servers;
|
||||||
$this->newName = str($this->project->name.'-clone-'.(string) new Cuid2)->slug();
|
$this->newName = str($this->project->name.'-clone-'.(string) new Cuid2)->slug();
|
||||||
@@ -89,6 +89,7 @@ class CloneMe extends Component
|
|||||||
if ($this->environment->name !== 'production') {
|
if ($this->environment->name !== 'production') {
|
||||||
$project->environments()->create([
|
$project->environments()->create([
|
||||||
'name' => $this->environment->name,
|
'name' => $this->environment->name,
|
||||||
|
'uuid' => (string) new Cuid2,
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
$environment = $project->environments->where('name', $this->environment->name)->first();
|
$environment = $project->environments->where('name', $this->environment->name)->first();
|
||||||
@@ -100,6 +101,7 @@ class CloneMe extends Component
|
|||||||
$project = $this->project;
|
$project = $this->project;
|
||||||
$environment = $this->project->environments()->create([
|
$environment = $this->project->environments()->create([
|
||||||
'name' => $this->newName,
|
'name' => $this->newName,
|
||||||
|
'uuid' => (string) new Cuid2,
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
$applications = $this->environment->applications;
|
$applications = $this->environment->applications;
|
||||||
@@ -183,7 +185,7 @@ class CloneMe extends Component
|
|||||||
|
|
||||||
return redirect()->route('project.resource.index', [
|
return redirect()->route('project.resource.index', [
|
||||||
'project_uuid' => $project->uuid,
|
'project_uuid' => $project->uuid,
|
||||||
'environment_name' => $environment->name,
|
'environment_uuid' => $environment->uuid,
|
||||||
]);
|
]);
|
||||||
} catch (\Exception $e) {
|
} catch (\Exception $e) {
|
||||||
return handleError($e, $this);
|
return handleError($e, $this);
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ class Execution extends Component
|
|||||||
if (! $project) {
|
if (! $project) {
|
||||||
return redirect()->route('dashboard');
|
return redirect()->route('dashboard');
|
||||||
}
|
}
|
||||||
$environment = $project->load(['environments'])->environments->where('name', request()->route('environment_name'))->first()->load(['applications']);
|
$environment = $project->load(['environments'])->environments->where('uuid', request()->route('environment_uuid'))->first()->load(['applications']);
|
||||||
if (! $environment) {
|
if (! $environment) {
|
||||||
return redirect()->route('dashboard');
|
return redirect()->route('dashboard');
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ class Index extends Component
|
|||||||
if (! $project) {
|
if (! $project) {
|
||||||
return redirect()->route('dashboard');
|
return redirect()->route('dashboard');
|
||||||
}
|
}
|
||||||
$environment = $project->load(['environments'])->environments->where('name', request()->route('environment_name'))->first()->load(['applications']);
|
$environment = $project->load(['environments'])->environments->where('uuid', request()->route('environment_uuid'))->first()->load(['applications']);
|
||||||
if (! $environment) {
|
if (! $environment) {
|
||||||
return redirect()->route('dashboard');
|
return redirect()->route('dashboard');
|
||||||
}
|
}
|
||||||
@@ -31,7 +31,7 @@ class Index extends Component
|
|||||||
) {
|
) {
|
||||||
return redirect()->route('project.database.configuration', [
|
return redirect()->route('project.database.configuration', [
|
||||||
'project_uuid' => $project->uuid,
|
'project_uuid' => $project->uuid,
|
||||||
'environment_name' => $environment->name,
|
'environment_uuid' => $environment->uuid,
|
||||||
'database_uuid' => $database->uuid,
|
'database_uuid' => $database->uuid,
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ class Configuration extends Component
|
|||||||
if (! $project) {
|
if (! $project) {
|
||||||
return redirect()->route('dashboard');
|
return redirect()->route('dashboard');
|
||||||
}
|
}
|
||||||
$environment = $project->load(['environments'])->environments->where('name', request()->route('environment_name'))->first()->load(['applications']);
|
$environment = $project->load(['environments'])->environments->where('uuid', request()->route('environment_uuid'))->first()->load(['applications']);
|
||||||
if (! $environment) {
|
if (! $environment) {
|
||||||
return redirect()->route('dashboard');
|
return redirect()->route('dashboard');
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,11 +23,11 @@ class EnvironmentEdit extends Component
|
|||||||
#[Validate(['nullable', 'string', 'max:255'])]
|
#[Validate(['nullable', 'string', 'max:255'])]
|
||||||
public ?string $description = null;
|
public ?string $description = null;
|
||||||
|
|
||||||
public function mount(string $project_uuid, string $environment_name)
|
public function mount(string $project_uuid, string $environment_uuid)
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
$this->project = Project::ownedByCurrentTeam()->where('uuid', $project_uuid)->firstOrFail();
|
$this->project = Project::ownedByCurrentTeam()->where('uuid', $project_uuid)->firstOrFail();
|
||||||
$this->environment = $this->project->environments()->where('name', $environment_name)->firstOrFail();
|
$this->environment = $this->project->environments()->where('uuid', $environment_uuid)->firstOrFail();
|
||||||
$this->syncData();
|
$this->syncData();
|
||||||
} catch (\Throwable $e) {
|
} catch (\Throwable $e) {
|
||||||
return handleError($e, $this);
|
return handleError($e, $this);
|
||||||
@@ -52,7 +52,10 @@ class EnvironmentEdit extends Component
|
|||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
$this->syncData(true);
|
$this->syncData(true);
|
||||||
$this->redirectRoute('project.environment.edit', ['environment_name' => $this->environment->name, 'project_uuid' => $this->project->uuid]);
|
$this->redirectRoute('project.environment.edit', [
|
||||||
|
'environment_uuid' => $this->environment->uuid,
|
||||||
|
'project_uuid' => $this->project->uuid,
|
||||||
|
]);
|
||||||
} catch (\Throwable $e) {
|
} catch (\Throwable $e) {
|
||||||
return handleError($e, $this);
|
return handleError($e, $this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ class DockerCompose extends Component
|
|||||||
}
|
}
|
||||||
|
|
||||||
$project = Project::where('uuid', $this->parameters['project_uuid'])->first();
|
$project = Project::where('uuid', $this->parameters['project_uuid'])->first();
|
||||||
$environment = $project->load(['environments'])->environments->where('name', $this->parameters['environment_name'])->first();
|
$environment = $project->load(['environments'])->environments->where('uuid', $this->parameters['environment_uuid'])->first();
|
||||||
|
|
||||||
$destination_uuid = $this->query['destination'];
|
$destination_uuid = $this->query['destination'];
|
||||||
$destination = StandaloneDocker::where('uuid', $destination_uuid)->first();
|
$destination = StandaloneDocker::where('uuid', $destination_uuid)->first();
|
||||||
@@ -96,7 +96,7 @@ class DockerCompose extends Component
|
|||||||
|
|
||||||
return redirect()->route('project.service.configuration', [
|
return redirect()->route('project.service.configuration', [
|
||||||
'service_uuid' => $service->uuid,
|
'service_uuid' => $service->uuid,
|
||||||
'environment_name' => $environment->name,
|
'environment_uuid' => $environment->uuid,
|
||||||
'project_uuid' => $project->uuid,
|
'project_uuid' => $project->uuid,
|
||||||
]);
|
]);
|
||||||
} catch (\Throwable $e) {
|
} catch (\Throwable $e) {
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ class DockerImage extends Component
|
|||||||
$destination_class = $destination->getMorphClass();
|
$destination_class = $destination->getMorphClass();
|
||||||
|
|
||||||
$project = Project::where('uuid', $this->parameters['project_uuid'])->first();
|
$project = Project::where('uuid', $this->parameters['project_uuid'])->first();
|
||||||
$environment = $project->load(['environments'])->environments->where('name', $this->parameters['environment_name'])->first();
|
$environment = $project->load(['environments'])->environments->where('uuid', $this->parameters['environment_uuid'])->first();
|
||||||
$application = Application::create([
|
$application = Application::create([
|
||||||
'name' => 'docker-image-'.new Cuid2,
|
'name' => 'docker-image-'.new Cuid2,
|
||||||
'repository_project_id' => 0,
|
'repository_project_id' => 0,
|
||||||
@@ -69,7 +69,7 @@ class DockerImage extends Component
|
|||||||
|
|
||||||
return redirect()->route('project.application.configuration', [
|
return redirect()->route('project.application.configuration', [
|
||||||
'application_uuid' => $application->uuid,
|
'application_uuid' => $application->uuid,
|
||||||
'environment_name' => $environment->name,
|
'environment_uuid' => $environment->uuid,
|
||||||
'project_uuid' => $project->uuid,
|
'project_uuid' => $project->uuid,
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ namespace App\Livewire\Project\New;
|
|||||||
|
|
||||||
use App\Models\Project;
|
use App\Models\Project;
|
||||||
use Livewire\Component;
|
use Livewire\Component;
|
||||||
|
use Visus\Cuid2\Cuid2;
|
||||||
|
|
||||||
class EmptyProject extends Component
|
class EmptyProject extends Component
|
||||||
{
|
{
|
||||||
@@ -12,8 +13,9 @@ class EmptyProject extends Component
|
|||||||
$project = Project::create([
|
$project = Project::create([
|
||||||
'name' => generate_random_name(),
|
'name' => generate_random_name(),
|
||||||
'team_id' => currentTeam()->id,
|
'team_id' => currentTeam()->id,
|
||||||
|
'uuid' => (string) new Cuid2,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
return redirect()->route('project.show', ['project_uuid' => $project->uuid, 'environment_name' => 'production']);
|
return redirect()->route('project.show', ['project_uuid' => $project->uuid, 'environment_uuid' => $project->environments->first()->uuid]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -177,7 +177,7 @@ class GithubPrivateRepository extends Component
|
|||||||
$destination_class = $destination->getMorphClass();
|
$destination_class = $destination->getMorphClass();
|
||||||
|
|
||||||
$project = Project::where('uuid', $this->parameters['project_uuid'])->first();
|
$project = Project::where('uuid', $this->parameters['project_uuid'])->first();
|
||||||
$environment = $project->load(['environments'])->environments->where('name', $this->parameters['environment_name'])->first();
|
$environment = $project->load(['environments'])->environments->where('uuid', $this->parameters['environment_uuid'])->first();
|
||||||
|
|
||||||
$application = Application::create([
|
$application = Application::create([
|
||||||
'name' => generate_application_name($this->selected_repository_owner.'/'.$this->selected_repository_repo, $this->selected_branch_name),
|
'name' => generate_application_name($this->selected_repository_owner.'/'.$this->selected_repository_repo, $this->selected_branch_name),
|
||||||
@@ -211,7 +211,7 @@ class GithubPrivateRepository extends Component
|
|||||||
|
|
||||||
return redirect()->route('project.application.configuration', [
|
return redirect()->route('project.application.configuration', [
|
||||||
'application_uuid' => $application->uuid,
|
'application_uuid' => $application->uuid,
|
||||||
'environment_name' => $environment->name,
|
'environment_uuid' => $environment->uuid,
|
||||||
'project_uuid' => $project->uuid,
|
'project_uuid' => $project->uuid,
|
||||||
]);
|
]);
|
||||||
} catch (\Throwable $e) {
|
} catch (\Throwable $e) {
|
||||||
|
|||||||
@@ -136,7 +136,7 @@ class GithubPrivateRepositoryDeployKey extends Component
|
|||||||
$this->get_git_source();
|
$this->get_git_source();
|
||||||
|
|
||||||
$project = Project::where('uuid', $this->parameters['project_uuid'])->first();
|
$project = Project::where('uuid', $this->parameters['project_uuid'])->first();
|
||||||
$environment = $project->load(['environments'])->environments->where('name', $this->parameters['environment_name'])->first();
|
$environment = $project->load(['environments'])->environments->where('uuid', $this->parameters['environment_uuid'])->first();
|
||||||
if ($this->git_source === 'other') {
|
if ($this->git_source === 'other') {
|
||||||
$application_init = [
|
$application_init = [
|
||||||
'name' => generate_random_name(),
|
'name' => generate_random_name(),
|
||||||
@@ -184,7 +184,7 @@ class GithubPrivateRepositoryDeployKey extends Component
|
|||||||
|
|
||||||
return redirect()->route('project.application.configuration', [
|
return redirect()->route('project.application.configuration', [
|
||||||
'application_uuid' => $application->uuid,
|
'application_uuid' => $application->uuid,
|
||||||
'environment_name' => $environment->name,
|
'environment_uuid' => $environment->uuid,
|
||||||
'project_uuid' => $project->uuid,
|
'project_uuid' => $project->uuid,
|
||||||
]);
|
]);
|
||||||
} catch (\Throwable $e) {
|
} catch (\Throwable $e) {
|
||||||
|
|||||||
@@ -225,7 +225,7 @@ class PublicGitRepository extends Component
|
|||||||
$this->validate();
|
$this->validate();
|
||||||
$destination_uuid = $this->query['destination'];
|
$destination_uuid = $this->query['destination'];
|
||||||
$project_uuid = $this->parameters['project_uuid'];
|
$project_uuid = $this->parameters['project_uuid'];
|
||||||
$environment_name = $this->parameters['environment_name'];
|
$environment_uuid = $this->parameters['environment_uuid'];
|
||||||
|
|
||||||
$destination = StandaloneDocker::where('uuid', $destination_uuid)->first();
|
$destination = StandaloneDocker::where('uuid', $destination_uuid)->first();
|
||||||
if (! $destination) {
|
if (! $destination) {
|
||||||
@@ -237,7 +237,7 @@ class PublicGitRepository extends Component
|
|||||||
$destination_class = $destination->getMorphClass();
|
$destination_class = $destination->getMorphClass();
|
||||||
|
|
||||||
$project = Project::where('uuid', $project_uuid)->first();
|
$project = Project::where('uuid', $project_uuid)->first();
|
||||||
$environment = $project->load(['environments'])->environments->where('name', $environment_name)->first();
|
$environment = $project->load(['environments'])->environments->where('uuid', $environment_uuid)->first();
|
||||||
|
|
||||||
if ($this->build_pack === 'dockercompose' && isDev() && $this->new_compose_services) {
|
if ($this->build_pack === 'dockercompose' && isDev() && $this->new_compose_services) {
|
||||||
$server = $destination->server;
|
$server = $destination->server;
|
||||||
@@ -260,7 +260,7 @@ class PublicGitRepository extends Component
|
|||||||
|
|
||||||
return redirect()->route('project.service.configuration', [
|
return redirect()->route('project.service.configuration', [
|
||||||
'service_uuid' => $service->uuid,
|
'service_uuid' => $service->uuid,
|
||||||
'environment_name' => $environment->name,
|
'environment_uuid' => $environment->uuid,
|
||||||
'project_uuid' => $project->uuid,
|
'project_uuid' => $project->uuid,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
@@ -319,7 +319,7 @@ class PublicGitRepository extends Component
|
|||||||
|
|
||||||
return redirect()->route('project.application.configuration', [
|
return redirect()->route('project.application.configuration', [
|
||||||
'application_uuid' => $application->uuid,
|
'application_uuid' => $application->uuid,
|
||||||
'environment_name' => $environment->name,
|
'environment_uuid' => $environment->uuid,
|
||||||
'project_uuid' => $project->uuid,
|
'project_uuid' => $project->uuid,
|
||||||
]);
|
]);
|
||||||
} catch (\Throwable $e) {
|
} catch (\Throwable $e) {
|
||||||
|
|||||||
@@ -61,7 +61,7 @@ class Select extends Component
|
|||||||
}
|
}
|
||||||
$projectUuid = data_get($this->parameters, 'project_uuid');
|
$projectUuid = data_get($this->parameters, 'project_uuid');
|
||||||
$this->environments = Project::whereUuid($projectUuid)->first()->environments;
|
$this->environments = Project::whereUuid($projectUuid)->first()->environments;
|
||||||
$this->selectedEnvironment = data_get($this->parameters, 'environment_name');
|
$this->selectedEnvironment = data_get($this->parameters, 'environment_uuid');
|
||||||
}
|
}
|
||||||
|
|
||||||
public function render()
|
public function render()
|
||||||
@@ -73,20 +73,10 @@ class Select extends Component
|
|||||||
{
|
{
|
||||||
return redirect()->route('project.resource.create', [
|
return redirect()->route('project.resource.create', [
|
||||||
'project_uuid' => $this->parameters['project_uuid'],
|
'project_uuid' => $this->parameters['project_uuid'],
|
||||||
'environment_name' => $this->selectedEnvironment,
|
'environment_uuid' => $this->selectedEnvironment,
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
// public function addExistingPostgresql()
|
|
||||||
// {
|
|
||||||
// try {
|
|
||||||
// instantCommand("psql {$this->existingPostgresqlUrl} -c 'SELECT 1'");
|
|
||||||
// $this->dispatch('success', 'Successfully connected to the database.');
|
|
||||||
// } catch (\Throwable $e) {
|
|
||||||
// return handleError($e, $this);
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
|
|
||||||
public function loadServices()
|
public function loadServices()
|
||||||
{
|
{
|
||||||
$services = get_service_templates(true);
|
$services = get_service_templates(true);
|
||||||
@@ -304,7 +294,7 @@ class Select extends Component
|
|||||||
|
|
||||||
return redirect()->route('project.resource.create', [
|
return redirect()->route('project.resource.create', [
|
||||||
'project_uuid' => $this->parameters['project_uuid'],
|
'project_uuid' => $this->parameters['project_uuid'],
|
||||||
'environment_name' => $this->parameters['environment_name'],
|
'environment_uuid' => $this->parameters['environment_uuid'],
|
||||||
'type' => $this->type,
|
'type' => $this->type,
|
||||||
'destination' => $this->destination_uuid,
|
'destination' => $this->destination_uuid,
|
||||||
'server_id' => $this->server_id,
|
'server_id' => $this->server_id,
|
||||||
@@ -319,7 +309,7 @@ class Select extends Component
|
|||||||
} else {
|
} else {
|
||||||
return redirect()->route('project.resource.create', [
|
return redirect()->route('project.resource.create', [
|
||||||
'project_uuid' => $this->parameters['project_uuid'],
|
'project_uuid' => $this->parameters['project_uuid'],
|
||||||
'environment_name' => $this->parameters['environment_name'],
|
'environment_uuid' => $this->parameters['environment_uuid'],
|
||||||
'type' => $this->type,
|
'type' => $this->type,
|
||||||
'destination' => $this->destination_uuid,
|
'destination' => $this->destination_uuid,
|
||||||
'server_id' => $this->server_id,
|
'server_id' => $this->server_id,
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ CMD ["nginx", "-g", "daemon off;"]
|
|||||||
$destination_class = $destination->getMorphClass();
|
$destination_class = $destination->getMorphClass();
|
||||||
|
|
||||||
$project = Project::where('uuid', $this->parameters['project_uuid'])->first();
|
$project = Project::where('uuid', $this->parameters['project_uuid'])->first();
|
||||||
$environment = $project->load(['environments'])->environments->where('name', $this->parameters['environment_name'])->first();
|
$environment = $project->load(['environments'])->environments->where('uuid', $this->parameters['environment_uuid'])->first();
|
||||||
|
|
||||||
$port = get_port_from_dockerfile($this->dockerfile);
|
$port = get_port_from_dockerfile($this->dockerfile);
|
||||||
if (! $port) {
|
if (! $port) {
|
||||||
@@ -78,7 +78,7 @@ CMD ["nginx", "-g", "daemon off;"]
|
|||||||
|
|
||||||
return redirect()->route('project.application.configuration', [
|
return redirect()->route('project.application.configuration', [
|
||||||
'application_uuid' => $application->uuid,
|
'application_uuid' => $application->uuid,
|
||||||
'environment_name' => $environment->name,
|
'environment_uuid' => $environment->uuid,
|
||||||
'project_uuid' => $project->uuid,
|
'project_uuid' => $project->uuid,
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ class Create extends Component
|
|||||||
return redirect()->route('dashboard');
|
return redirect()->route('dashboard');
|
||||||
}
|
}
|
||||||
$this->project = $project;
|
$this->project = $project;
|
||||||
$environment = $project->load(['environments'])->environments->where('name', request()->route('environment_name'))->first();
|
$environment = $project->load(['environments'])->environments->where('uuid', request()->route('environment_uuid'))->first();
|
||||||
if (! $environment) {
|
if (! $environment) {
|
||||||
return redirect()->route('dashboard');
|
return redirect()->route('dashboard');
|
||||||
}
|
}
|
||||||
@@ -57,7 +57,7 @@ class Create extends Component
|
|||||||
|
|
||||||
return redirect()->route('project.database.configuration', [
|
return redirect()->route('project.database.configuration', [
|
||||||
'project_uuid' => $project->uuid,
|
'project_uuid' => $project->uuid,
|
||||||
'environment_name' => $environment->name,
|
'environment_uuid' => $environment->uuid,
|
||||||
'database_uuid' => $database->uuid,
|
'database_uuid' => $database->uuid,
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
@@ -106,7 +106,7 @@ class Create extends Component
|
|||||||
|
|
||||||
return redirect()->route('project.service.configuration', [
|
return redirect()->route('project.service.configuration', [
|
||||||
'service_uuid' => $service->uuid,
|
'service_uuid' => $service->uuid,
|
||||||
'environment_name' => $environment->name,
|
'environment_uuid' => $environment->uuid,
|
||||||
'project_uuid' => $project->uuid,
|
'project_uuid' => $project->uuid,
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ class Index extends Component
|
|||||||
if (! $project) {
|
if (! $project) {
|
||||||
return redirect()->route('dashboard');
|
return redirect()->route('dashboard');
|
||||||
}
|
}
|
||||||
$environment = $project->load(['environments'])->environments->where('name', request()->route('environment_name'))->first();
|
$environment = $project->load(['environments'])->environments->where('uuid', request()->route('environment_uuid'))->first();
|
||||||
if (! $environment) {
|
if (! $environment) {
|
||||||
return redirect()->route('dashboard');
|
return redirect()->route('dashboard');
|
||||||
}
|
}
|
||||||
@@ -52,7 +52,7 @@ class Index extends Component
|
|||||||
if (data_get($application, 'environment.project.uuid')) {
|
if (data_get($application, 'environment.project.uuid')) {
|
||||||
$application->hrefLink = route('project.application.configuration', [
|
$application->hrefLink = route('project.application.configuration', [
|
||||||
'project_uuid' => data_get($application, 'environment.project.uuid'),
|
'project_uuid' => data_get($application, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($application, 'environment.name'),
|
'environment_uuid' => data_get($application, 'environment.uuid'),
|
||||||
'application_uuid' => data_get($application, 'uuid'),
|
'application_uuid' => data_get($application, 'uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
@@ -64,7 +64,7 @@ class Index extends Component
|
|||||||
if (data_get($postgresql, 'environment.project.uuid')) {
|
if (data_get($postgresql, 'environment.project.uuid')) {
|
||||||
$postgresql->hrefLink = route('project.database.configuration', [
|
$postgresql->hrefLink = route('project.database.configuration', [
|
||||||
'project_uuid' => data_get($postgresql, 'environment.project.uuid'),
|
'project_uuid' => data_get($postgresql, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($postgresql, 'environment.name'),
|
'environment_uuid' => data_get($postgresql, 'environment.uuid'),
|
||||||
'database_uuid' => data_get($postgresql, 'uuid'),
|
'database_uuid' => data_get($postgresql, 'uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
@@ -76,7 +76,7 @@ class Index extends Component
|
|||||||
if (data_get($redis, 'environment.project.uuid')) {
|
if (data_get($redis, 'environment.project.uuid')) {
|
||||||
$redis->hrefLink = route('project.database.configuration', [
|
$redis->hrefLink = route('project.database.configuration', [
|
||||||
'project_uuid' => data_get($redis, 'environment.project.uuid'),
|
'project_uuid' => data_get($redis, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($redis, 'environment.name'),
|
'environment_uuid' => data_get($redis, 'environment.uuid'),
|
||||||
'database_uuid' => data_get($redis, 'uuid'),
|
'database_uuid' => data_get($redis, 'uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
@@ -88,7 +88,7 @@ class Index extends Component
|
|||||||
if (data_get($mongodb, 'environment.project.uuid')) {
|
if (data_get($mongodb, 'environment.project.uuid')) {
|
||||||
$mongodb->hrefLink = route('project.database.configuration', [
|
$mongodb->hrefLink = route('project.database.configuration', [
|
||||||
'project_uuid' => data_get($mongodb, 'environment.project.uuid'),
|
'project_uuid' => data_get($mongodb, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($mongodb, 'environment.name'),
|
'environment_uuid' => data_get($mongodb, 'environment.uuid'),
|
||||||
'database_uuid' => data_get($mongodb, 'uuid'),
|
'database_uuid' => data_get($mongodb, 'uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
@@ -100,7 +100,7 @@ class Index extends Component
|
|||||||
if (data_get($mysql, 'environment.project.uuid')) {
|
if (data_get($mysql, 'environment.project.uuid')) {
|
||||||
$mysql->hrefLink = route('project.database.configuration', [
|
$mysql->hrefLink = route('project.database.configuration', [
|
||||||
'project_uuid' => data_get($mysql, 'environment.project.uuid'),
|
'project_uuid' => data_get($mysql, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($mysql, 'environment.name'),
|
'environment_uuid' => data_get($mysql, 'environment.uuid'),
|
||||||
'database_uuid' => data_get($mysql, 'uuid'),
|
'database_uuid' => data_get($mysql, 'uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
@@ -112,7 +112,7 @@ class Index extends Component
|
|||||||
if (data_get($mariadb, 'environment.project.uuid')) {
|
if (data_get($mariadb, 'environment.project.uuid')) {
|
||||||
$mariadb->hrefLink = route('project.database.configuration', [
|
$mariadb->hrefLink = route('project.database.configuration', [
|
||||||
'project_uuid' => data_get($mariadb, 'environment.project.uuid'),
|
'project_uuid' => data_get($mariadb, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($mariadb, 'environment.name'),
|
'environment_uuid' => data_get($mariadb, 'environment.uuid'),
|
||||||
'database_uuid' => data_get($mariadb, 'uuid'),
|
'database_uuid' => data_get($mariadb, 'uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
@@ -124,7 +124,7 @@ class Index extends Component
|
|||||||
if (data_get($keydb, 'environment.project.uuid')) {
|
if (data_get($keydb, 'environment.project.uuid')) {
|
||||||
$keydb->hrefLink = route('project.database.configuration', [
|
$keydb->hrefLink = route('project.database.configuration', [
|
||||||
'project_uuid' => data_get($keydb, 'environment.project.uuid'),
|
'project_uuid' => data_get($keydb, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($keydb, 'environment.name'),
|
'environment_uuid' => data_get($keydb, 'environment.uuid'),
|
||||||
'database_uuid' => data_get($keydb, 'uuid'),
|
'database_uuid' => data_get($keydb, 'uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
@@ -136,7 +136,7 @@ class Index extends Component
|
|||||||
if (data_get($dragonfly, 'environment.project.uuid')) {
|
if (data_get($dragonfly, 'environment.project.uuid')) {
|
||||||
$dragonfly->hrefLink = route('project.database.configuration', [
|
$dragonfly->hrefLink = route('project.database.configuration', [
|
||||||
'project_uuid' => data_get($dragonfly, 'environment.project.uuid'),
|
'project_uuid' => data_get($dragonfly, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($dragonfly, 'environment.name'),
|
'environment_uuid' => data_get($dragonfly, 'environment.uuid'),
|
||||||
'database_uuid' => data_get($dragonfly, 'uuid'),
|
'database_uuid' => data_get($dragonfly, 'uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
@@ -148,7 +148,7 @@ class Index extends Component
|
|||||||
if (data_get($clickhouse, 'environment.project.uuid')) {
|
if (data_get($clickhouse, 'environment.project.uuid')) {
|
||||||
$clickhouse->hrefLink = route('project.database.configuration', [
|
$clickhouse->hrefLink = route('project.database.configuration', [
|
||||||
'project_uuid' => data_get($clickhouse, 'environment.project.uuid'),
|
'project_uuid' => data_get($clickhouse, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($clickhouse, 'environment.name'),
|
'environment_uuid' => data_get($clickhouse, 'environment.uuid'),
|
||||||
'database_uuid' => data_get($clickhouse, 'uuid'),
|
'database_uuid' => data_get($clickhouse, 'uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
@@ -160,7 +160,7 @@ class Index extends Component
|
|||||||
if (data_get($service, 'environment.project.uuid')) {
|
if (data_get($service, 'environment.project.uuid')) {
|
||||||
$service->hrefLink = route('project.service.configuration', [
|
$service->hrefLink = route('project.service.configuration', [
|
||||||
'project_uuid' => data_get($service, 'environment.project.uuid'),
|
'project_uuid' => data_get($service, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($service, 'environment.name'),
|
'environment_uuid' => data_get($service, 'environment.uuid'),
|
||||||
'service_uuid' => data_get($service, 'uuid'),
|
'service_uuid' => data_get($service, 'uuid'),
|
||||||
]);
|
]);
|
||||||
$service->status = $service->status();
|
$service->status = $service->status();
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ class Danger extends Component
|
|||||||
|
|
||||||
public $projectUuid;
|
public $projectUuid;
|
||||||
|
|
||||||
public $environmentName;
|
public $environmentUuid;
|
||||||
|
|
||||||
public bool $delete_configurations = true;
|
public bool $delete_configurations = true;
|
||||||
|
|
||||||
@@ -39,7 +39,7 @@ class Danger extends Component
|
|||||||
$parameters = get_route_parameters();
|
$parameters = get_route_parameters();
|
||||||
$this->modalId = new Cuid2;
|
$this->modalId = new Cuid2;
|
||||||
$this->projectUuid = data_get($parameters, 'project_uuid');
|
$this->projectUuid = data_get($parameters, 'project_uuid');
|
||||||
$this->environmentName = data_get($parameters, 'environment_name');
|
$this->environmentUuid = data_get($parameters, 'environment_uuid');
|
||||||
|
|
||||||
if ($this->resource === null) {
|
if ($this->resource === null) {
|
||||||
if (isset($parameters['service_uuid'])) {
|
if (isset($parameters['service_uuid'])) {
|
||||||
@@ -107,7 +107,7 @@ class Danger extends Component
|
|||||||
|
|
||||||
return redirect()->route('project.resource.index', [
|
return redirect()->route('project.resource.index', [
|
||||||
'project_uuid' => $this->projectUuid,
|
'project_uuid' => $this->projectUuid,
|
||||||
'environment_name' => $this->environmentName,
|
'environment_uuid' => $this->environmentUuid,
|
||||||
]);
|
]);
|
||||||
} catch (\Throwable $e) {
|
} catch (\Throwable $e) {
|
||||||
return handleError($e, $this);
|
return handleError($e, $this);
|
||||||
|
|||||||
@@ -85,7 +85,7 @@ class Destination extends Component
|
|||||||
'project_uuid' => data_get($this->resource, 'environment.project.uuid'),
|
'project_uuid' => data_get($this->resource, 'environment.project.uuid'),
|
||||||
'application_uuid' => data_get($this->resource, 'uuid'),
|
'application_uuid' => data_get($this->resource, 'uuid'),
|
||||||
'deployment_uuid' => $deployment_uuid,
|
'deployment_uuid' => $deployment_uuid,
|
||||||
'environment_name' => data_get($this->resource, 'environment.name'),
|
'environment_uuid' => data_get($this->resource, 'environment.uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ class ResourceOperations extends Component
|
|||||||
|
|
||||||
public $projectUuid;
|
public $projectUuid;
|
||||||
|
|
||||||
public $environmentName;
|
public $environmentUuid;
|
||||||
|
|
||||||
public $projects;
|
public $projects;
|
||||||
|
|
||||||
@@ -25,7 +25,7 @@ class ResourceOperations extends Component
|
|||||||
{
|
{
|
||||||
$parameters = get_route_parameters();
|
$parameters = get_route_parameters();
|
||||||
$this->projectUuid = data_get($parameters, 'project_uuid');
|
$this->projectUuid = data_get($parameters, 'project_uuid');
|
||||||
$this->environmentName = data_get($parameters, 'environment_name');
|
$this->environmentUuid = data_get($parameters, 'environment_uuid');
|
||||||
$this->projects = Project::ownedByCurrentTeam()->get();
|
$this->projects = Project::ownedByCurrentTeam()->get();
|
||||||
$this->servers = currentTeam()->servers;
|
$this->servers = currentTeam()->servers;
|
||||||
}
|
}
|
||||||
@@ -72,7 +72,7 @@ class ResourceOperations extends Component
|
|||||||
}
|
}
|
||||||
$route = route('project.application.configuration', [
|
$route = route('project.application.configuration', [
|
||||||
'project_uuid' => $this->projectUuid,
|
'project_uuid' => $this->projectUuid,
|
||||||
'environment_name' => $this->environmentName,
|
'environment_uuid' => $this->environmentUuid,
|
||||||
'application_uuid' => $new_resource->uuid,
|
'application_uuid' => $new_resource->uuid,
|
||||||
]).'#resource-operations';
|
]).'#resource-operations';
|
||||||
|
|
||||||
@@ -115,7 +115,7 @@ class ResourceOperations extends Component
|
|||||||
}
|
}
|
||||||
$route = route('project.database.configuration', [
|
$route = route('project.database.configuration', [
|
||||||
'project_uuid' => $this->projectUuid,
|
'project_uuid' => $this->projectUuid,
|
||||||
'environment_name' => $this->environmentName,
|
'environment_uuid' => $this->environmentUuid,
|
||||||
'database_uuid' => $new_resource->uuid,
|
'database_uuid' => $new_resource->uuid,
|
||||||
]).'#resource-operations';
|
]).'#resource-operations';
|
||||||
|
|
||||||
@@ -141,7 +141,7 @@ class ResourceOperations extends Component
|
|||||||
$new_resource->parse();
|
$new_resource->parse();
|
||||||
$route = route('project.service.configuration', [
|
$route = route('project.service.configuration', [
|
||||||
'project_uuid' => $this->projectUuid,
|
'project_uuid' => $this->projectUuid,
|
||||||
'environment_name' => $this->environmentName,
|
'environment_uuid' => $this->environmentUuid,
|
||||||
'service_uuid' => $new_resource->uuid,
|
'service_uuid' => $new_resource->uuid,
|
||||||
]).'#resource-operations';
|
]).'#resource-operations';
|
||||||
|
|
||||||
@@ -159,7 +159,7 @@ class ResourceOperations extends Component
|
|||||||
if ($this->resource->type() === 'application') {
|
if ($this->resource->type() === 'application') {
|
||||||
$route = route('project.application.configuration', [
|
$route = route('project.application.configuration', [
|
||||||
'project_uuid' => $new_environment->project->uuid,
|
'project_uuid' => $new_environment->project->uuid,
|
||||||
'environment_name' => $new_environment->name,
|
'environment_uuid' => $new_environment->uuid,
|
||||||
'application_uuid' => $this->resource->uuid,
|
'application_uuid' => $this->resource->uuid,
|
||||||
]).'#resource-operations';
|
]).'#resource-operations';
|
||||||
|
|
||||||
@@ -167,7 +167,7 @@ class ResourceOperations extends Component
|
|||||||
} elseif (str($this->resource->type())->startsWith('standalone-')) {
|
} elseif (str($this->resource->type())->startsWith('standalone-')) {
|
||||||
$route = route('project.database.configuration', [
|
$route = route('project.database.configuration', [
|
||||||
'project_uuid' => $new_environment->project->uuid,
|
'project_uuid' => $new_environment->project->uuid,
|
||||||
'environment_name' => $new_environment->name,
|
'environment_uuid' => $new_environment->uuid,
|
||||||
'database_uuid' => $this->resource->uuid,
|
'database_uuid' => $this->resource->uuid,
|
||||||
]).'#resource-operations';
|
]).'#resource-operations';
|
||||||
|
|
||||||
@@ -175,7 +175,7 @@ class ResourceOperations extends Component
|
|||||||
} elseif ($this->resource->type() === 'service') {
|
} elseif ($this->resource->type() === 'service') {
|
||||||
$route = route('project.service.configuration', [
|
$route = route('project.service.configuration', [
|
||||||
'project_uuid' => $new_environment->project->uuid,
|
'project_uuid' => $new_environment->project->uuid,
|
||||||
'environment_name' => $new_environment->name,
|
'environment_uuid' => $new_environment->uuid,
|
||||||
'service_uuid' => $this->resource->uuid,
|
'service_uuid' => $this->resource->uuid,
|
||||||
]).'#resource-operations';
|
]).'#resource-operations';
|
||||||
|
|
||||||
|
|||||||
@@ -42,8 +42,8 @@ class Show extends Component
|
|||||||
public function mount()
|
public function mount()
|
||||||
{
|
{
|
||||||
$this->parameters = get_route_parameters();
|
$this->parameters = get_route_parameters();
|
||||||
$this->project = Project::ownedByCurrentTeam()->where('uuid', request()->route('project_uuid'))->first();
|
$this->project = Project::ownedByCurrentTeam()->where('uuid', request()->route('project_uuid'))->firstOrFail();
|
||||||
$this->environment = $this->project->environments()->where('name', request()->route('environment_name'))->first();
|
$this->environment = $this->project->environments()->where('uuid', request()->route('environment_uuid'))->firstOrFail();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function render()
|
public function render()
|
||||||
|
|||||||
@@ -116,14 +116,14 @@ class Change extends Component
|
|||||||
} else {
|
} else {
|
||||||
$parameters = data_get(session('from'), 'parameters');
|
$parameters = data_get(session('from'), 'parameters');
|
||||||
$back = data_get(session('from'), 'back');
|
$back = data_get(session('from'), 'back');
|
||||||
$environment_name = data_get($parameters, 'environment_name');
|
$environment_uuid = data_get($parameters, 'environment_uuid');
|
||||||
$project_uuid = data_get($parameters, 'project_uuid');
|
$project_uuid = data_get($parameters, 'project_uuid');
|
||||||
$type = data_get($parameters, 'type');
|
$type = data_get($parameters, 'type');
|
||||||
$destination = data_get($parameters, 'destination');
|
$destination = data_get($parameters, 'destination');
|
||||||
session()->forget('from');
|
session()->forget('from');
|
||||||
|
|
||||||
return redirect()->route($back, [
|
return redirect()->route($back, [
|
||||||
'environment_name' => $environment_name,
|
'environment_uuid' => $environment_uuid,
|
||||||
'project_uuid' => $project_uuid,
|
'project_uuid' => $project_uuid,
|
||||||
'type' => $type,
|
'type' => $type,
|
||||||
'destination' => $destination,
|
'destination' => $destination,
|
||||||
|
|||||||
@@ -318,7 +318,7 @@ class Application extends BaseModel
|
|||||||
if (data_get($this, 'environment.project.uuid')) {
|
if (data_get($this, 'environment.project.uuid')) {
|
||||||
return route('project.application.configuration', [
|
return route('project.application.configuration', [
|
||||||
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($this, 'environment.name'),
|
'environment_uuid' => data_get($this, 'environment.uuid'),
|
||||||
'application_uuid' => data_get($this, 'uuid'),
|
'application_uuid' => data_get($this, 'uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
@@ -331,7 +331,7 @@ class Application extends BaseModel
|
|||||||
if (data_get($this, 'environment.project.uuid')) {
|
if (data_get($this, 'environment.project.uuid')) {
|
||||||
$route = route('project.application.scheduled-tasks', [
|
$route = route('project.application.scheduled-tasks', [
|
||||||
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($this, 'environment.name'),
|
'environment_uuid' => data_get($this, 'environment.uuid'),
|
||||||
'application_uuid' => data_get($this, 'uuid'),
|
'application_uuid' => data_get($this, 'uuid'),
|
||||||
'task_uuid' => $task_uuid,
|
'task_uuid' => $task_uuid,
|
||||||
]);
|
]);
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
namespace App\Models;
|
namespace App\Models;
|
||||||
|
|
||||||
use OpenApi\Attributes as OA;
|
use OpenApi\Attributes as OA;
|
||||||
|
use Visus\Cuid2\Cuid2;
|
||||||
|
|
||||||
#[OA\Schema(
|
#[OA\Schema(
|
||||||
description: 'Project model',
|
description: 'Project model',
|
||||||
@@ -24,8 +25,6 @@ class Project extends BaseModel
|
|||||||
{
|
{
|
||||||
protected $guarded = [];
|
protected $guarded = [];
|
||||||
|
|
||||||
protected $appends = ['default_environment'];
|
|
||||||
|
|
||||||
public static function ownedByCurrentTeam()
|
public static function ownedByCurrentTeam()
|
||||||
{
|
{
|
||||||
return Project::whereTeamId(currentTeam()->id)->orderByRaw('LOWER(name)');
|
return Project::whereTeamId(currentTeam()->id)->orderByRaw('LOWER(name)');
|
||||||
@@ -40,6 +39,7 @@ class Project extends BaseModel
|
|||||||
Environment::create([
|
Environment::create([
|
||||||
'name' => 'production',
|
'name' => 'production',
|
||||||
'project_id' => $project->id,
|
'project_id' => $project->id,
|
||||||
|
'uuid' => (string) new Cuid2,
|
||||||
]);
|
]);
|
||||||
});
|
});
|
||||||
static::deleting(function ($project) {
|
static::deleting(function ($project) {
|
||||||
@@ -140,18 +140,4 @@ class Project extends BaseModel
|
|||||||
{
|
{
|
||||||
return $this->postgresqls()->get()->merge($this->redis()->get())->merge($this->mongodbs()->get())->merge($this->mysqls()->get())->merge($this->mariadbs()->get())->merge($this->keydbs()->get())->merge($this->dragonflies()->get())->merge($this->clickhouses()->get());
|
return $this->postgresqls()->get()->merge($this->redis()->get())->merge($this->mongodbs()->get())->merge($this->mysqls()->get())->merge($this->mariadbs()->get())->merge($this->keydbs()->get())->merge($this->dragonflies()->get())->merge($this->clickhouses()->get());
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getDefaultEnvironmentAttribute()
|
|
||||||
{
|
|
||||||
$default = $this->environments()->where('name', 'production')->first();
|
|
||||||
if ($default) {
|
|
||||||
return $default->name;
|
|
||||||
}
|
|
||||||
$default = $this->environments()->get();
|
|
||||||
if ($default->count() > 0) {
|
|
||||||
return $default->sortBy('created_at')->first()->name;
|
|
||||||
}
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1132,7 +1132,7 @@ class Service extends BaseModel
|
|||||||
if (data_get($this, 'environment.project.uuid')) {
|
if (data_get($this, 'environment.project.uuid')) {
|
||||||
return route('project.service.configuration', [
|
return route('project.service.configuration', [
|
||||||
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($this, 'environment.name'),
|
'environment_uuid' => data_get($this, 'environment.uuid'),
|
||||||
'service_uuid' => data_get($this, 'uuid'),
|
'service_uuid' => data_get($this, 'uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
@@ -1145,7 +1145,7 @@ class Service extends BaseModel
|
|||||||
if (data_get($this, 'environment.project.uuid')) {
|
if (data_get($this, 'environment.project.uuid')) {
|
||||||
$route = route('project.service.scheduled-tasks', [
|
$route = route('project.service.scheduled-tasks', [
|
||||||
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($this, 'environment.name'),
|
'environment_uuid' => data_get($this, 'environment.uuid'),
|
||||||
'service_uuid' => data_get($this, 'uuid'),
|
'service_uuid' => data_get($this, 'uuid'),
|
||||||
'task_uuid' => $task_uuid,
|
'task_uuid' => $task_uuid,
|
||||||
]);
|
]);
|
||||||
|
|||||||
@@ -169,7 +169,7 @@ class StandaloneClickhouse extends BaseModel
|
|||||||
if (data_get($this, 'environment.project.uuid')) {
|
if (data_get($this, 'environment.project.uuid')) {
|
||||||
return route('project.database.configuration', [
|
return route('project.database.configuration', [
|
||||||
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($this, 'environment.name'),
|
'environment_uuid' => data_get($this, 'environment.uuid'),
|
||||||
'database_uuid' => data_get($this, 'uuid'),
|
'database_uuid' => data_get($this, 'uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -174,7 +174,7 @@ class StandaloneDragonfly extends BaseModel
|
|||||||
if (data_get($this, 'environment.project.uuid')) {
|
if (data_get($this, 'environment.project.uuid')) {
|
||||||
return route('project.database.configuration', [
|
return route('project.database.configuration', [
|
||||||
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($this, 'environment.name'),
|
'environment_uuid' => data_get($this, 'environment.uuid'),
|
||||||
'database_uuid' => data_get($this, 'uuid'),
|
'database_uuid' => data_get($this, 'uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -174,7 +174,7 @@ class StandaloneKeydb extends BaseModel
|
|||||||
if (data_get($this, 'environment.project.uuid')) {
|
if (data_get($this, 'environment.project.uuid')) {
|
||||||
return route('project.database.configuration', [
|
return route('project.database.configuration', [
|
||||||
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($this, 'environment.name'),
|
'environment_uuid' => data_get($this, 'environment.uuid'),
|
||||||
'database_uuid' => data_get($this, 'uuid'),
|
'database_uuid' => data_get($this, 'uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -174,7 +174,7 @@ class StandaloneMariadb extends BaseModel
|
|||||||
if (data_get($this, 'environment.project.uuid')) {
|
if (data_get($this, 'environment.project.uuid')) {
|
||||||
return route('project.database.configuration', [
|
return route('project.database.configuration', [
|
||||||
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($this, 'environment.name'),
|
'environment_uuid' => data_get($this, 'environment.uuid'),
|
||||||
'database_uuid' => data_get($this, 'uuid'),
|
'database_uuid' => data_get($this, 'uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -183,7 +183,7 @@ class StandaloneMongodb extends BaseModel
|
|||||||
if (data_get($this, 'environment.project.uuid')) {
|
if (data_get($this, 'environment.project.uuid')) {
|
||||||
return route('project.database.configuration', [
|
return route('project.database.configuration', [
|
||||||
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($this, 'environment.name'),
|
'environment_uuid' => data_get($this, 'environment.uuid'),
|
||||||
'database_uuid' => data_get($this, 'uuid'),
|
'database_uuid' => data_get($this, 'uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -175,7 +175,7 @@ class StandaloneMysql extends BaseModel
|
|||||||
if (data_get($this, 'environment.project.uuid')) {
|
if (data_get($this, 'environment.project.uuid')) {
|
||||||
return route('project.database.configuration', [
|
return route('project.database.configuration', [
|
||||||
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($this, 'environment.name'),
|
'environment_uuid' => data_get($this, 'environment.uuid'),
|
||||||
'database_uuid' => data_get($this, 'uuid'),
|
'database_uuid' => data_get($this, 'uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -170,7 +170,7 @@ class StandalonePostgresql extends BaseModel
|
|||||||
if (data_get($this, 'environment.project.uuid')) {
|
if (data_get($this, 'environment.project.uuid')) {
|
||||||
return route('project.database.configuration', [
|
return route('project.database.configuration', [
|
||||||
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($this, 'environment.name'),
|
'environment_uuid' => data_get($this, 'environment.uuid'),
|
||||||
'database_uuid' => data_get($this, 'uuid'),
|
'database_uuid' => data_get($this, 'uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -170,7 +170,7 @@ class StandaloneRedis extends BaseModel
|
|||||||
if (data_get($this, 'environment.project.uuid')) {
|
if (data_get($this, 'environment.project.uuid')) {
|
||||||
return route('project.database.configuration', [
|
return route('project.database.configuration', [
|
||||||
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
'project_uuid' => data_get($this, 'environment.project.uuid'),
|
||||||
'environment_name' => data_get($this, 'environment.name'),
|
'environment_uuid' => data_get($this, 'environment.uuid'),
|
||||||
'database_uuid' => data_get($this, 'uuid'),
|
'database_uuid' => data_get($this, 'uuid'),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,7 +21,9 @@
|
|||||||
<li>
|
<li>
|
||||||
<div class="flex items-center">
|
<div class="flex items-center">
|
||||||
<a class="text-xs truncate lg:text-sm"
|
<a class="text-xs truncate lg:text-sm"
|
||||||
href="{{ route('project.resource.index', ['environment_name' => $this->parameters['environment_name'], 'project_uuid' => $this->parameters['project_uuid']]) }}">{{ $this->parameters['environment_name'] }}</a>
|
href="{{ route('project.resource.index', ['environment_uuid' => $this->parameters['environment_uuid'], 'project_uuid' => $this->parameters['project_uuid']]) }}">
|
||||||
|
{{ data_get($resource, 'environment.name', $this->parameters['environment_uuid']) }}
|
||||||
|
</a>
|
||||||
<svg aria-hidden="true" class="w-4 h-4 mx-1 font-bold dark:text-warning" fill="currentColor"
|
<svg aria-hidden="true" class="w-4 h-4 mx-1 font-bold dark:text-warning" fill="currentColor"
|
||||||
viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
||||||
<path fill-rule="evenodd"
|
<path fill-rule="evenodd"
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
<li>
|
<li>
|
||||||
<div class="flex items-center">
|
<div class="flex items-center">
|
||||||
<a class="text-xs truncate lg:text-sm"
|
<a class="text-xs truncate lg:text-sm"
|
||||||
href="{{ route('project.resource.index', ['environment_name' => $environment->name, 'project_uuid' => $project->uuid]) }}">
|
href="{{ route('project.resource.index', ['environment_uuid' => $environment->uuid, 'project_uuid' => $project->uuid]) }}">
|
||||||
{{ $environment->name }}
|
{{ $environment->name }}
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -7,15 +7,15 @@
|
|||||||
<h1>Resources</h1>
|
<h1>Resources</h1>
|
||||||
@if ($environment->isEmpty())
|
@if ($environment->isEmpty())
|
||||||
<a class="button"
|
<a class="button"
|
||||||
href="{{ route('project.clone-me', ['project_uuid' => data_get($project, 'uuid'), 'environment_name' => data_get($parameters, 'environment_name')]) }}">
|
href="{{ route('project.clone-me', ['project_uuid' => data_get($project, 'uuid'), 'environment_uuid' => data_get($environment, 'uuid')]) }}">
|
||||||
Clone
|
Clone
|
||||||
</a>
|
</a>
|
||||||
@else
|
@else
|
||||||
<a href="{{ route('project.resource.create', ['project_uuid' => data_get($parameters, 'project_uuid'), 'environment_name' => data_get($parameters, 'environment_name')]) }} "
|
<a href="{{ route('project.resource.create', ['project_uuid' => data_get($parameters, 'project_uuid'), 'environment_uuid' => data_get($environment, 'uuid')]) }}"
|
||||||
class="button">+
|
class="button">+
|
||||||
New</a>
|
New</a>
|
||||||
<a class="button"
|
<a class="button"
|
||||||
href="{{ route('project.clone-me', ['project_uuid' => data_get($project, 'uuid'), 'environment_name' => data_get($parameters, 'environment_name')]) }}">
|
href="{{ route('project.clone-me', ['project_uuid' => data_get($project, 'uuid'), 'environment_uuid' => data_get($environment, 'uuid')]) }}">
|
||||||
Clone
|
Clone
|
||||||
</a>
|
</a>
|
||||||
@endif
|
@endif
|
||||||
@@ -44,7 +44,7 @@
|
|||||||
</nav>
|
</nav>
|
||||||
</div>
|
</div>
|
||||||
@if ($environment->isEmpty())
|
@if ($environment->isEmpty())
|
||||||
<a href="{{ route('project.resource.create', ['project_uuid' => data_get($parameters, 'project_uuid'), 'environment_name' => data_get($parameters, 'environment_name')]) }} "
|
<a href="{{ route('project.resource.create', ['project_uuid' => data_get($parameters, 'project_uuid'), 'environment_uuid' => data_get($environment, 'uuid')]) }}"
|
||||||
class="items-center justify-center box">+ Add New Resource</a>
|
class="items-center justify-center box">+ Add New Resource</a>
|
||||||
@else
|
@else
|
||||||
<div x-data="searchComponent()">
|
<div x-data="searchComponent()">
|
||||||
|
|||||||
Reference in New Issue
Block a user