You can no longer install Chrome stable on Trusty machines

Hi folks :wave:

I had noticed a bug in one of our tests that seemed to be related to the version of Chrome being superold. I thought that was odd because we were defining chrome: stable in our travis config.

I went to the job to investigate, and at first glance, it seemed like there were no errors at the install_chrome stage :thinking: strangeā€¦ but when you expand that step it seemed like there was in fact an error installing chrome:

$ export CHROME_SOURCE_URL=https://dl.google.com/dl/linux/direct/google-chrome-stable_current_amd64.deb
Installing Google Chrome stable
0.30s$ wget --no-verbose -O /tmp/$(basename $CHROME_SOURCE_URL) $CHROME_SOURCE_URL
2020-05-08 21:48:52 URL:https://dl.google.com/dl/linux/direct/google-chrome-stable_current_amd64.deb [66985784/66985784] -> "/tmp/google-chrome-stable_current_amd64.deb" [1]
dpkg-deb: error: archive '/tmp/google-chrome-stable_current_amd64.deb' has premature member 'control.tar.xz' before 'control.tar.gz', giving up
dpkg: error processing archive /tmp/google-chrome-stable_current_amd64.deb (--install):
 subprocess dpkg-deb --control returned error exit status 2
Errors were encountered while processing:
 /tmp/google-chrome-stable_current_amd64.deb

So the problems with this are twofold:

  1. Itā€™s clearly a bug that needs to be fixed somewhere :joy:
  2. Itā€™s odd that it didnā€™t fail the build to have Chrome stable fail to install :thinking:

Even if we wanted to take the approach that a Chrome install failure was not in fact a build failure, there should be some sort of indication that it failed in the build history so that we can point developers in the right direction :thinking:

The build that failed if anyone is interested is here: https://travis-ci.org/github/ember-learn/ember-website/builds/683575818

Thanks for the reference @native-api but I donā€™t think this is a ā€œsolutionā€ to my issue :thinking:

It may be true that Chrome has dropped support for Trusty with their default deb package, but this is really a Travis API thing. Travis hasnā€™t dropped support for Trusty yet, so I would expect the config to use chrome: stable to still work while that support is still active.

Does that make sense?

What Travis does under the hood to solve this is an entirely different issue :+1:

The fix, if any, must come from Google. If the stable release of Chrome no longer supports Trusty, we cannot support it, Iā€™m afraid. We support Trusty image, but not everything would work as the world moves past it.

We can instruct the Chrome addon to fail if the installation fails. The rationale for not failing is that the image has a version of Chrome, which, at that time, was a reasonable one to test against. Perhaps this is no longer the desirable behavior.

I think this is probably the case now. I would suggest that itā€™s reasonable to either fail the build or make it very obvious that the install of Chrome didnā€™t work, which right now itā€™s not visible in the UI at all unless you expand the install step

1 Like