setName('tenants:dump'); $this->specifyParameters(); } public function handle(ConnectionResolverInterface $connections, Dispatcher $dispatcher): int { $this->tenant()->run(fn () => parent::handle($connections, $dispatcher)); return Command::SUCCESS; } public function tenant(): Tenant { $tenant = $this->option('tenant') ?? tenant() ?? $this->ask('What tenant do you want to dump the schema for?') ?? tenancy()->query()->first(); if (! $tenant instanceof Tenant) { $tenant = tenancy()->find($tenant); } throw_if(! $tenant, 'Could not identify the tenant to use for dumping the schema.'); return $tenant; } protected function getOptions(): array { return array_merge([ ['tenant', null, InputOption::VALUE_OPTIONAL, '', null], ], parent::getOptions()); } }