Custom image for lighthouse-ci
Custom wrapper Docker image for lighthouse-ci.
There are two wrapper scripts around the lhci command you could use:
/usr/bin/lhci-official: This will simply forward your command to the official binary at
/usr/bin/lhci: This is a modified wrapper to post-process the created report file to prepare an upload.
/usr/bin/lhci will do the following:
- find all files flagged with
- copy those files to
To get it working you need to configure the
.lighthouserc.ymlcommand line configuration will not work:
--- ci: [...] upload: target: filesystem # has to be a relative path to the .lighthouserc.yml location outputDir: lhci_reports
What you will get is the following file structure which could be used as an upload source:
lhci_reports/dist/ ├── 9cf658e2-202007160745.html ├── f33fa4c4-202007160745.html └── ffae8d3e-202007160745.html # <FILENAME_HASH>-<DATETIME>.html
You will also get the target URLs in your CI output:
/usr/bin/lhci autorun [...] All results processed! Dumping 6 reports to disk at /drone/src/lhci_reports... Done writing reports to disk. Done running autorun. Post-process report files... Report for http://localhost:43901/ will be uploaded to https://example.com/9cf658e2-202007160745.html Report for http://localhost:43901/404.html will be uploaded to https://example.com/ffae8d3e-202007160745.html Report for http://localhost:43901/posts/ will be uploaded to https://example.com/f33fa4c4-202007160745.html
docker run -v $(pwd)/public:/drone/src lhci autorun # or pass arguments to lhci docker run -v $(pwd)/public:/drone/src lhci autorun --upload.target=temporary-public-storage
docker build -t lhci:latest .
This project is licensed under the MIT License - see the LICENSE file for details.