59 lines
1.4 KiB
JavaScript
59 lines
1.4 KiB
JavaScript
require('dotenv').config();
|
|
|
|
const { createDriver } = require('./modules/driverManager');
|
|
const { createAccount } = require('./modules/microsoftHandler');
|
|
const { createAWSAccount } = require('./modules/awsHandler');
|
|
const { sortAccounts } = require('./modules/accountManager');
|
|
|
|
const args = process.argv.slice(2);
|
|
|
|
async function microsoft() {
|
|
const numAccounts = process.env.MS_ACCOUNT_COUNT;
|
|
const accountPromises = [];
|
|
for (let i = 0; i < numAccounts; i++) {
|
|
const promise = await createAccount(createDriver());
|
|
accountPromises.push(promise);
|
|
if (promise) {
|
|
console.log('Account failed');
|
|
}
|
|
else {
|
|
console.log(`Account ${i + 1} done!`);
|
|
}
|
|
}
|
|
await Promise.all(accountPromises);
|
|
console.log('All accounts done!');
|
|
return process.exit(0);
|
|
}
|
|
|
|
async function aws() {
|
|
const numAccounts = process.env.AWS_ACCOUNT_COUNT;
|
|
const accountPromises = [];
|
|
for (let i = 0; i < numAccounts; i++) {
|
|
const promise = await createAWSAccount(createDriver());
|
|
accountPromises.push(promise);
|
|
if (promise) {
|
|
console.log('Account failed');
|
|
}
|
|
else {
|
|
console.log(`Account ${i + 1} done!`);
|
|
}
|
|
}
|
|
await Promise.all(accountPromises);
|
|
console.log('All accounts done!');
|
|
return process.exit(0);
|
|
}
|
|
|
|
for (let i = 0; i < args.length; i++) {
|
|
if (args[i].startsWith('--')) {
|
|
if (args[i] === '--aws') {
|
|
aws();
|
|
}
|
|
else if (args[i] === '--ms') {
|
|
microsoft();
|
|
}
|
|
else if (args[i] === '--sort') {
|
|
sortAccounts();
|
|
}
|
|
}
|
|
}
|