There seems to be a problem with the make file and some versions of drush and drush make.

This is a report from paskainos over at #1435352: Update INSTALL.txt for make file:

Yes, please update INSTALL.txt to avoid user confusion. Also, the drupal-org.make file passes verification, but git cloning for most (actually, it looks like 'all') of the non-stable modules is failing. Here's what I'm seeing:

Unable to clone ns_core from                                         [error]
git://git.drupal.org/project/ns_core.git.
Unable to clone defaultconfig from                                   [error]
git://git.drupal.org/project/defaultconfig.git.
Unable to clone ctools from git://git.drupal.org/project/ctools.git. [error]
Unable to clone uuid from git://git.drupal.org/project/uuid.git.     [error]
Unable to clone views_rss from                                       [error]
git://git.drupal.org/project/views_rss.git.
Unable to clone draggableviews from                                  [error]
git://git.drupal.org/project/draggableviews.git.
Unable to clone wysiwyg from                                         [error]
git://git.drupal.org/project/wysiwyg.git.
Unable to clone media_youtube from                                   [error]
git://git.drupal.org/project/media_youtube.git.
Unable to clone pathfilter from                                      [error]
git://git.drupal.org/project/pathfilter.git.
Unable to clone admin_menu from                                      [error]
git://git.drupal.org/project/admin_menu.git.
Unable to clone entityreference from                                 [error]
git://git.drupal.org/project/entityreference.git.
Unable to clone crossclone from                                      [error]
git://git.drupal.org/project/crossclone.git.
Unable to clone panels_ref_formatter from                            [error]
git://git.drupal.org/project/panels_ref_formatter.git.

He also posted a patched that resolved the issue that resolved the issue for his version of drush make.
We previously had the links in our make file, but we webchick and dww pointed out that this would throw off the drupal build system, so we removed it, see #1432210: Changes to nodestream required to work with new packaging system . When building with drush 4.5 together with the latest drush make, you get no errors.

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

paskainos’s picture

Using PHP 5.2.17, I was running Drush 4.5 / Drush Make 2.3 at the outset of this issue. Then I drush selfupdate'ed to 7.x-5.0-rc2 which led to this issue. So then I switched to Drush 5.0-dev, and I'm still experiencing problems.

Here are the steps I'm using:
drush dl
mv drupal-7.12 site
cd site/profiles
git clone --branch 7.x-2.x http://git.drupal.org/project/nodestream.git
cd nodestream
** All's well up to this point. Then I run: **
drush make --no-core drupal-org.make
** After which I get: **

 >> Unable to clone panels_everywhere from                           [error]
git://git.drupal.org/project/panels_everywhere.git.
 >> Unable to clone panels_ref_formatter from                        [error]
git://git.drupal.org/project/panels_ref_formatter.git.
 >> Unable to clone crossclone from                                  [error]
git://git.drupal.org/project/crossclone.git.
 >> Unable to clone entityreference from                             [error]
git://git.drupal.org/project/entityreference.git.
 >> Unable to clone pathfilter from                                  [error]
git://git.drupal.org/project/pathfilter.git.
 >> Unable to clone media_youtube from                               [error]
git://git.drupal.org/project/media_youtube.git.
 >> Unable to clone wysiwyg from                                     [error]
git://git.drupal.org/project/wysiwyg.git.
 >> Unable to clone admin_menu from                                  [error]
git://git.drupal.org/project/admin_menu.git.
 >> Unable to clone draggableviews from                              [error]
git://git.drupal.org/project/draggableviews.git.
 >> Unable to clone views_rss from                                   [error]
git://git.drupal.org/project/views_rss.git.
 >> Unable to clone uuid from git://git.drupal.org/project/uuid.git. [error]
 >> Unable to clone ctools from                                      [error]
git://git.drupal.org/project/ctools.git.
 >> ns_theme-7.x-2.0-alpha2 downloaded from                          [ok]
http://ftp.drupal.org/files/projects/ns_theme-7.x-2.0-alpha2.tar.gz
 >> precision-7.x-1.0-alpha1 downloaded from                         [ok]
http://ftp.drupal.org/files/projects/precision-7.x-1.0-alpha1.tar.gz
 >> menu_block-7.x-2.3 downloaded from                               [ok]
http://ftp.drupal.org/files/projects/menu_block-7.x-2.3.tar.gz
 >> Project menu_block contains 2 modules: menu_block_export, menu_block.
 >> references_dialog-7.x-1.0-alpha3 downloaded from                 [ok]
http://ftp.drupal.org/files/projects/references_dialog-7.x-1.0-alpha3.tar.gz
 >> Unable to clone defaultconfig from                               [error]
git://git.drupal.org/project/defaultconfig.git.
 >> Unable to clone ns_core from                                     [error]
git://git.drupal.org/project/ns_core.git.
 >> Project references contains 3 modules: user_reference, node_reference, references.
 >> Project flag contains 2 modules: flag, flag_actions.
 >> references-7.x-2.0 downloaded from                               [ok]
