in source/backend/discovery/src/discovery/updatedResources.js [8:48]
async buildRecentlyChanged({rootAccountId, accounts, customUserAgent, rootAccountRole}) {
logger.info("buildRecentlyChanged");
let changed = new Map();
let all = new Map();
for (let account of accounts) {
try {
const role = account.accountId === rootAccountId ? rootAccountRole :
`arn:aws:iam::${account.accountId}:role/ZoomDiscoveryRole`;
const creds = await login.login(role);
for (let region of account.regions) {
let allNodes = await this.getAll(customUserAgent, creds, region.name);
if (allNodes.Results) {
allNodes.Results.reduce((acc, element) => {
let result = JSON.parse(element);
return acc.set(result.resourceId, result);
}, all);
}
let recentlyChanged = await this.getRecentlyChanged(customUserAgent, creds, region.name);
if (recentlyChanged.Results) {
recentlyChanged.Results.reduce((acc, element) => {
let result = JSON.parse(element);
return acc.set(result.resourceId, result);
}, changed);
}
}
}
catch (err) {
logger.error(`Import api data failed for account ${account.accountId}: Error was ${err}`);
zoomUtils.dumpError(err);
}
}
return { all: all, updated: changed };
}