UNPKG

aws-iam-policy-tool

Version:
30 lines (29 loc) 1.08 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); /** * import IAM roles from JSON files */ const promisedLife = require('promised-lifestream'); const StreamUtils = require('@tilfin/stream-utils'); const stream_1 = require("./utils/stream"); const result_writer_1 = require("./utils/result_writer"); const file_1 = require("./utils/file"); const role_registerer_1 = require("./logic/role_registerer"); const file_reader_1 = require("./aws/file_reader"); async function main(inDir, varSet, opts = {}) { const registerer = new role_registerer_1.RoleRegisterer(opts); try { const jsonFiles = await file_1.listJsonFiles(inDir); return promisedLife([ StreamUtils.readArray(jsonFiles), stream_1.promisedStream((filePath) => file_reader_1.readRoleFile(filePath, varSet)), stream_1.promisedStream((file) => registerer.register(file)), result_writer_1.createWriter(opts), ]); } catch (err) { console.error(err.stack); return false; } } exports.main = main;