bower: bower install is stalling/hanging completely

I’m issued with the situation that bower install hangs sometimes without any further message. The issue is new since Monday (on Friday is was still fine).

Because there are several dependencies, I am still investigating whether it is only a connection issue (internet uplink). I have got also read about #2235, but at the moment I don’t see this could be the issue. I’m looking for more logging.

Details about the environment:

  • RHEL6 (everything running within Jenkins)
  • git 1.7.1
  • npm 4.3.1 (configured by nvm)
  • bower ^1.7.9 installed locally

But I have seen the issue also on my local machine: OS X 10.11.4, npm 4.3.1, bower ^1.7.9

So far, the symptoms are:

  • bower install hangs after some time. Interestingly, it is often a the same position by job. Just like a specific threshold would be reached every time.
bower angular#~1.2.x                                                               progress Receiving objects:  94% (20428/21650), 160.50 MiB | 2.39 MiB/s
bower angular#~1.2.x                                                               progress Receiving objects:  95% (20620/21650), 162.84 MiB | 2.34 MiB/s
bower angular#~1.2.x                                                               progress Receiving objects:  96% (20835/21650), 165.30 MiB | 2.38 MiB/s
bower angular#~1.2.x                                                               progress Receiving objects:  97% (21041/21650), 167.90 MiB | 2.41 MiB/s
bower angular#~1.2.x                                                               progress Receiving objects:  99% (21434/21650), 172.39 MiB | 2.63 MiB/s
bower angular#~1.2.x                                                               progress Resolving deltas:  12% (1685/14008)
bower angular#~1.2.x                                                               progress Resolving deltas:  35% (4921/14008)
bower angular#~1.2.x                                                               progress Resolving deltas:  60% (8518/14008)
bower angular#~1.2.x                                                               progress Resolving deltas:  81% (11373/14008)
bower angular#~1.2.x                                                                old-git It seems you are using an old version of git, it will be slower and propitious to errors!
bower angular#~1.2.x                                                               resolved https://github.com/angular/bower-angular.git#1.2.29

# HANG! For hours..
  • I also can see following processes
$ ps aux | grep git

jenkins  23303  0.0  0.0   9776   932 ?        S    15:57   0:00 git ls-remote --tags --heads https://github.com/monospaced/angular-elastic.git
jenkins  23304  0.0  0.0  93156  5612 ?        S    15:57   0:00 git-remote-https https://github.com/monospaced/angular-elastic.git https://github.com/monospaced/angular-elastic.git
jenkins  23503  0.0  0.0   9780  1132 ?        S    15:58   0:00 git clone https://github.com/angular/bower-angular.git -b v1.4.7 --progress . --depth 1
jenkins  23504  0.0  0.0  93160  5612 ?        S    15:58   0:00 git-remote-https https://github.com/angular/bower-angular.git https://github.com/angular/bower-angular.git

All these processes will stay. I cannot see any actions anymore. Another job, or another time: Other repositories, but same type of commands.

  • If one build job is broken, the next one will be probably also.
  • The issue is present on RHEL6, but I could get it on my local OS X, too.
  • I’ve verified the issue without Jenkins being evolved. Actually ridiculous, but I want to be sure not overseen something.
  • *If I manually kill the specific stalling processes (git-remote-https), bower install will finish without any notice and error. But the result are partially incomplete checkouts (actually, no surprise because I’ve killed something).

I’ve already moved the default storage paths to ensure concurrent builds of different projects will not conflict each other:

{
  "storage" : {
    "packages" : ".bower-cache",
    "registry" : ".bower-registry"
  },
  "tmp" : ".bower-tmp"
}

The local workspaces will be destroyed before each build, so there is nothing left of any prior build. Due the specified storage path settings, there is no “global” cache active. I have verified this: ~/.cache/bower is not being present.

Obviously, you will not get up with a solution right now… (but still hoping 😃). And it is not clear it is an actual issue for bower. But it would help me a lot, if there is any possibility to increase the logging level specifically for this dependency clone/install issue. bower install --verbose does not change anything. 😦

About this issue

  • Original URL
  • State: closed
  • Created 8 years ago
  • Comments: 25 (2 by maintainers)

Commits related to this issue

Most upvoted comments

Moved from bower to nmp. Solved.

Might not be the solution, but this occurs if one of your bower packages is installed from a private github repository. It’s not actually hung, it’s just waiting for you to enter the username and password.

@preston Try bower cache clean on same position you did bower install and try again bower install @matt-bailey I think it takes to long. You can watch the output of private-bower or see to the cache directory. if there is the jquery folder, but nothing in except the .git folder try it manually: git clone git://github.com/jquery/jquery.git jquery in your cache directory (defined in bowerConfig.json)

@knalli I don’t work on the project, I was actually checking issues because of a weird problem I was having with bower cache (something like 10-12 packages today ended up cached under the wrong versions on my build box), and I happened to see this issue. The symptoms you described sounded EXACTLY like the symptoms we encountered with the private github.com repos and a username/password prompt. One of the packages would prompt for a username/password, but bower would keep on installing other packages, essentially “hiding” the prompt from the log. If you scroll through the log, you might find a username: somewhere at the beginning or end of another line. At least, if this is the issue. If not, I don’t know what it might be 😦