TravisCI is hitting request limits when downloading TruffleRuby

When using:

language: ruby
rvm:
  - truffleruby-head

(from https://docs.travis-ci.com/user/languages/ruby/)

What happens is this will cause RVM to download truffleruby-head from
https://github.com/ruby/truffleruby-dev-builder/releases/latest/download/truffleruby-head-ubuntu-18.04.tar.gz

Since TravisCI machines keep running and run many jobs, they end up going above the 60 requests per hour per IP and hit GitHub’s limits for unauthenticated downloads.

I’m not sure what’s the best way to solve this, but it is becoming increasingly problematic.

I also opened an issue on the RVM tracker with a bit more details:

I think the possibilities are:

  • Mirroring TruffleRuby builds on https://rubies.travis-ci.org/ like other Rubies to avoid hitting GitHub too often. truffleruby-head is updated about once a day. truffleruby releases are once every 3 months.
  • Use GitHub authentication on the RVM or TravisCI side for the download to have higher limits.
  • Using a CDN or another mirror, not sure if there is a good option there.
  • Other ideas?
Imprint