http://ftp.drupal.org/files/projects/references-7.x-2.0.tar.gz
 >> flag-7.x-2.0-beta6 downloaded from                               [ok]
http://ftp.drupal.org/files/projects/flag-7.x-2.0-beta6.tar.gz
 >> pathauto-7.x-1.0 downloaded from                                 [ok]
http://ftp.drupal.org/files/projects/pathauto-7.x-1.0.tar.gz
 >> token-7.x-1.0-rc1 downloaded from                                [ok]
http://ftp.drupal.org/files/projects/token-7.x-1.0-rc1.tar.gz
 >> media-7.x-2.0-unstable3 downloaded from                          [ok]
http://ftp.drupal.org/files/projects/media-7.x-2.0-unstable3.tar.gz
 >> Project media contains 3 modules: media_internet, mediafield, media.
 >> media patched with media-install-error-1311828-28.patch.         [ok]
 >> Generated PATCHES.txt file for media                             [ok]
 >> Project coder contains 3 modules: coder_review, coder_upgrade, coder.
 >> coder-7.x-1.0 downloaded from                                    [ok]
http://ftp.drupal.org/files/projects/coder-7.x-1.0.tar.gz
 >> devel-7.x-1.2 downloaded from                                    [ok]
http://ftp.drupal.org/files/projects/devel-7.x-1.2.tar.gz
 >> Project devel contains 3 modules: devel_generate, devel_node_access, devel.
 >> file_entity-7.x-2.0-unstable3 downloaded from                    [ok]
http://ftp.drupal.org/files/projects/file_entity-7.x-2.0-unstable3.tar.gz
 >> taxonomy_menu_form-7.x-1.1 downloaded from                       [ok]
http://ftp.drupal.org/files/projects/taxonomy_menu_form-7.x-1.1.tar.gz
 >> views-7.x-3.1 downloaded from                                    [ok]
http://ftp.drupal.org/files/projects/views-7.x-3.1.tar.gz
 >> Project views contains 2 modules: views, views_ui.
 >> strongarm-7.x-2.0-beta5 downloaded from                          [ok]
http://ftp.drupal.org/files/projects/strongarm-7.x-2.0-beta5.tar.gz
 >> views patched with node_revision_display_content.patch.          [ok]
 >> Generated PATCHES.txt file for views                             [ok]
 >> features-7.x-1.0-beta6 downloaded from                           [ok]
http://ftp.drupal.org/files/projects/features-7.x-1.0-beta6.tar.gz
 >> field_group-7.x-1.1 downloaded from                              [ok]
http://ftp.drupal.org/files/projects/field_group-7.x-1.1.tar.gz
 >> entitycache-7.x-1.1 downloaded from                              [ok]
http://ftp.drupal.org/files/projects/entitycache-7.x-1.1.tar.gz
 >> dynamic_formatters-7.x-2.0-alpha2 downloaded from                [ok]
http://ftp.drupal.org/files/projects/dynamic_formatters-7.x-2.0-alpha2.tar.gz
 >> cache_actions-7.x-2.0-alpha3 downloaded from                     [ok]
http://ftp.drupal.org/files/projects/cache_actions-7.x-2.0-alpha3.tar.gz
 >> diff-7.x-2.0 downloaded from                                     [ok]
http://ftp.drupal.org/files/projects/diff-7.x-2.0.tar.gz
 >> workbench_media-7.x-1.0 downloaded from                          [ok]
http://ftp.drupal.org/files/projects/workbench_media-7.x-1.0.tar.gz
 >> workbench_moderation-7.x-1.1 downloaded from                     [ok]
http://ftp.drupal.org/files/projects/workbench_moderation-7.x-1.1.tar.gz
 >> workbench_access-7.x-1.0 downloaded from                         [ok]
http://ftp.drupal.org/files/projects/workbench_access-7.x-1.0.tar.gz
 >> workbench-7.x-1.1 downloaded from                                [ok]
http://ftp.drupal.org/files/projects/workbench-7.x-1.1.tar.gz
 >> webform-7.x-3.15 downloaded from                                 [ok]
http://ftp.drupal.org/files/projects/webform-7.x-3.15.tar.gz
 >> scheduler-7.x-1.0 downloaded from                                [ok]
http://ftp.drupal.org/files/projects/scheduler-7.x-1.0.tar.gz
 >> entity-7.x-1.0-rc1 downloaded from                               [ok]
http://ftp.drupal.org/files/projects/entity-7.x-1.0-rc1.tar.gz
 >> Project entity contains 2 modules: entity, entity_token.
 >> rules-7.x-2.0 downloaded from                                    [ok]
http://ftp.drupal.org/files/projects/rules-7.x-2.0.tar.gz
 >> Project rules contains 3 modules: rules_scheduler, rules_admin, rules.
 >> link-7.x-1.0 downloaded from                                     [ok]
