@csermet/multiprovider
Version:
cloud-graph provider plugin for AWS used to fetch AWS cloud data.
51 lines (50 loc) • 2 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.formatReplicationStatus = void 0;
const sdk_1 = require("@cloudgraph/sdk");
const format_1 = require("../../utils/format");
const formatReplicationStatus = (replicationStatus) => {
return (replicationStatus?.map(rs => ({
id: sdk_1.generateUniqueId({
...rs,
}),
region: rs.Region,
kmsKeyId: rs.KmsKeyId,
status: rs.Status,
statusMessage: rs.StatusMessage,
lastAccessedDate: rs.LastAccessedDate?.toISOString(),
})) || []);
};
exports.formatReplicationStatus = formatReplicationStatus;
/**
* Secrets Manager
*/
exports.default = ({ service, account, region, }) => {
const { ARN: arn, Name: name, Description: description, KmsKeyId: kmsKeyId, RotationEnabled: rotationEnabled, RotationLambdaARN: rotationLambdaARN, RotationRules: rotationRules, LastRotatedDate: lastRotatedDate, LastChangedDate: lastChangedDate, LastAccessedDate: lastAccessedDate, DeletedDate: deletedDate, OwningService: owningService, CreatedDate: createdDate, ReplicationStatus: replicationStatus = [], Tags, } = service;
return {
id: arn,
accountId: account,
arn,
region,
name,
description,
kmsKeyId,
tags: format_1.formatTagsFromMap(Tags),
rotationEnabled,
rotationLambdaARN,
rotationRules: {
id: sdk_1.generateUniqueId({
arn,
...rotationRules,
}),
automaticallyAfterDays: rotationRules?.AutomaticallyAfterDays,
},
lastRotatedDate: lastRotatedDate?.toISOString(),
lastChangedDate: lastChangedDate?.toISOString(),
lastAccessedDate: lastAccessedDate?.toISOString(),
deletedDate: deletedDate?.toISOString(),
createdDate: createdDate?.toISOString(),
owningService,
replicationStatus: exports.formatReplicationStatus(replicationStatus),
};
};