Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Trusty beta: Add support for dependency/directory caching #4997

Closed
edmorley opened this issue Oct 22, 2015 · 6 comments
Closed

Trusty beta: Add support for dependency/directory caching #4997

edmorley opened this issue Oct 22, 2015 · 6 comments
Assignees

Comments

@edmorley
Copy link

We've had to switch our open-source project from the container infra to the Trusty beta to work around #1986 (since we cannot use the apt whitelist feature due to travis-ci/apt-package-safelist#1206 (comment)).

Unfortunately this means we also lose support for dependency caching, resulting in a 3 minute increase in the setup time for each job (previously it was < 10 seconds).

I know the Trusty beta is still a WIP, but I couldn't find a ticket for adding support for caching, so thought I'd create one.

Thanks :-)

@joshk
Copy link
Contributor

joshk commented Oct 22, 2015

Thanks for creating the ticket.

We have this on our direct roadmap but I don't have an ETA sorry.

edmorley pushed a commit to mozilla/treeherder that referenced this issue Oct 22, 2015
Stage/production/Vagrant/Heroku's RDS all use mysql 5.6, however Travis
is currently running v5.5. Installing mysql 5.6 manually on the Travis
container infra is currently broken:
travis-ci/apt-package-safelist#1206 (comment)

To use sudo (for apt-get) we either have to fall back to the legacy
non-container infra, or else use the new Trusty beta infra:
http://blog.travis-ci.com/2015-10-14-opening-up-ubuntu-trusty-beta/
http://docs.travis-ci.com/user/trusty-ci-environment/#Runtimes

The Trusty beta infra is also non-container, but at least isn't EOL.
Unfortunately similar to the legacy non-container infra, it doesn't
offer caching, so incurs a setup time penalty of approx 3 minutes
(including the mysql 5.6 install, npm install and peep install). See:
travis-ci/travis-ci#4997

If/when the container infra uses mysql 5.6 by default, or the bug
preventing installing it using the apt travis.yml option is fixed, we
should switch back to the container infra, to speed up the Travis run.

In this commit, we use `--user` with the peep install, since the
non-container infra doesn't set up a virtualenv, and we cannot use sudo
due to:
travis-ci/travis-ci#4989

In addition, the current user ("travis") now doesn't have permissions to
create the Treeherder DB, so we have to use `-u root` (the password is
blank).

The new infra is running Python 2.7.10 (rather than the v2.7.9 of the
container infra) which now matches what runs in the Vagrant environment.
In future bugs we should update stage/prod and Heroku to 2.7.10 too.
@edmorley
Copy link
Author

No problem - many thanks :-)

@XhmikosR
Copy link

XhmikosR commented Mar 7, 2016

Are there any news about this? We need java 8 in Bootstrap and the easiest solution was to use the trusty image. But without caching, builds have been a lot slower. :/

@patlola
Copy link

patlola commented Apr 3, 2016

@joshk @edmorley any update on this ?

@BanzaiMan BanzaiMan self-assigned this Apr 6, 2016
@BanzaiMan
Copy link
Contributor

We are working on this. Getting close to general availability, but no ETA just quite yet.

@BanzaiMan
Copy link
Contributor

https://blog.travis-ci.com/2016-05-03-caches-are-coming-to-everyone

It's available now!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants