lambda.js 714 B

1234567891011121314151617181920212223
  1. const AWS = require('aws-sdk');
  2. const s3 = new AWS.S3();
  3. const ylt = require('..');
  4. // noinspection JSUnusedLocalSymbols
  5. async function runner({id, url, options = {}}, context) {
  6. console.log(`Processing run #${id} on ${url}`);
  7. const bucket = process.env.RESULT_BUCKET_NAME;
  8. const keyPrefix = `results/${id}`;
  9. const saveFile = async (path, content) => s3.putObject({Bucket: bucket, Key: `${keyPrefix}/${path}`, Body: content})
  10. .promise();
  11. const results = JSON.stringify(await ylt(url, {...options, saveFile}));
  12. results.runId = id;
  13. await saveFile('results.json', results);
  14. return {status: 'processed', id, bucket, keyPrefix};
  15. }
  16. module.exports = {runner}