chore: remove raw sql from env relationship

- raw sql should not be used whenever possible
- using sql to order on the relationship environment_variables() causes custom sorting to break or be additionally complicated
This commit is contained in:
peaklabs-dev 2026-01-06 16:18:37 +01:00
parent e9ef331def
commit 3af456cd35
No known key found for this signature in database
10 changed files with 10 additions and 90 deletions

View file

@ -845,15 +845,7 @@ public function detectPortFromEnvironment(?bool $isPreview = false): ?int
public function environment_variables()
{
return $this->morphMany(EnvironmentVariable::class, 'resourceable')
->where('is_preview', false)
->orderByRaw("
CASE
WHEN is_required = true THEN 1
WHEN LOWER(key) LIKE 'service_%' THEN 2
ELSE 3
END,
LOWER(key) ASC
");
->where('is_preview', false);
}
public function runtime_environment_variables()

View file

@ -1458,15 +1458,7 @@ public function scheduled_tasks(): HasMany
public function environment_variables()
{
return $this->morphMany(EnvironmentVariable::class, 'resourceable')
->orderByRaw("
CASE
WHEN is_required = true THEN 1
WHEN LOWER(key) LIKE 'service_%' THEN 2
ELSE 3
END,
LOWER(key) ASC
");
return $this->morphMany(EnvironmentVariable::class, 'resourceable');
}
public function workdir()

View file

@ -295,15 +295,7 @@ public function destination()
public function environment_variables()
{
return $this->morphMany(EnvironmentVariable::class, 'resourceable')
->orderByRaw("
CASE
WHEN LOWER(key) LIKE 'service_%' THEN 1
WHEN is_required = true AND (value IS NULL OR value = '') THEN 2
ELSE 3
END,
LOWER(key) ASC
");
return $this->morphMany(EnvironmentVariable::class, 'resourceable');
}
public function runtime_environment_variables()

View file

@ -324,14 +324,6 @@ public function isBackupSolutionAvailable()
public function environment_variables()
{
return $this->morphMany(EnvironmentVariable::class, 'resourceable')
->orderByRaw("
CASE
WHEN LOWER(key) LIKE 'service_%' THEN 1
WHEN is_required = true AND (value IS NULL OR value = '') THEN 2
ELSE 3
END,
LOWER(key) ASC
");
return $this->morphMany(EnvironmentVariable::class, 'resourceable');
}
}

View file

@ -324,14 +324,6 @@ public function isBackupSolutionAvailable()
public function environment_variables()
{
return $this->morphMany(EnvironmentVariable::class, 'resourceable')
->orderByRaw("
CASE
WHEN LOWER(key) LIKE 'service_%' THEN 1
WHEN is_required = true AND (value IS NULL OR value = '') THEN 2
ELSE 3
END,
LOWER(key) ASC
");
return $this->morphMany(EnvironmentVariable::class, 'resourceable');
}
}

View file

@ -289,15 +289,7 @@ public function destination(): MorphTo
public function environment_variables()
{
return $this->morphMany(EnvironmentVariable::class, 'resourceable')
->orderByRaw("
CASE
WHEN LOWER(key) LIKE 'service_%' THEN 1
WHEN is_required = true AND (value IS NULL OR value = '') THEN 2
ELSE 3
END,
LOWER(key) ASC
");
return $this->morphMany(EnvironmentVariable::class, 'resourceable');
}
public function runtime_environment_variables()

View file

@ -349,14 +349,6 @@ public function isBackupSolutionAvailable()
public function environment_variables()
{
return $this->morphMany(EnvironmentVariable::class, 'resourceable')
->orderByRaw("
CASE
WHEN LOWER(key) LIKE 'service_%' THEN 1
WHEN is_required = true AND (value IS NULL OR value = '') THEN 2
ELSE 3
END,
LOWER(key) ASC
");
return $this->morphMany(EnvironmentVariable::class, 'resourceable');
}
}

View file

@ -328,14 +328,6 @@ public function isBackupSolutionAvailable()
public function environment_variables()
{
return $this->morphMany(EnvironmentVariable::class, 'resourceable')
->orderByRaw("
CASE
WHEN LOWER(key) LIKE 'service_%' THEN 1
WHEN is_required = true AND (value IS NULL OR value = '') THEN 2
ELSE 3
END,
LOWER(key) ASC
");
return $this->morphMany(EnvironmentVariable::class, 'resourceable');
}
}

View file

@ -323,15 +323,7 @@ public function scheduledBackups()
public function environment_variables()
{
return $this->morphMany(EnvironmentVariable::class, 'resourceable')
->orderByRaw("
CASE
WHEN LOWER(key) LIKE 'service_%' THEN 1
WHEN is_required = true AND (value IS NULL OR value = '') THEN 2
ELSE 3
END,
LOWER(key) ASC
");
return $this->morphMany(EnvironmentVariable::class, 'resourceable');
}
public function isBackupSolutionAvailable()

View file

@ -374,14 +374,6 @@ public function redisUsername(): Attribute
public function environment_variables()
{
return $this->morphMany(EnvironmentVariable::class, 'resourceable')
->orderByRaw("
CASE
WHEN LOWER(key) LIKE 'service_%' THEN 1
WHEN is_required = true AND (value IS NULL OR value = '') THEN 2
ELSE 3
END,
LOWER(key) ASC
");
return $this->morphMany(EnvironmentVariable::class, 'resourceable');
}
}