async function main()

in monitoring/remoteRun.ts [41:86]


async function main() {

	const answers = {
	stage: await select({ message: "Which environment would you like to test?", choices: [
		{ name: 'prod', value: 'prod' },
		{ name: 'code', value: 'code' },
	], }),
	regions: await checkbox({ message: 'Which regions would you like to test?',
		choices: [
			{ name: 'us-west-1', value: 'us-west-1' },
			{ name: 'eu-west-1', value: 'eu-west-1' },
			{ name: 'ap-southeast-2', value: 'ap-southeast-2' },
			{ name: 'ca-central-1', value: 'ca-central-1' },
		],
		required: true,
	})};

	console.log(answers.stage);
	console.log(answers.regions);

	async function handleEvent(userInput: RemoteRunCLIUserInput) {
		const invokeSettledResults = await Promise.allSettled(
			userInput.regions.map((region) =>
				invokeInRegion(
					region,
					'cmp-monitoring-CODE',
					userInput.stage,
				),
			),
		);

		invokeSettledResults.map((result) => {
			if (result.status == 'fulfilled') {
				processResult(result.value);
			} else {
				console.log('------------------------------------------');
				console.log('Failed to get response: ', result.reason);
				console.log('------------------------------------------');
			}
		});

		process.exit(0);
	}

	await handleEvent(answers);
}