|
@@ -19,12 +19,14 @@ class ComposerRequireCommand extends Command
|
|
->addArgument('ini_file', InputArgument::REQUIRED, 'The ini file from where to get the source code config.')
|
|
->addArgument('ini_file', InputArgument::REQUIRED, 'The ini file from where to get the source code config.')
|
|
->addArgument('packages', InputArgument::REQUIRED, 'Tag the required packages (suggested value : ik/*).')
|
|
->addArgument('packages', InputArgument::REQUIRED, 'Tag the required packages (suggested value : ik/*).')
|
|
->addArgument('version', InputArgument::REQUIRED, 'Use the version expression.')
|
|
->addArgument('version', InputArgument::REQUIRED, 'Use the version expression.')
|
|
- ->addOption('composer_update', null, InputOption::VALUE_OPTIONAL, 'If true, run "docker-compose run ... bin/composer-update.sh" to generate composer.lock', 'true');
|
|
|
|
|
|
+ ->addOption('composer_update', null, InputOption::VALUE_OPTIONAL, 'If true, run "docker-compose run ... bin/composer-update.sh" to generate composer.lock', 'true')
|
|
|
|
+ ->addOption('pull', null, InputOption::VALUE_OPTIONAL, 'Indicates branch to pull for every modules', '');
|
|
}
|
|
}
|
|
|
|
|
|
protected function execute(InputInterface $input, OutputInterface $output)
|
|
protected function execute(InputInterface $input, OutputInterface $output)
|
|
{
|
|
{
|
|
$dockerCompose = $input->getOption("composer_update");
|
|
$dockerCompose = $input->getOption("composer_update");
|
|
|
|
+ $pull = $input->getOption("pull");
|
|
$file = $input->getArgument("ini_file");
|
|
$file = $input->getArgument("ini_file");
|
|
$packages = $input->getArgument("packages");
|
|
$packages = $input->getArgument("packages");
|
|
$new_version = $input->getArgument("version");
|
|
$new_version = $input->getArgument("version");
|
|
@@ -41,6 +43,9 @@ class ComposerRequireCommand extends Command
|
|
$output->writeln($sec);
|
|
$output->writeln($sec);
|
|
$composer_data = json_decode(file_get_contents($composer_file), true);
|
|
$composer_data = json_decode(file_get_contents($composer_file), true);
|
|
foreach (array("require", "require-dev") as $k) {
|
|
foreach (array("require", "require-dev") as $k) {
|
|
|
|
+ if (strlen($pull) > 0) {
|
|
|
|
+ shell_exec('cd ' . $sec . '; git pull origin ' . $pull);
|
|
|
|
+ }
|
|
foreach ($composer_data[$k] as $package => $version) {
|
|
foreach ($composer_data[$k] as $package => $version) {
|
|
if (strpos($packages, "*") !== false) {
|
|
if (strpos($packages, "*") !== false) {
|
|
$preg = "|^" . str_replace("*", "[^\b]*", $packages) . "$|";
|
|
$preg = "|^" . str_replace("*", "[^\b]*", $packages) . "$|";
|