UNPKG

haven-secrets-core

Version:

Core for Haven, the easy to use centralized secrets manager.

28 lines (22 loc) 875 B
import getUserAccessKey from "../../aws/iam/users/getUserAccessKey.js"; import deleteUserAccessKey from "../../aws/iam/users/deleteUserAccessKey.js"; import deleteUser from "../../aws/iam/users/deleteUser.js"; import { adminUserName } from "../../utils/config.js"; const teardownUser = async (username) => { try { if (username === adminUserName) { return Promise.resolve(); } const accessKeyId = await getUserAccessKey(username); if (accessKeyId) await deleteUserAccessKey(accessKeyId, username); return deleteUser(username); } catch (error) { console.log(error, error.stack); } }; const teardownUsers = async (allUserData) => { const usernames = allUserData.Users.map((user) => user.UserName); const userDeletionPromises = usernames.map(teardownUser); return Promise.all(userDeletionPromises); }; export default teardownUsers;