lighthousebot
lighthousebot copied to clipboard
LHError: INVALID_URL
I was hoping to run lighthouse in my CI so I tried to build the image from the Dockerfile on master. I had to apply the fix as per PR https://github.com/GoogleChromeLabs/lighthousebot/pull/84 (so it would be nice if the PR was approved and merged) and when i get a working image I run it using docker-compose (no much difference from docker on its own but it is just nice as it can call other containers using service references) with the following setup:
speedtest:
#image: justinribeiro/lighthouse
build: docker/lighthouse_ci
volumes:
- reports:/home/chrome/reports
# command: ['lighthouse', '--chrome-flags="--headless --disable-gpu "', 'http://web/component/FullVerticalLayout']
command: ['lighthouse_ci', 'http://web/component/FullVerticalLayout']
depends_on:
- web
cap_add:
- SYS_ADMIN
and when running it I get error
$ docker-compose logs speedtest
Attaching to myreviews-styleguide_speedtest_1
speedtest_1 | Tue, 31 Mar 2020 17:17:48 GMT ChromeLauncher No debugging port found on port 9222, launching a new Chrome.
speedtest_1 | Tue, 31 Mar 2020 17:17:48 GMT ChromeLauncher Waiting for browser.
speedtest_1 | Tue, 31 Mar 2020 17:17:48 GMT ChromeLauncher Waiting for browser...
speedtest_1 | Tue, 31 Mar 2020 17:17:48 GMT ChromeLauncher Waiting for browser.....
speedtest_1 | Tue, 31 Mar 2020 17:17:49 GMT ChromeLauncher Waiting for browser.......
speedtest_1 | Tue, 31 Mar 2020 17:17:49 GMT ChromeLauncher Waiting for browser.......✓
speedtest_1 | Tue, 31 Mar 2020 17:17:49 GMT config:warn IFrameElements gatherer requested, however no audit requires it.
speedtest_1 | Tue, 31 Mar 2020 17:17:49 GMT config:warn MainDocumentContent gatherer requested, however no audit requires it.
speedtest_1 | Tue, 31 Mar 2020 17:17:49 GMT ChromeLauncher Killing Chrome instance 27
speedtest_1 | Runtime error encountered: The URL you have provided appears to be invalid.
speedtest_1 | LHError: INVALID_URL
speedtest_1 | at Function.run (/usr/local/lib/node_modules/lighthouse/lighthouse-core/runner.js:78:17)
speedtest_1 | at lighthouse (/usr/local/lib/node_modules/lighthouse/lighthouse-core/index.js:48:17)
speedtest_1 | at runLighthouse (/usr/local/lib/node_modules/lighthouse/lighthouse-cli/run.js:193:32)
speedtest_1 | at process._tickCallback (internal/process/next_tick.js:68:7)
http://web/component/FullVerticalLayout is a perfectly healthy and working url as in docker-compose the service with name web is mapped as a local resolved domain.
For instance if i exec in one of the containers i can easily curl the web service/container
I have no name!@022c7770bd41:/var/www/html$ curl -fv http://web/component/FullVerticalLayout?render=1 | head
* Expire in 0 ms for 6 (transfer 0x55bde8e01dc0)
* Expire in 1 ms for 1 (transfer 0x55bde8e01dc0)
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 1 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 1 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 1 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 1 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 1 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 1 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 2 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 2 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 2 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Expire in 0 ms for 1 (transfer 0x55bde8e01dc0)
* Trying 172.26.0.6...
* TCP_NODELAY set
* Expire in 200 ms for 4 (transfer 0x55bde8e01dc0)
* Connected to web (172.26.0.6) port 80 (#0)
> GET /component/FullVerticalLayout?render=1 HTTP/1.1
> Host: web
> User-Agent: curl/7.64.0
> Accept: */*
>
< HTTP/1.1 200 OK
< Server: nginx/1.17.9
< Content-Type: text/html; charset=UTF-8
< Transfer-Encoding: chunked
< Connection: keep-alive
< X-Powered-By: PHP/7.3.15
< Cache-Control: no-cache, private
< Date: Tue, 31 Mar 2020 17:30:09 GMT
<
{ [2549 bytes data]
100 2542 0 2542 0 0 25676 0 --:--:-- --:--:-- --:--:-- 25676
* Connection #0 to host web left intact
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
...
Is it possible to run lighthouse ci in CI style and so with a perfectly working url like the one above?