$commit_data * @property string $status * @property Site $site * @property DeploymentScript $deploymentScript * @property ?ServerLog $log */ class Deployment extends AbstractModel { /** @use HasFactory<\Database\Factories\DeploymentFactory> */ use HasFactory; protected $fillable = [ 'site_id', 'deployment_script_id', 'log_id', 'commit_id', 'commit_data', 'status', ]; protected $casts = [ 'site_id' => 'integer', 'deployment_script_id' => 'integer', 'log_id' => 'integer', 'commit_data' => 'json', ]; /** * @var array */ public static array $statusColors = [ DeploymentStatus::DEPLOYING => 'warning', DeploymentStatus::FINISHED => 'success', DeploymentStatus::FAILED => 'danger', ]; /** * @return BelongsTo */ public function site(): BelongsTo { return $this->belongsTo(Site::class); } /** * @return BelongsTo */ public function deploymentScript(): BelongsTo { return $this->belongsTo(DeploymentScript::class); } /** * @return BelongsTo */ public function log(): BelongsTo { return $this->belongsTo(ServerLog::class, 'log_id'); } }