playwright/utils/flakiness-dashboard/processing/dashboard_raw.js
Andrey Lushnikov fcbfbe6fa1
devops: fix azure function bugs (#4998)
This patch:
- starts processing dashboards serially to avoid hitting node.js azure
  function heap limit
- fixes typo in the new `dashboards_raw` processor
2021-01-13 14:15:38 +03:00

37 lines
1.2 KiB
JavaScript

/**
* Copyright (c) Microsoft Corporation.
*
* Licensed under the Apache License, Version 2.0 (the 'License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
const {SimpleBlob} = require('./utils.js');
async function processDashboardRaw(context, report) {
const timestamp = Date.now();
const dashboardBlob = await SimpleBlob.create('dashboards', `raw/${report.metadata.commitSHA}.json`);
const dashboardData = (await dashboardBlob.download()) || [];
dashboardData.push(report);
await dashboardBlob.uploadGzipped(dashboardData);
context.log(`
===== started dashboard raw =====
SHA: ${report.metadata.commitSHA}
URL: ${report.metadata.runURL}
timestamp: ${report.metadata.commitTimestamp}
===== complete in ${Date.now() - timestamp}ms =====
`);
}
module.exports = {processDashboardRaw};