If you build a platform from a makefile, and the makefile tries to apply patches and fails for whatever reason, the verify task still succeeds, and the platform is perfectly usable- but your modules are unknowingly left in an unpatched state. If you view the output from the verify task, you can see that the patch failed to apply (highlighted in red), but it's a bit of a pain to sift through every verify log to ensure all patches applied correctly.

I think if a patch fails to apply, this should count as a failed build, since it's potentially dangerous (and at the very least, annoying) to let an unpatched module slip through without warning.

Comments

Anonymous’s picture

This is kind of tricky: arguably it is drush_make that should abort if the patch fails, but it doesn't, it keeps on going.

As a result it does not return an error code (I believe) and thus is difficult for Aegir to detect and roll back from..

Dane Powell’s picture

Title: Platform verify task should fail if drush_make patch fails » Make should fail if patching fails
Project: Provision » Drush Make
Version: 6.x-1.1 » 6.x-2.2

I see your point, this should go in the Drush Make queue then?

Dane Powell’s picture

Drush Make does at least return a warning when the patch fails (this shows up in the verify log), it just doesn't stop the build. It shouldn't be too hard then to either stop the build, or add a switch that aborts the build / doesn't abort the build if patches fail. Right?

dmitrig01’s picture

Status: Active » Fixed

By default it will now fail, but you can run --force-complete to get it to go anyway.

Dane Powell’s picture

Woohoo! Thanks!

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.