| 1: | <?php | 
| 2: |  | 
| 3: | namespace Aurora\System\Console\Commands\Migrations; | 
| 4: |  | 
| 5: | use Illuminate\Database\Migrations\MigrationRepositoryInterface; | 
| 6: | use Symfony\Component\Console\Command\Command; | 
| 7: | use Symfony\Component\Console\Input\InputInterface; | 
| 8: | use Symfony\Component\Console\Input\InputOption; | 
| 9: | use Symfony\Component\Console\Output\OutputInterface; | 
| 10: |  | 
| 11: | class InstallCommand extends Command | 
| 12: | { | 
| 13: |  | 
| 14: |  | 
| 15: |  | 
| 16: |  | 
| 17: |  | 
| 18: | protected $repository; | 
| 19: |  | 
| 20: |  | 
| 21: |  | 
| 22: |  | 
| 23: |  | 
| 24: |  | 
| 25: |  | 
| 26: | public function __construct(MigrationRepositoryInterface $repository) | 
| 27: | { | 
| 28: | parent::__construct(); | 
| 29: |  | 
| 30: | $this->repository = $repository; | 
| 31: | } | 
| 32: |  | 
| 33: | protected function configure(): void | 
| 34: | { | 
| 35: | $this->setName('migrate:install') | 
| 36: | ->setDescription('Create the migration repository') | 
| 37: | ->addOption('database', null, InputOption::VALUE_OPTIONAL, 'The database connection to use'); | 
| 38: | } | 
| 39: |  | 
| 40: | protected function execute(InputInterface $input, OutputInterface $output): int | 
| 41: | { | 
| 42: | $this->repository->setSource($input->getOption('database')); | 
| 43: |  | 
| 44: | $this->repository->createRepository(); | 
| 45: |  | 
| 46: | $output->writeln('Migration table created successfully.'); | 
| 47: |  | 
| 48: | return Command::SUCCESS; | 
| 49: | } | 
| 50: | } | 
| 51: |  |