public function run(ContextInterface $context)
{
$config = $this->getConfiguration();
$files = $context->getFiles()->extensions($config['triggered_by']);
if (0 === count($files)) {
return TaskResult::createSkipped($this, $context);
}
$arguments = $this->processBuilder->createArgumentsForCommand('doctrine');
$arguments->add('orm:validate-schema');
$arguments->addOptionalArgument('--skip-mapping', $config['skip_mapping']);
$arguments->addOptionalArgument('--skip-sync', $config['skip_sync']);
$process = $this->processBuilder->buildProcess($arguments);
$process->run();
if (!$process->isSuccessful()) {
return TaskResult::createFailed($this, $context, $this->formatter->format($process));
}
return TaskResult::createPassed($this, $context);
}