serverless/lib/plugins/aws/utils/findAndGroupDeployments.js
2021-01-04 16:21:24 +01:00

21 lines
599 B
JavaScript

'use strict';
const _ = require('lodash');
module.exports = (s3Response, prefix, service, stage) => {
if (s3Response.Contents.length) {
const regex = new RegExp(`${prefix}/${service}/${stage}/(.+-.+-.+-.+)/(.+)`);
const s3Objects = s3Response.Contents.filter((s3Object) => s3Object.Key.match(regex));
const names = s3Objects.map((s3Object) => {
const match = s3Object.Key.match(regex);
return {
directory: match[1],
file: match[2],
};
});
const grouped = _.groupBy(names, 'directory');
return Object.values(grouped);
}
return [];
};