Using Drush Make while ftp.drupal.org is down

The Drush Make utility downloads modules from ftp.drupal.org during the build – but the ftp.drupal.org site is currently down, which means Drush Make won’t work (and so our continuous integration has ground to a halt).

There’s a fix for general Drush usage here: http://contrib.linalis.com/content/continuer-dutiliser-drush-quand-ftpdrupalorg-est-down

That fix changes the download url to use drupal.org (which is working) instead of ftp.drupal.org (which isn’t).

Unfortunately Drush Make uses it’s own download functions, so this doesn’t help.. Here’s my (very similar) hack to get the Drush Make downloads working..

Change line 367 in drush_make.drush.inc to the following:

'url'  => str_replace('ftp.', '', $release['file']),

(The file should be somewhere like /usr/share/drush/commands/drush_make)

And don’t forget to remove the hack when ftp.drupal.org comes back..

4 thoughts on “Using Drush Make while ftp.drupal.org is down

  1. mcdruid

    September 22, 2011 at 12:06pm

    Thanks for this – http://ftp.drupal.org seems to be having trouble just when I need to run drush make over and again today! Shame we have to hack to workaround this, but the hack works.

  2. J0nathan

    September 22, 2011 at 1:56pm

    Hi,
    That patch doesn’t work for me with drush make 2.3.
    Do you know the version used for?
    Maybe with a couple of lines before and after we can use it for drush make 2.3.

  3. jhigman

    September 22, 2011 at 2:27pm

    I was using drush make 2.2 (and I put the wrong line number in the original post – I’ve updated it now).

    In version 2.3, it looks like the fix should be the same, but the line number in drush_make.drush.inc is now 410.

    So the lines at the end of the drush_make_update_xml_download function should be this:

    function drush_make_update_xml_download($project) {

    ....

    $release = $releases[$final_version];
    $project['download'] = array(
    'type' => 'get',
    'url' => str_replace('ftp.', '', $release['file']),
    'md5' => $release['md5'],
    );
    return $project;
    }

  4. J0nathan

    September 22, 2011 at 3:05pm

    In my case this is line 370 of drush_make.drush.inc (drush make 2.3) and it works.

    Thank you

Leave a Reply

Your email will not be published. Name and Email fields are required.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>