function getScanArguments()

in packages/service-library/src/dev-utilities/load-test.ts [22:64]


function getScanArguments(): LoadTestArgs {
    yargs.option<keyof LoadTestArgs, yargs.Options>('maxLoad', {
        alias: 'l',
        default: 10,
        type: 'number',
        description: 'Maximum number request to send',
    });

    yargs.option<keyof LoadTestArgs, yargs.Options>('requestUrl', {
        alias: 'u',
        demandOption: true,
        description: 'The service endpoint URL to send request',
    });

    yargs.option<keyof LoadTestArgs, yargs.Options>('scanNotifyUrl', {
        alias: 'n',
        default: 'http://localhost/',
        description: 'Scan completion notification URL',
    });

    yargs.option<keyof LoadTestArgs, yargs.Options>('consolidatedId', {
        alias: 'c',
        default: new GuidGenerator().createGuid(),
        description: 'Consolidated report id',
    });

    yargs.option<keyof LoadTestArgs, yargs.Options>('requestType', {
        alias: 'r',
        default: 'scan',
        description: `The request type to send. Supported types: 'scan', 'consolidated-report', 'deep-scan'`,
    });

    yargs.option<keyof LoadTestArgs, yargs.Options>('adAuthToken', {
        alias: 't',
        default: process.env.adAuthToken,
        demandOption: true,
        description: 'Azure Active Directory auth token. Can be created using Postman. Option can also be set via adAuthToken env variable',
    });

    yargs.wrap(yargs.terminalWidth()).describe('help', 'Show help');

    return yargs.argv as yargs.Arguments<LoadTestArgs>;
}