protected function execute(InputInterface $input, OutputInterface $output)
{
$this->output = $output;
$this->checkPermissions();
$this->checkParameters();
$this->checkDatabase();
$type = $input->getArgument('type');
$installer = $this->getInstaller($type);
if ($installer === false) {
$output->writeln("Unknown install type '{$type}'");
exit(self::EXIT_UNKNOWN_INSTALL_TYPE);
}
$installer->setOutput($output);
$installer->importSchema();
$installer->importData();
$installer->importBinaries();
$this->cacheClear($output);
$this->indexData($output);
}