Closed cxbrooks closed 6 years ago
Under Ubuntu 17.10, I was able to replicate a slightly different error by trying to upload a 607Mb file to GitHub Releases
1) I created an test repo: dpl-test
2) I downloaded dpl-1.9.5 and installed it
3) I had previously set up an api-key
4) In a local copy of my dpl-test repo, I downloaded a large test file wget https://chess.eecs.berkeley.edu/ptexternal/nightly/builds/builds/ptII11_0_devel_setup_windows-2018-03-10.exe
5) I ran the command:
cxh@wessel:~/src/dpl-test$ dpl --provider=releases --file=ptII11_0_devel_setup_windows_64-2018-03-10.exe --api-key=Elided --repo=cxbrooks/dpl-test --skip-cleanup=true
Installing deploy dependencies
Preparing deploy
Logged in as Christopher Brooks
Deploying to repo: cxbrooks/dpl-test
Current tag is:
Deploying application
(Octokit::ServerError)
<head><title>504 Gateway Time-out</title></head>
<body bgcolor="white">
<center><h1>504 Gateway Time-out</h1></center>
<hr><center>nginx</center>
</body>
</html>
from /var/lib/gems/2.3.0/gems/faraday-0.14.0/lib/faraday/response.rb:9:in `block in call'
from /var/lib/gems/2.3.0/gems/faraday-0.14.0/lib/faraday/response.rb:61:in `on_complete'
from /var/lib/gems/2.3.0/gems/faraday-0.14.0/lib/faraday/response.rb:8:in `call'
from /var/lib/gems/2.3.0/gems/octokit-4.6.2/lib/octokit/middleware/follow_redirects.rb:73:in `perform_with_redirection'
from /var/lib/gems/2.3.0/gems/octokit-4.6.2/lib/octokit/middleware/follow_redirects.rb:61:in `call'
from /var/lib/gems/2.3.0/gems/faraday-0.14.0/lib/faraday/rack_builder.rb:143:in `build_response'
from /var/lib/gems/2.3.0/gems/faraday-0.14.0/lib/faraday/connection.rb:387:in `run_request'
from /var/lib/gems/2.3.0/gems/faraday-0.14.0/lib/faraday/connection.rb:175:in `post'
from /var/lib/gems/2.3.0/gems/sawyer-0.8.1/lib/sawyer/agent.rb:94:in `call'
from /var/lib/gems/2.3.0/gems/octokit-4.6.2/lib/octokit/connection.rb:154:in `request'
from /var/lib/gems/2.3.0/gems/octokit-4.6.2/lib/octokit/client/releases.rb:94:in `upload_asset'
from /var/lib/gems/2.3.0/gems/dpl-releases-1.9.5/lib/dpl/provider/releases.rb:138:in `upload_file'
from /var/lib/gems/2.3.0/gems/dpl-releases-1.9.5/lib/dpl/provider/releases.rb:119:in `block in push_app'
from /var/lib/gems/2.3.0/gems/dpl-releases-1.9.5/lib/dpl/provider/releases.rb:109:in `each'
from /var/lib/gems/2.3.0/gems/dpl-releases-1.9.5/lib/dpl/provider/releases.rb:109:in `push_app'
from /var/lib/gems/2.3.0/gems/dpl-1.9.5/lib/dpl/provider.rb:194:in `block in deploy'
from /var/lib/gems/2.3.0/gems/dpl-1.9.5/lib/dpl/cli.rb:41:in `fold'
from /var/lib/gems/2.3.0/gems/dpl-1.9.5/lib/dpl/provider.rb:194:in `deploy'
from /var/lib/gems/2.3.0/gems/dpl-1.9.5/lib/dpl/cli.rb:32:in `run'
from /var/lib/gems/2.3.0/gems/dpl-1.9.5/lib/dpl/cli.rb:7:in `run'
from /var/lib/gems/2.3.0/gems/dpl-1.9.5/bin/dpl:5:in `<top (required)>'
from /usr/local/bin/dpl:22:in `load'
from /usr/local/bin/dpl:22:in `<main>'
cxh@wessel:~/src/dpl-test$
One thing of note is that this errored after "Deploying application", whereas the Travis-ci build failure errored before that.
I've been seeing the same issue. https://travis-ci.org/specify/specify6/builds/362769264
@benanhalt How large are the files that you are deploying? Mine are fairly large, the test case above failed for a 579Mb file.
Interestingly, the deploy seems to work at night, see https://travis-ci.org/icyphy/ptII/jobs/361903257
See that build for the sizes of files that worked.
https://travis-ci.org/icyphy/ptII/jobs/362769335 failed at or near this file:
470155196 Apr 5 18:52 ptII11.0.devel.setup.linux.tar.gz
There are ten pretty large files, about 140MB each.
I'm seeing the same thing periodically, uploading three files with the larger one being around 600mb. If I retry the builds several times it'll eventually go through.
https://travis-ci.org/rcbops/rpc-deploy-utility-image/builds/370152780
I've been taking a look at this and I found this "related" issue in Octokit: https://github.com/octokit/octokit.rb/issues/769, which doesn't bring much extra information, though.
Also, according to Ruby's Net::HTTP:
read_timeout[R]
Number of seconds to wait for one block to be read (via one read(2) call).
Any number may be used, including Floats for fractional seconds.
If the HTTP object cannot read data in this many seconds, it raises a
Net::ReadTimeout exception. **The default value is 60 seconds.**
(http://ruby-doc.org/stdlib-2.1.2/libdoc/net/http/rdoc/Net/HTTP.html)
Not sure if this timeout is being overwritten through any of the middle layers, or if all the cases here are indeed stumbling upon the 60 second limit 🤔. It's a bit difficult to say, since the timing for these requests is not being logged AFAIK.
@BanzaiMan what do you think about adding some debugging messages on time around the lines that use Octokit's upload_asset
, and/or maybe try playing with the connection options through Octokit (see: https://github.com/octokit/octokit.rb/pull/235)?
Getting the same issue. The binaries trying to be uploaded in my case are over 1GB.
Having the same issue for almost a month. Sadly, going to switch from Travis to something else because of tons of issues with testing and deployment.
@Deilan Please feel free to submit issues for things that are interfering with your usage. Also, what sorts of alternatives are you going to try? Travis is missing some of the features of Jenkins, which I regret, but Travis-ci.org is free, and I need to move off some non-free servers, hence my choice of Travis. I've had reasonable success getting my multihour build working, my notes are at https://wiki.eecs.berkeley.edu/ptexternal/Main/Travis
About this bug, it seems like the bug is intermittent and somewhat based on time of day. Travis cron jobs seem to work more reliably, see my cron jobs at https://travis-ci.org/icyphy/ptII/builds
For those having issues with releases, you may find this useful:
https://gist.github.com/stefanbuck/ce788fee19ab6eb0b4447a85fc99f447
We are also hit by this issue having two not so big files uploaded (63 MB and 274 MB). It seems like files are actually uploaded but a release stays in draft.
Same here, fails every time, large release file (319 M) : https://travis-ci.org/tesch1/OpenVnmrJ/jobs/382637038
@cxbrooks
Please feel free to submit issues for things that are interfering with your usage.
I do all the time. The vast majority of them became stale and were closed without getting fixed.
Also, what sorts of alternatives are you going to try?
Some solutions available on-premise (like Jenkins or TeamCity) or other SaaS with GitHub integration (like CircleCI). We have private repositories hosted on GitHub.
This seems to be fixed, or at least it has not bitten me for 17 days since https://travis-ci.org/icyphy/ptII/jobs/382777902
I'm not sure what changed, but I'll close this and reopen it if it reappears.
If anyone else is still being bitten by this, then by all means please reopen it.
The error occurred again, see https://travis-ci.org/icyphy/ptII/jobs/392745520
And again, see https://travis-ci.org/icyphy/ptII/jobs/394816449
Still an issue for me.
A potential fix has been released. I am closing this issue for now, let us know if the problems would persist.
I'm uploading fairly large files to GitHub Releases using deploy and I'm seeing
Any ideas?
Details below.
https://travis-ci.org/icyphy/ptII/jobs/359403072 failed during deploy.
The deploy part of my .travis.yml looks like
The files that are to be uploaded are large (between 261Mb and 613Mb)
The failure from https://travis-ci.org/icyphy/ptII/jobs/359403072 is below:
I saw a similar failure with another job kepler-build #11
I'm going to attempt to use dpl from the command line to reproduce this, but I was wondering if anyone had any ideas?