|
3 | 3 |
|
4 | 4 | **Lambdium allows you to run a Selenium Webdriver script written in Javascript inside of an AWS Lambda function bundled with [Headless Chromium](https://developers.google.com/web/updates/2017/04/headless-chrome).**
|
5 | 5 |
|
6 |
| -*This project is now published on the [AWS Serverless Application Repository](https://serverlessrepo.aws.amazon.com), allowing you to install it in your AWS account with one click. Install in your AWS account [here](https://serverlessrepo.aws.amazon.com/#/applications/arn:aws:serverlessrepo:us-east-1:156280089524:applications~lambdium).* Quickstart instructions are in the [`README-SAR.md` file](https://github.com/smithclay/lambdium/blob/master/README-SAR.md). |
| 6 | +*This project is on the [AWS Serverless Application Repository](https://serverlessrepo.aws.amazon.com), allowing you to install it in your AWS account with one click. Install in your AWS account [here](https://serverlessrepo.aws.amazon.com/#/applications/arn:aws:serverlessrepo:us-east-1:156280089524:applications~lambdium).* Quickstart instructions are in the [`README-SAR.md` file](https://github.com/smithclay/lambdium/blob/master/README-SAR.md). |
7 | 7 |
|
8 |
| -This uses the binaries from the [serverless-chrome](https://github.com/adieuadieu/serverless-chrome) project to prototype running headless chromium with `selenium-webdriver` in AWS Lambda. I've also bundled the chromedriver binary so the browser can be interacted with using the [Webdriver Protocol](https://www.w3.org/TR/webdriver/). |
| 8 | +lambdium lets you run Selenium Webdriver scripts _written in JavaScript_ using a full version of Google Chrome on AWS Lambda. You can use this AWS Lambda function to: |
9 | 9 |
|
10 |
| -#### Background |
| 10 | +* Run many concurrent selenium scripts at the same time without worrying about the infrastructure |
| 11 | +* Configure Cloudwatch Events to run script(s) on a schedule |
| 12 | +* Integrate tests into any event-driven workflows (like CodeDeploy checks, webhooks, or uploads to an S3 bucket) |
11 | 13 |
|
12 |
| -The function interacts with [headless Chromium](https://chromium.googlesource.com/chromium/src/+/lkgr/headless/README.md) process using [chromedriver](https://sites.google.com/a/chromium.org/chromedriver/) and a popular webdriver node.js client library. |
| 14 | +Since this Lambda function is written using node.js, you can run almost any script written for [selenium-webdriver](https://www.npmjs.com/package/selenium-webdriver). Example scripts can be found in the `examples` directory. |
13 | 15 |
|
14 |
| -*This is highly experimental and not all chromedriver functions will work. Check [issues](https://github.com/smithclay/lambdium/issues) for known issues.* |
| 16 | +This uses a special version of Chrome (headless chromium) from the [serverless-chrome](https://github.com/adieuadieu/serverless-chrome) project. |
15 | 17 |
|
16 |
| -Since this Lambda function is written using node.js, you can run almost any script written for [selenium-webdriver](https://www.npmjs.com/package/selenium-webdriver). Example scripts can be found in the `examples` directory. |
| 18 | +*This is highly experimental and not all chromedriver functions will work. Check [issues](https://github.com/smithclay/lambdium/issues) for known issues.* |
17 | 19 |
|
18 | 20 | #### Requirements and Setup
|
19 | 21 |
|
|
0 commit comments