Comments (9)
Wouldn't this introduce different behaviour when testing on Travis vs. testing locally?
from travis-cookbooks.
In this particular case, it just means travis lags behind one more minute than regular users do in case of a package update. So yes it introduces a small discrepancy, but it saves us a bunch of bandwidth and as said it's mostly a stopgap solution until travis can have a proper mirror (which could be updated more frequently).
In any case I think it might help with the build speed overall, if all resources that are publicly cacheable end up being cached by the proxy. I'm not sure how much traffic is actually flowing and how much of it is cacheable, but it sounds harmless enough to me.
from travis-cookbooks.
There is about 1000 discussions about proxying out there. We tried it, it introduces more problems than solves. For packaging tools that support mirroring (Maven, Pip, cpanm, NPM), we will roll out mirrors in the next few months. For those that do not (RubyGems, not sure about Composer), we will try a caching proxy at some point again but won't be exposed via env variables.
from travis-cookbooks.
Our Maven mirror works very well for tools that support it (Maven, Leiningen 1, soon Leiningen 2). We are also almost done with a cpan mirror.
from travis-cookbooks.
I would be happy to hear more specifics about the issues it introduces, but down the line it's up to you guys. If you would rather set up a mirror, how should we proceed? We don't have a "one-click" setup yet for that, but it is possible to achieve without too setup much work, then some config presets on the travis workers should do.
from travis-cookbooks.
@Seldaek rubygems.org uses Amazon CloudFront to distribute gems and it has broken implementation of keep-alive which confuses Varnish and causes gem installations to fail with very a misleading error message. Even if this happens 10-20 times a day, it is not worth it for us, even though it easily shaved 50-180 seconds of installation time for larger projects. It was in July 2011 so we will take another round soon.
We can either use Varnish for Composer or do what you explain to set up a mirror on files.travis-ci.org (where maven.travis-ci.org is hosted). If it is not "one click", that does not matter as long as we can configure composer globally (per OS user) to use it.
from travis-cookbooks.
@michaelklishin Ok, should I get in touch with you for the composer mirror or who is taking care of such things?
from travis-cookbooks.
I do
from travis-cookbooks.
@Seldaek my email is on my github page, please do get in touch
from travis-cookbooks.
Related Issues (20)
- docker-ce installation on ppc64le HOT 1
- Weekly Digest (9 November, 2018 - 16 November, 2018)
- What version of chef-client runs these cookbooks?
- usr/bin HOT 1
- jq 1.5 in Focal HOT 1
- Add Hadolint - Haskell Dockerfile Linter
- Android builds break when updating to android gradle plugin 7 HOT 1
- T bomb
- #https://story.snapchat.com/@l3454
- Set Travis to always use the latest versions of JDKs with all patches/updates
- Builds broken by the newly released rabbitmq-server 3.7.0
- Foodcritic failures on master after chef-dk 2.4 release (which includes foodcritic 12.x) HOT 1
- Install gRPC PHP extension (disabled, by default)
- Ensure scripts invoked from /etc/profile.d (recursively) are sh-compatible HOT 3
- Android API 26 & 27
- Java: Switch to `bach` for installing and managing JDKs HOT 4
- Upgrade the nodejs nvm versions of cookbook HOT 3
- jdk_switcher: "Sorry, but JDK 'oraclejdk10' is not known." HOT 1
- Backport maven repo update
- Update Maven version in Travis build environment HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from travis-cookbooks.