Deployment of Lighthouse CI through AWS-CDK onto AWS Fargate.
cdk deploylhci wizard will yield something similar to:troy:/mnt/c/coderepo/lhci-fargate$ lhci wizard
? Which wizard do you want to run? new-project
? What is the URL of your LHCI server? https://lhci.example.com
? What would you like to name the project? tf-fargate
? Where is the project's code hosted? https://github.com/example/tf-fargate
? What branch is considered the repo's trunk or main branch? main
Create a .lighthouserc.js file:
module.exports = {
ci: {
collect: {
url: "https://www.example.com",
maxAutodiscoverUrls: 3,
numberOfRuns: 2,
settings: {
chromeFlags: "--no-sandbox",
onlyCategories: ["performance", "best-practices", "accessibility", "seo"],
skipAudits: ['uses-http2', 'uses-long-cache-ttl', 'link-text']
}
},
upload: {
target: 'lhci',
serverBaseUrl: 'https://lhci.example.com',
token: 'example-000-example',
ignoreDuplicateBuildFailure: true,
allowOverwriteOfLatestBranchBuild: true
},
},
};
Add the buildToken to the .lighthouserc.js file to the token value
Browse to the LHCI server (for example, https://lhci.example.com and click the gear in the upper-hand left corner)
Add in the adminToken to the field in the settings for the LH project
Run lhci autorun to run the lh-cli with the settings defined in the .lighthouserc.js file
PS C:\coderepo\lhci-fargate> lhci autorun
✅ .lighthouseci/ directory writable
✅ Configuration file found
✅ Chrome installation found
⚠️ GitHub token not set
✅ Ancestor hash determinable
✅ LHCI server reachable
✅ LHCI server API-compatible
✅ LHCI server token valid
✅ LHCI server can accept a build for this commit hash
Healthcheck passed!
Running Lighthouse 2 time(s) on https://www.troydieter.com
Run #1...done.
Run #2...done.
Done running Lighthouse!
Saving CI project tf-fargate (780548b4-d479-4403-9500-e57f87b64d8d)
Saving CI build (9e77cb40-546e-4c64-b7b1-0ad538255d9b)
Saved LHR to https://lhci.troydieter.com (2d027171-faf1-40af-bbdb-a4cc8a04a4d5)
Saved LHR to https://lhci.troydieter.com (eef82c8e-cf94-4b3d-a76e-b4e7044e2096)
Done saving build results to Lighthouse CI
View build diff at https://lhci.troydieter.com/app/projects/tf-fargate/compare/9e77cb40-546e-4c64-b7b1-0ad538255d9b
No GitHub token set, skipping GitHub status check.
Done running autorun.
Observe the results on the lhci server: https://lhci.example.com


EFS filesystems when creating and destroying this CDK app (they may persist)EIP's that may residednpm run build compile typescript to jsnpm run watch watch for changes and compilenpm run test perform the jest unit testscdk deploy deploy this stack to your default AWS account/regioncdk diff compare deployed stack with current statecdk synth emits the synthesized CloudFormation templateGenerated using TypeDoc