diff --git a/docker-compose.yml b/docker-compose.yml index c1f5c26093c..5e1c57b92a2 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -164,7 +164,7 @@ services: DATABASE_URL: postgresql://openproject:openproject@db-test/openproject DATABASE_CLEANER_ALLOW_REMOTE_DATABASE_URL: "true" SELENIUM_GRID_URL: http://selenium-hub:4444/wd/hub - CHROME_URL: http://cuprite-chrome:3333 + CHROME_WS_URL: ws://cuprite-chrome:3000/chrome CAPYBARA_SERVER_PORT: 3000 CAPYBARA_DYNAMIC_BIND_IP: 1 CAPYBARA_APP_HOSTNAME: backend-test @@ -232,12 +232,11 @@ services: cuprite-chrome: # Currently, Apple M1 is only supported in unnumbered "latest" versions. # See https://github.com/browserless/chrome/issues/1393 - image: browserless/chrome:latest + image: ghcr.io/browserless/chrome:latest networks: - testing environment: - # By default, it uses 3000, which is typically used by Rails. - PORT: 3333 + HOST: cuprite-chrome # Set connection timeout to avoid timeout exception during debugging # https://docs.browserless.io/docs/docker.html#connection-timeout CONNECTION_TIMEOUT: 600000 diff --git a/spec/support/cuprite_setup.rb b/spec/support/cuprite_setup.rb index eb9a36b0e77..be994dc6c70 100644 --- a/spec/support/cuprite_setup.rb +++ b/spec/support/cuprite_setup.rb @@ -75,8 +75,14 @@ def register_better_cuprite(language, name: :"better_cuprite_#{language}") options = options.merge(slowmo: ENV["OPENPROJECT_TESTING_SLOWDOWN_FACTOR"]) end + if ENV["CHROME_URL"].present? && ENV["CHROME_WS_URL"].present? + raise "Both CHROME_URL and CHROME_WS_URL were passed. Only one can be accepted at a time." + end + if ENV["CHROME_URL"].present? options = options.merge(url: ENV["CHROME_URL"]) + elsif ENV["CHROME_WS_URL"].present? + options = options.merge(ws_url: ENV["CHROME_WS_URL"]) end browser_options = {