drone-plugins / drone-deis

Drone plugin for deploying to Deis
http://plugins.drone.io/drone-plugins/drone-deis
Apache License 2.0
0 stars 1 forks source link

Build fail due to timeout #4

Open massover opened 7 years ago

massover commented 7 years ago

Here is a snippet of the log:

[info] Pulling image plugins/drone-deis:latest
Drone Deis Plugin built from 29de7f1

.....

remote: GG       Running migrations:        
remote: GG       No migrations to apply.        
remote: GG-----> Discovering process types        
remote: GG       Procfile declares types -> web, worker        
remote: GG-----> Compiled slug size is 814M        
remote: ---> ---> GBuild complete.        
remote: GLaunching App...        
fatal: The remote end hung up unexpectedly
fatal: The remote end hung up unexpectedly
$ git remote rm deploy
exit status 128
[info] build failed (exit code 1)

The slug is very large at 814M due to nlp libraries, so it's expected that it will take a long time to finish the deploy to Deis. The actual deploy on Deis does finish. It is my drone builds that are failing. I figure maybe there is some ssh timeout setting that needs to be configured in the docker container? If you could provide any more info to help me try and debug this, I would greatly appreciate it! If you need any more information let me know.

Joshua-Anderson commented 7 years ago

This is probably a timeout in deis itself (probably your load balancer). What version of deis are you using?

massover commented 7 years ago

I am using deis v2.4.0

I have the load balancer idle timeout set to 2400 seconds on my aws load balancer.

Also I have already increased the nginx tcpTimeout for the deis-builder

kubectl annotate service deis-builder router.deis.io/nginx.tcpTimeout=24000s --namespace=deis

Joshua-Anderson commented 7 years ago

814MB is a vary large slug, but even then 2400 sec should be enough. Is your app successfully starting and not in crashLoopBackoff?

massover commented 7 years ago

Yes, it is successfully starting. It's running, and it has the newest code from my latest git commit. I can verify it because it's a brand new route that didn't exist before the code was pushed.

tboerger commented 7 years ago

But drone just executes git commands and nothing else

massover commented 7 years ago

@tboerger

I am only guessing right now, but I that the ssh timeout occurs due to the git push. The deploy is taking a long time because the slug is really large. The git push command ends up timing out causing the build to break

[info] Pulling image plugins/drone-deis:latest
Drone Deis Plugin built from 29de7f1
$ git remote add deploy ssh://git@deis.controller.com:2222/project.git
$ git push deploy HEAD:master --force

....deploying....

fatal: The remote end hung up unexpectedly
fatal: The remote end hung up unexpectedly
tboerger commented 7 years ago

The remote end hung up...

stonechen03 commented 5 years ago

drone-ssh:Parameter Reference timeout Timeout is the maximum amount of time for the TCP connection to establish. command_timeout Command timeout is the maximum amount of time for the execute commands, default is 60 secs.