|
6 days ago | |
---|---|---|
overlay | 1 month ago | |
.drone.yml | 6 days ago | |
.markdownlint.yml | 2 months ago | |
.prettierignore | 3 months ago | |
CHANGELOG.md | 3 weeks ago | |
Dockerfile | 6 days ago | |
README.md | 3 weeks ago | |
renovate.json | 3 weeks ago |
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/local/bin/lhci
/usr/bin/lhci
: This is a modified wrapper to post-process the created report file to prepare an upload.The wrapper /usr/bin/lhci
will do the following:
DIST=$LHCI_BASE_DIR/$UPLOAD_OUTPUT_DIR/dist/
isRepresentativeRun
in the manifest.json
$DIST
To get it working you need to configure the fileupload
in .lighthouserc.yml
command 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
LHCI_BASE_DIR="/drone/src"
LHCI_SERVER_URL="https://example.com/"
docker build -t lhci:latest .
This project is licensed under the MIT License - see the LICENSE file for details.