diff --git a/app/Http/Controllers/ProjectController.php b/app/Http/Controllers/ProjectController.php
index d6cadf308..3641d3200 100644
--- a/app/Http/Controllers/ProjectController.php
+++ b/app/Http/Controllers/ProjectController.php
@@ -2,6 +2,8 @@
namespace App\Http\Controllers;
+use App\Models\Application;
+use App\Models\Environment;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
@@ -9,8 +11,7 @@ class ProjectController extends Controller
{
public function environments()
{
- $project_uuid = request()->route('project_uuid');
- $project = session('currentTeam')->projects->where('uuid', $project_uuid)->first();
+ $project = session('currentTeam')->projects->where('uuid', request()->route('project_uuid'))->first();
if (!$project) {
return redirect()->route('home');
}
@@ -18,94 +19,33 @@ class ProjectController extends Controller
}
public function resources()
{
- $project_uuid = request()->route('project_uuid');
- $project = session('currentTeam')->projects->where('uuid', $project_uuid)->first();
+ $project = session('currentTeam')->projects->where('uuid', request()->route('project_uuid'))->first();
if (!$project) {
return redirect()->route('home');
}
- $environment = $project->environments->where('name', request()->route('environment_name'))->first();
+ $environment = Environment::where('name', request()->route('environment_name'))->where('project_id', $project->id)->first();
+ // $environment = $project->environments->where('name', request()->route('environment_name'))->first();
return view('project.resources', ['project' => $project, 'environment' => $environment]);
}
public function application()
{
- $project_uuid = request()->route('project_uuid');
- $environment_name = request()->route('environment_name');
- $application_uuid = request()->route('application_uuid');
- $project = session('currentTeam')->projects->where('uuid', $project_uuid)->first();
- if (!$project) {
- return redirect()->route('home');
- }
- $environment = $project->environments->where('name', $environment_name)->first();
- if (!$environment) {
- return redirect()->route('home');
- }
- $application = $environment->applications->where('uuid', $application_uuid)->first();
+ $application = Application::where('uuid', request()->route('application_uuid'))->first();
if (!$application) {
return redirect()->route('home');
}
- return view('project.application', ['project' => $project, 'application' => $application, 'deployments' => $application->deployments()]);
+ return view('project.application', ['application' => $application, 'deployments' => $application->deployments()]);
}
- public function database()
- {
- $project_uuid = request()->route('project_uuid');
- $environment_name = request()->route('environment_name');
- $database_uuid = request()->route('database_uuid');
- $project = session('currentTeam')->projects->where('uuid', $project_uuid)->first();
- if (!$project) {
- return redirect()->route('home');
- }
- $environment = $project->environments->where('name', $environment_name)->first();
- if (!$environment) {
- return redirect()->route('home');
- }
- $database = $environment->databases->where('uuid', $database_uuid)->first();
- if (!$database) {
- return redirect()->route('home');
- }
- return view('project.database', ['project' => $project, 'database' => $database]);
- }
- public function service()
- {
- $project_uuid = request()->route('project_uuid');
- $environment_name = request()->route('environment_name');
- $service_uuid = request()->route('service_uuid');
-
- $project = session('currentTeam')->projects->where('uuid', $project_uuid)->first();
- if (!$project) {
- return redirect()->route('home');
- }
- $environment = $project->environments->where('name', $environment_name)->first();
- if (!$environment) {
- return redirect()->route('home');
- }
- $service = $environment->services->where('uuid', $service_uuid)->first();
- if (!$service) {
- return redirect()->route('home');
- }
-
- return view('project.service', ['project' => $project, 'service' => $service]);
- }
public function deployment()
{
- $project_uuid = request()->route('project_uuid');
- $environment_name = request()->route('environment_name');
$application_uuid = request()->route('application_uuid');
$deployment_uuid = request()->route('deployment_uuid');
- $project = session('currentTeam')->projects->where('uuid', $project_uuid)->first();
- if (!$project) {
- return redirect()->route('home');
- }
- $environment = $project->environments->where('name', $environment_name)->first();
- if (!$environment) {
- return redirect()->route('home');
- }
- $application = $environment->applications->where('uuid', $application_uuid)->first();
+ $application = Application::where('uuid', request()->route('application_uuid'))->first();
if (!$application) {
return redirect()->route('home');
}
$activity = $application->get_deployment($deployment_uuid);
- return view('project.deployment', ['project' => $project, 'activity' => $activity]);
+ return view('project.deployment', ['activity' => $activity]);
}
}
diff --git a/app/Http/Livewire/DeployApplication.php b/app/Http/Livewire/DeployApplication.php
index 9a5deb245..5891743c3 100644
--- a/app/Http/Livewire/DeployApplication.php
+++ b/app/Http/Livewire/DeployApplication.php
@@ -221,7 +221,7 @@ class DeployApplication extends Component
$this->execute_in_builder("docker build -f {$workdir}/Dockerfile --build-arg SOURCE_COMMIT=$(cat {$workdir}/.git-commit) --progress plain -t {$this->application->uuid}:$(cat {$workdir}/.git-commit) {$workdir}");
$this->command[] = "echo 'Done.'";
- // $this->execute_in_builder("test ! -z \"$(docker ps --format '{{.State}}' --filter 'name={$this->application->uuid}')\" && docker rm -f {$this->application->uuid} >/dev/null 2>&1");
+ $this->execute_in_builder("docker rm -f {$this->application->uuid} >/dev/null 2>&1");
$this->command[] = "echo -n 'Deploying... '";
diff --git a/app/Models/Project.php b/app/Models/Project.php
index 1b0a71049..0ebaf9d70 100644
--- a/app/Models/Project.php
+++ b/app/Models/Project.php
@@ -4,6 +4,7 @@ namespace App\Models;
class Project extends BaseModel
{
+ protected $with = ['settings', 'environments'];
protected static function booted()
{
static::created(function ($project) {
diff --git a/resources/views/project/deployment.blade.php b/resources/views/project/deployment.blade.php
index 4d58b00ac..c49e8112e 100644
--- a/resources/views/project/deployment.blade.php
+++ b/resources/views/project/deployment.blade.php
@@ -1,7 +1,4 @@
Name: {{ $project->name }} UUID: {{ $project->uuid }}Deployment
-
{{ $database->name }} @@ -21,6 +21,6 @@ {{ $service->name }}
- @endforeach + @endforeach --}}