@csermet/multiprovider
Version:
cloud-graph provider plugin for AWS used to fetch AWS cloud data.
69 lines (68 loc) • 2 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const sdk_1 = require("@cloudgraph/sdk");
const format_1 = require("../../utils/format");
exports.default = ({ service, account, }) => {
const { containerInstanceArn: arn, capacityProviderName, version, versionInfo, status, statusReason, agentConnected, runningTasksCount, pendingTasksCount, agentUpdateStatus, registeredAt, Tags, } = service;
const remainingResources = service.remainingResources?.map(rr => ({
id: sdk_1.generateUniqueId({
arn,
...rr,
}),
...rr,
}));
const registeredResources = service.registeredResources?.map(rr => ({
id: sdk_1.generateUniqueId({
arn,
...rr,
}),
...rr,
}));
const attributes = service.attributes?.map(attribute => ({
id: sdk_1.generateUniqueId({
arn,
...attribute,
}),
...attribute,
}));
const attachments = service.attachments?.map(attachment => ({
id: sdk_1.generateUniqueId({
arn,
...attachment,
}),
...attachment,
details: attachment.details?.map(detail => ({
id: sdk_1.generateUniqueId({
arn,
...detail,
}),
...detail,
})),
}));
return {
id: arn,
arn,
accountId: account,
capacityProviderName,
version,
versionInfo: {
id: sdk_1.generateUniqueId({
arn,
...versionInfo,
}),
...versionInfo,
},
remainingResources,
registeredResources,
status,
statusReason,
agentConnected,
runningTasksCount,
pendingTasksCount,
agentUpdateStatus,
attributes,
registeredAt: registeredAt?.toISOString(),
attachments,
tags: format_1.formatTagsFromMap(Tags),
};
};