'datetime', 'finished_at' => 'datetime', 'secrets' => 'encrypted:array', ]; } public function deployment(): BelongsTo { return $this->belongsTo(Deployment::class); } public function logsExcerpt(): Attribute { return Attribute::make( get: fn () => $this->logs ? Str::afterLast($this->logs, "\n"): null, ); } public function errorLogsExcerpt(): Attribute { return Attribute::make( get: fn () => $this->error_logs ? Str::afterLast($this->error_logs, "\n"): null, ); } public function dispatchJob(): void { dispatch(new RunStep($this)); } }