move into sonardesk

This commit is contained in:
Mark Gregory
2026-10-12 14:50:13 +01:00
parent 5f0d2ceb72
commit 38b4a7406f
879 changed files with 24021 additions and 1 deletions
@@ -0,0 +1,36 @@
<?php
namespace Modules\CloudDevOps\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\HasMany;
final class DeploymentEnvironment extends Model
{
protected $guarded = [];
protected function casts(): array
{
return ['variables' => 'encrypted:array', 'is_protected' => 'boolean'];
}
public function targets(): HasMany
{
return $this->hasMany(DeploymentTarget::class, 'environment_id');
}
public function pipelines(): HasMany
{
return $this->hasMany(DeploymentPipeline::class, 'environment_id');
}
public function releases(): HasMany
{
return $this->hasMany(DeploymentRelease::class, 'environment_id');
}
public function healthChecks(): HasMany
{
return $this->hasMany(DeploymentHealthCheck::class, 'environment_id');
}
}
@@ -0,0 +1,15 @@
<?php
namespace Modules\CloudDevOps\Models;
use Illuminate\Database\Eloquent\Model;
final class DeploymentHealthCheck extends Model
{
protected $guarded = [];
protected function casts(): array
{
return ['checked_at' => 'datetime'];
}
}
+15
View File
@@ -0,0 +1,15 @@
<?php
namespace Modules\CloudDevOps\Models;
use Illuminate\Database\Eloquent\Model;
final class DeploymentPipeline extends Model
{
protected $guarded = [];
protected function casts(): array
{
return ['steps' => 'array', 'requires_approval' => 'boolean', 'is_active' => 'boolean'];
}
}
+27
View File
@@ -0,0 +1,27 @@
<?php
namespace Modules\CloudDevOps\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasMany;
final class DeploymentRelease extends Model
{
protected $guarded = [];
protected function casts(): array
{
return ['metadata' => 'array', 'started_at' => 'datetime', 'completed_at' => 'datetime'];
}
public function environment(): BelongsTo
{
return $this->belongsTo(DeploymentEnvironment::class, 'environment_id');
}
public function steps(): HasMany
{
return $this->hasMany(DeploymentStep::class, 'release_id')->orderBy('position');
}
}
+10
View File
@@ -0,0 +1,10 @@
<?php
namespace Modules\CloudDevOps\Models;
use Illuminate\Database\Eloquent\Model;
final class DeploymentRollback extends Model
{
protected $guarded = [];
}
+15
View File
@@ -0,0 +1,15 @@
<?php
namespace Modules\CloudDevOps\Models;
use Illuminate\Database\Eloquent\Model;
final class DeploymentSecret extends Model
{
protected $guarded = [];
protected function casts(): array
{
return ['rotated_at' => 'datetime'];
}
}
+15
View File
@@ -0,0 +1,15 @@
<?php
namespace Modules\CloudDevOps\Models;
use Illuminate\Database\Eloquent\Model;
final class DeploymentStep extends Model
{
protected $guarded = [];
protected function casts(): array
{
return ['started_at' => 'datetime', 'completed_at' => 'datetime'];
}
}
+15
View File
@@ -0,0 +1,15 @@
<?php
namespace Modules\CloudDevOps\Models;
use Illuminate\Database\Eloquent\Model;
final class DeploymentTarget extends Model
{
protected $guarded = [];
protected function casts(): array
{
return ['configuration' => 'encrypted:array', 'is_active' => 'boolean'];
}
}