Skip to content

Commit 9477762

Browse files
author
Oleksandr Gorkun
committed
MAGETWO-81431: Static content deployment failed with compact strategy and several jobs
1 parent d43bec5 commit 9477762

File tree

1 file changed

+19
-3
lines changed

1 file changed

+19
-3
lines changed

app/code/Magento/Deploy/Process/Queue.php

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -187,15 +187,31 @@ private function assertAndExecute($name, array & $packages, array $packageJob)
187187
{
188188
/** @var Package $package */
189189
$package = $packageJob['package'];
190+
$dependenciesNotFinished = false;
190191
if ($package->getParent() && $package->getParent() !== $package) {
191192
foreach ($packageJob['dependencies'] as $dependencyName => $dependency) {
192193
if (!$this->isDeployed($dependency)) {
193-
$this->assertAndExecute($dependencyName, $packages, $packages[$dependencyName]);
194+
//If it's not present in $packages then it's already
195+
//in progress so just waiting...
196+
if (!array_key_exists($dependencyName, $packages)) {
197+
$dependenciesNotFinished = true;
198+
} else {
199+
$this->assertAndExecute(
200+
$dependencyName,
201+
$packages,
202+
$packages[$dependencyName]
203+
);
204+
}
194205
}
195206
}
196207
}
197-
if (!$this->isDeployed($package)
198-
&& ($this->maxProcesses < 2 || (count($this->inProgress) < $this->maxProcesses))) {
208+
if (!$dependenciesNotFinished
209+
&& !$this->isDeployed($package)
210+
&& (
211+
$this->maxProcesses < 2
212+
|| (count($this->inProgress) < $this->maxProcesses)
213+
)
214+
) {
199215
unset($packages[$name]);
200216
$this->execute($package);
201217
}

0 commit comments

Comments
 (0)