onConnection('provisioning'); $this->onQueue('provisioning'); } public function uniqueId(): string { return $this->uuid; } public function handle(ArchiveAndTearDown $abbau): void { $instance = Instance::query()->with('host')->where('uuid', $this->uuid)->first(); if ($instance === null) { // Zwischen Einreihen und Ausführen können Stunden liegen. Eine // Instanz, die es nicht mehr gibt, ist kein Fehlschlag. return; } $abbau->shutdownWaitSeconds = self::SHUTDOWN_WAIT_SECONDS; $abbau->backupWaitSeconds = self::BACKUP_WAIT_SECONDS; $abbau->deleteWaitSeconds = self::DELETE_WAIT_SECONDS; // Der Rückgabewert wird bewusst nicht ausgewertet: die Aktion wirft nie // und schreibt ihren Grund selbst an den Datensatz, wo die Konsole ihn // liest. Ein `false` hier in eine Ausnahme zu übersetzen, machte aus // einem vermerkten Fehlschlag zusätzlich einen fehlgeschlagenen // Auftrag — dieselbe Nachricht an zwei Orten, von denen nur einer // gelesen wird. $abbau($instance); } }