Add chromedriver and google-chrome to OSX images

Description of the feature request

brew cask install chromedriver google-chrome

Use case / for what or how I would use it

These are required for angular tests. They are slow to install on every build and are not cacheable.

Thanks for the #feature-request! :slight_smile:

Failed build:

The issue is most likely that Google updated something and homebrew is behind. But I’m stuck diagnosing that and replaying builds.

All builds that depend on this are now broken until homebrew catches up.

Having the world’s #1 browser installed by default makes sense, no?

As of this moment, homebrew installs incompatible versions of chrome and chromedriver - but by then many builds will have failed.

This could be remedied by:

  1. fixing google’s release practices - hah.
  2. fixing homebrew’s (a maintained by volunteer effort project) update cycle
  3. maintain a stable, relatively up-to-date, combination of installed packages in the image itself

[20:50:35] I/launcher - Running 1 instances of WebDriver
[20:50:35] I/direct - Using ChromeDriver directly…
[20:50:38] E/launcher - session not created: This version of ChromeDriver only supports Chrome version 76
(Driver info: chromedriver=76.0.3809.68 (420c9498db8ce8fcd190a954d51297672c1515d5-refs/branch-heads/3809@{#864}),platform=Mac OS X 10.14.6 x86_64)
[20:50:38] E/launcher - SessionNotCreatedError: session not created: This version of ChromeDriver only supports Chrome version 76
(Driver info: chromedriver=76.0.3809.68 (420c9498db8ce8fcd190a954d51297672c1515d5-refs/branch-heads/3809@{#864}),platform=Mac OS X 10.14.6 x86_64)
at Object.checkLegacyResponse (/Users/vagrant/git/node_modules/selenium-webdriver/lib/error.js:546:15)
at parseHttpResponse (/Users/vagrant/git/node_modules/selenium-webdriver/lib/http.js:509:13)
at doSend.then.response (/Users/vagrant/git/node_modules/selenium-webdriver/lib/http.js:441:30)
at process._tickCallback (internal/process/next_tick.js:68:7)
From: Task: WebDriver.createSession()
at Function.createSession (/Users/vagrant/git/node_modules/selenium-webdriver/lib/webdriver.js:769:24)
at Function.createSession (/Users/vagrant/git/node_modules/selenium-webdriver/chrome.js:761:15)
at Direct.getNewDriver (/Users/vagrant/git/node_modules/protractor/built/driverProviders/direct.js:77:33)
at Runner.createBrowser (/Users/vagrant/git/node_modules/protractor/built/runner.js:195:43)
at q.then.then (/Users/vagrant/git/node_modules/protractor/built/runner.js:339:29)
at _fulfilled (/Users/vagrant/git/node_modules/protractor/node_modules/q/q.js:834:54)
at /Users/vagrant/git/node_modules/protractor/node_modules/q/q.js:863:30
at Promise.promise.promiseDispatch (/Users/vagrant/git/node_modules/protractor/node_modules/q/q.js:796:13)
at /Users/vagrant/git/node_modules/protractor/node_modules/q/q.js:556:49
at runSingle (/Users/vagrant/git/node_modules/protractor/node_modules/q/q.js:137:13)