http://ftp.drupal.org/files/projects/link-7.x-1.0.tar.gz
 >> panels-7.x-3.0 downloaded from                                   [ok]
http://ftp.drupal.org/files/projects/panels-7.x-3.0.tar.gz
 >> Project panels contains 4 modules: panels_mini, panels_node, panels_ipe, panels.
 >> libraries-7.x-2.0-alpha2 downloaded from                         [ok]
http://ftp.drupal.org/files/projects/libraries-7.x-2.0-alpha2.tar.gz
 >> panels patched with                                              [ok]
1173978-panels-undefined-variable-tokens-5.patch.
 >> variable-7.x-1.1 downloaded from                                 [ok]
http://ftp.drupal.org/files/projects/variable-7.x-1.1.tar.gz
 >> Project variable contains 5 modules: variable_admin, variable_store, variable_advanced, variable_realm, variable.
 >> panels patched with                                              [ok]
panels-only-modify-numeric-pids-on-export-1417434-4.patch.
 >> Generated PATCHES.txt file for panels                            [ok]
ckeditor downloaded from                                             [ok]
http://download.cksource.com/CKEditor/CKEditor/CKEditor%203.6.2/ckeditor_3.6.2.tar.gz.
jquery.cycle downloaded from                                         [ok]
http://malsup.com/jquery/cycle/release/jquery.cycle.zip?v2.99.

So my first question at this point is; based on the afoermentioned issue, could this be a PHP 5.2 conflict?

paskainos’s picture

And once again, reverting the drupal-org.make file (formerly nodestream.make) to exclude [version] and include [url] works fine (now using Drush 5.0-dev).

fabsor’s picture

Title: Possible issue with the new make file structure » Make file incompatible with drush 5

This definitely has to do with drush 5. I'm changing the name to reflect that.

fabsor’s picture

Title: Make file incompatible with drush 5 » Make file incompatible with drush 5 (with some configurations)

So I switched to drush 5 and tried to do a build and that worked fine. I installed my version through pear. There must be some twist on this, like the PHP version that you mentioned. I'm running PHP 5.3.

gumdrop’s picture

Well I am using Drush 5.0-dev before rc2 and had no issues. I am not upgrading to rc2 because it's still "yellow" and has obvious issues.

fabsor’s picture

Title: Make file incompatible with drush 5 (with some configurations) » Change the standard git url for drupal.org from git:// to http://
Project: NodeStream » Drush
Version: 7.x-2.x-dev »
Component: Code » Make
Category: bug » feature

I finally tracked this down. The issue is not with Drush make or the format we are currently using - it's simply because we are using git:// and not http:// when fetching our repos.This works well for most people, but if you are behind a firewall that does not allow traffic on the port that git is using, you can't download anything from drush make, or clone anything using git:// for that matter. I'm moving this over to the drush issue queue, where we can discuss how we should fix this.

moshe weitzman’s picture

Assigned: Unassigned » jhedstrom

It looks to me like drupal.org recommends using http when one is not a maintainer (the common case) so we should probably default to that. I think ssh:// might be needed when one needs to authenticate. For example, see project instructions like http://drupal.org/node/97249/git-instructions/7.x-4.x

dww’s picture

Assigned: jhedstrom » dww
Status: Active » Needs review
FileSize
809 bytes

Trivial patch. Verified it works. It's hard to have unit tests for this since md5 checks on --working-copy will change whenever there's a commit to the repo in question. I guess we could have a test that doesn't rely on md5 comparison, but that seems like more of a can of worms than I want to get into for fixing this. ;)

joestewart’s picture

jhedstrom pointed me to how testInfoFileWritingGit() in makeTest.php reads the hash in the .info file since the md5 will be changing. So I read the hash in .git/HEAD for a test in #1206340: introduce an options array in the root level of the makefile.

joestewart’s picture

On second thought don't our other git tests cover this? Just without using working-copy or changing the .info file.

dww’s picture

Yeah, the existing tests continue to pass and keep working. What I'm saying is that it's hard to write a test to verify that the default URL is actually using http not git. To do so, you need to use --working-copy and inspect the resulting .git/config file. However, once you turn on --working-copy, you can no longer get reliable md5 hashes of the build directories, since the hash will change every time there's a commit to any repo we're cloning.

So, our choices are:

A) Write a test that *just* inspects .git/config and doesn't try to compare md5 hashes (although I'm not sure how to do this).

B) Ignore a test specifically for this feature, and just acknowledge that it works. ;)

jhedstrom’s picture

You could also capture the output of git remote -v to verify the proper remote url is used. No need to actually perform an md5 test, this could be done by building one of the test .make files with --working-copy.

moshe weitzman’s picture

Status: Needs review » Fixed

Committed. I mulled this a bit and decided for Option B from #13. We'll be OK without a test for this small change.

Status: Fixed » Closed (fixed)

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

Anonymous’s picture

Issue summary: View changes

Fix issue links