/** * @param Dispatcher $bus * @throws \Exception */ public function handle(Dispatcher $bus) { try { if ($this->release->isCancelled()) { return; } $this->release->update(['status' => Release::PREPARING]); $this->release->logger()->comment("Preparing release..."); $this->prepareReleaseDir(); $this->createArchive(); $this->extractArchive(); $this->writePlaybooks(); if ($this->release->isCancelled()) { return; } if ($this->sync) { $bus->dispatchNow(new PlaybookJob($this->release)); $bus->dispatchNow(new CleanupReleasesJob($this->release->repo)); } else { $bus->dispatch(new PlaybookJob($this->release)); $bus->dispatch(new CleanupReleasesJob($this->release->repo)); } } catch (\Exception $e) { $this->release->update(['status' => Release::ERROR, 'raw_logs' => $e->getMessage()]); $this->release->logger()->push(); throw $e; } }
/** * Dispatch a command to its appropriate handler. * * @param mixed $command * @param \Closure|null $afterResolving * @return mixed * @static */ public static function dispatch($command, $afterResolving = null) { return \Illuminate\Bus\Dispatcher::dispatch($command, $afterResolving); }
/** * Dispatch a command to its appropriate handler. * * @param mixed $command * @return mixed * @static */ public static function dispatch($command) { return \Illuminate\Bus\Dispatcher::dispatch($command); }