0

When using a stub make file based profile workflow as suggested in Drush Make theory for happy profile development I notice that patches to core are no longer applied.

I've tested this by reverting to a single make file workflow - core patches get applied just fine that way.

Has anyone else found a fix/workaround for this?


UPDATE with details...


Here's what my stub make file looks like:

api = 2
core = 7.x

projects[] = drupal

projects[example_profile][download][type] = "git"
projects[example_profile][download][url] = "git@github.com:danohea/example-profile.git"
projects[example_profile][type] = "profile"

Which as you can see is designed to go grab a custom profile. I should mention that that is not the real path to the profile (which is a private repo anyway).

The profile contains a further make file that looks a bit like this (shortened for convenience):

api = 2
core = 7.x

; Contrib modules (not in dev)

; Specify common subdir of "contrib"
defaults[projects][subdir] = "contrib"

projects[admin_menu][version] = 3
projects[ctools][version] = 1
projects[diff][version] = 3
projects[eck][version] = 2
projects[entity][version] = 1
projects[jquery_update][version] = 3
projects[libraries][version] = 2
projects[link][version] = 1
projects[module_filter][version] = 2
projects[pathauto][version] = 1
projects[token][version] = 1
projects[transliteration][version] = 3
projects[views][version] = 3

; Contrib modules (in dev)

projects[wysiwyg][version] = 2.x-dev
; Keep in dev until this issue makes it to stable:
; https://drupal.org/node/1956778

; Themes

projects[omega][version] = 4
projects[omega][subdir] = "contrib"

; Libraries

; ckeditor
libraries[ckeditor][download][type] = file
libraries[ckeditor][download][url] = http://ckeditor.com/builder/download/a63002d0b001ab7841c8e29bb8081e57 

; Patches

; drupal
; Ignore front end vendor folders to improve directory search performance
projects[drupal][patch][2329453] = https://www.drupal.org/files/issues/optimize_scan-2329453-84-do-not-test.patch

; pathauto
; Merge in pathauto_persist module functionality to prevent losing manual aliases with node_save() calls
projects[pathauto][patch][936222] = https://www.drupal.org/files/issues/merge_in-936222-299.patch

The stub make file is run with a command that looks a bit like this:

drush make --prepare-install path/to/stub.make -y

I'm running Drush version 7.0.0.

Note that there are 2 patches, one for drupal core and one for pathauto. The pathauto one is applied as expected, the drupal one doesn't seem to even run.

If I download & run the profile's make file directly (i.e. not via the stub) then the core patch is applied as expected.

If I move the drupal core patch to the stub make file, it still doesn't run.

  • What warning/error you're getting when doing make (with verbose parameter: -v) if any, during the time when these patches are applied? Or nothing at all? – kenorb Sep 30 '15 at 15:04
  • How the second .make is invoked? Shouldn't be included using: includes[]? – kenorb Sep 30 '15 at 15:14
  • @kenorb The second .make file is invoked because drush make is recursive. When the profile is retrieved by the the stub .make file, drush will notice that it also includes a .make file and will run that too. See drupal.org/node/1006620 – danbohea Sep 30 '15 at 18:33
  • @kenorb I think I tried verbose output and didn't notice any errors. – danbohea Sep 30 '15 at 18:35
  • Can you share the filenames of your .make files, I think this is important. See: Managing Drush make files for an installation profile. So double check that your .make file names are correct. – kenorb Sep 30 '15 at 18:41
1

Include the core patch in the core stub makefile. Here is mine straight out of buildkit.

api = 2
core = 7.x

projects[drupal][type] = core
projects[drupal][version] = "7.39"

; Use vocabulary machine name for permissions
; http://drupal.org/node/995156
projects[drupal][patch][995156] = http://drupal.org/files/issues/995156-5_portable_taxonomy_permissions.patch

projects[example][type] = profile
projects[example][download][type] = git
projects[example][download][url] = git@github.com:Laudanum/example.git
  • Thanks for this. I had tried moving the patch to the sub .make file but still wasn't having any luck. It turns out that the trick is to specify which version of core you want to download. I was just specifying "drupal" which will just grab the latest stable version of Drupal 7. Your stub file specified "7.39" and in doing so the patch then gets applied. – danbohea Oct 1 '15 at 10:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.