@csermet/multiprovider
Version:
cloud-graph provider plugin for AWS used to fetch AWS cloud data.
24 lines (23 loc) • 1.45 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.getIamGlobalId = exports.getIamId = exports.gets3BucketId = exports.getRecordId = exports.getHostedZoneId = void 0;
const lodash_1 = require("lodash");
const kebabCase_1 = __importDefault(require("lodash/kebabCase"));
const last_1 = __importDefault(require("lodash/last"));
const resources_1 = __importDefault(require("../enums/resources"));
// i.e. "Id": "/hostedzone/Z0340076V9U7PUPIWZTE"
const getHostedZoneId = (hostedZoneId) => last_1.default(hostedZoneId.split('/'));
exports.getHostedZoneId = getHostedZoneId;
const getRecordId = ({ hostedZoneId, name, type, identifier, }) => !lodash_1.isEmpty(identifier)
? `${hostedZoneId}_${name}_${type}_${identifier}`
: `${hostedZoneId}_${name}_${type}`;
exports.getRecordId = getRecordId;
const gets3BucketId = (id) => `${id}-${kebabCase_1.default(resources_1.default.acm)}`;
exports.gets3BucketId = gets3BucketId;
const getIamId = ({ resourceId, resourceName, resourceType, }) => `${resourceName}-${resourceId}-${kebabCase_1.default(resourceType)}`;
exports.getIamId = getIamId;
const getIamGlobalId = ({ accountId, region, resourceType, }) => `iam:region:${region}-account:${accountId}-${kebabCase_1.default(resourceType)}`;
exports.getIamGlobalId = getIamGlobalId;