From 0ed82a2c6ffd8e981d9dd388306379941ecb5720 Mon Sep 17 00:00:00 2001 From: Fbenas Date: Sun, 20 Aug 2017 04:18:13 +0100 Subject: WIP rejigging stuff --- src/Script/Command/Site.php | 80 +++++++++++++++++++++++++++++++++++++++++++++ src/Script/Console.php | 16 +++++++++ 2 files changed, 96 insertions(+) create mode 100644 src/Script/Command/Site.php create mode 100644 src/Script/Console.php (limited to 'src/Script') diff --git a/src/Script/Command/Site.php b/src/Script/Command/Site.php new file mode 100644 index 0000000..8a6a8e7 --- /dev/null +++ b/src/Script/Command/Site.php @@ -0,0 +1,80 @@ +addArgument('name', InputArgument::REQUIRED, 'The name of the new site.'); + + $this + ->addArgument('domain', InputArgument::REQUIRED, 'The domain name of the new site.'); + + $this + ->setName('site:create') + ->setDescription('Create a new site.') + ->setHelp('This command allows you to create a new site.') + ; + } + + protected function execute(InputInterface $input, OutputInterface $output) + { + $taskCount = 6; + $output->writeln( + 'Creating new site with domain: ' + . $input->getArgument('domain') + . ' and name: ' + . $input->getArgument('name') + ); + + $progressBar = new ProgressBar($output, $taskCount); + $progressBar->setFormatDefinition('custom', ' %current%/%max% -- %message%'); + $progressBar->setFormat('custom'); + $progressBar->setMessage('Starting...'); + $progressBar->start(); + $progressBar->setMessage('Running pre-flight checks'); + + $progressBar->advance(); + try { + $create = new \App\Filesystem\CreateFile(DIPPER_ROOT . '/foo.test'); + $create = new \App\Filesystem\CreateDirectory(DIPPER_ROOT); + sleep(1); + } catch (\Exception $e) { + $output->writeln('Error with pre-flight checks'); + $output->writeln($e->getMessage()); + exit; + } + + $progressBar->advance(); + $progressBar->setMessage('Creating directory structure'); + sleep(1); + + $progressBar->advance(); + $progressBar->setMessage('Creating nginx config'); + sleep(1); + + $progressBar->advance(); + $progressBar->setMessage('Creating default index.php'); + sleep(1); + + $progressBar->advance(); + $progressBar->setMessage('Creating nginx config'); + sleep(1); + + $progressBar->advance(); + $progressBar->finish(); + + $output->writeln(''); + $output->writeln('Complete'); + } +} diff --git a/src/Script/Console.php b/src/Script/Console.php new file mode 100644 index 0000000..926f41f --- /dev/null +++ b/src/Script/Console.php @@ -0,0 +1,16 @@ +add(new Site()); + $application->run(); + } +} -- cgit v1.2.3