The purpose of this project is to analyze the performance of a website before and after a change.
Runtime application code for the Regression Analysis lambda.
Its responsibility is to:
- Get a URL
- Open headless chrome
- Start a CDP session
- Navigate to the URL
- Wait for the page to load
- Collect performance metrics
- Edit
index.ts
file - Run
npm run build
- Change directories to
../infra
cdk deploy
Infrastructure as code for the Regression Analysis lambda.
Its responsibility is to:
- Create an S3 bucket to store the runtime code and chrome binary
- Create a lambda function
- Create a role for the lambda function that allows it to read the chrome binary from S3
- Edit
lib/poc-stack.ts
file - Run
npm run build
Github action to run the Regression Analysis lambda when a pull request is opened/updated.
Its responsibility is to:
- Send URL to the lambda function
- Get the results from the lambda function
- Post the results as a comment on the pull request
- Edit
/src/main.ts
- Run
npm run all
, this will build, package, and test the action