Revision 399 | Blame | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed
<?phpnamespace Laravel\Sail\Console;use Illuminate\Console\Command;use RuntimeException;use Symfony\Component\Process\Process;class InstallCommand extends Command{use Concerns\InteractsWithDockerComposeServices;/*** The name and signature of the console command.** @var string*/protected $signature = 'sail:install{--with= : The services that should be included in the installation}{--devcontainer : Create a .devcontainer configuration directory}';/*** The console command description.** @var string*/protected $description = 'Install Laravel Sail\'s default Docker Compose file';/*** Execute the console command.** @return int|null*/public function handle(){if ($this->option('with')) {$services = $this->option('with') == 'none' ? [] : explode(',', $this->option('with'));} elseif ($this->option('no-interaction')) {$services = $this->defaultServices;} else {$services = $this->gatherServicesWithSymfonyMenu();}if ($invalidServices = array_diff($services, $this->services)) {$this->error('Invalid services ['.implode(',', $invalidServices).'].');return 1;}$this->buildDockerCompose($services);$this->replaceEnvVariables($services);$this->configurePhpUnit();if ($this->option('devcontainer')) {$this->installDevContainer();}$this->info('Sail scaffolding installed successfully.');$this->prepareInstallation($services);}}