monsoon-load-testing v1.3.0
monsoon
Usage
$ npm install -g monsoon-load-testing
$ monsoon COMMAND
running command...
$ monsoon (-v|--version|version)
monsoon-load-testing/1.3.0 darwin-arm64 node-v16.13.0
$ monsoon --help [COMMAND]
USAGE
$ monsoon COMMAND
...Getting Started
Prerequisites
- an AWS account
npmis installed- the AWS CLI is installed and configured
- an AWS named profile
- the AWS CDK command-line tool is installed
Installation
- run
npm install -g monsoon-load-testingTODO: UPDATE NPM PACKAGE LINK - type
monsoon --helpto see all the available commands
First Time Usage
The monsoon command is run by inputting subcommands after the initial monsoon command, e.g. monsoon <subcommand>.
To read the help text for each command, type monsoon <command> --help. This outputs a short explanation of what the command does and how to use it.
cdto the folder in which you would like to initialize your Monsoon directorytype
monsoon init. You will be prompted for your AWS credentials, including the name of your CLI profile. A newmonsoon_testssubdirectory will be created inside your current working directory. You will need tocdintomonsoon_testsand be sure to execute all of the othermonsoonCLI subcommands frommonsoon_tests.Your Monsoon infrastructure information can be found in
~/.monsoon/.env:- AWS_ACCESS_KEY_ID
- AWS_SECRET_KEY
- AWS_PROFILE
type
monsoon configif you need to edit your AWS credentials.Once inside
monsoon_tests, typemonsoon new-testto create a new test folder that will include atest_script.jstemplate and a defaulttest_config.jsonfile that you can update to set the parameters for your current test.type
monsoon listto see all current test directories.type
monsoon deployto deploy the infrastructure.monsoon startwill prompt you to select the test directory that contains the test you want Monsoon to run.type
monsoon weather-channelto start the local server that serves the results dashboard. To view this dashboard, visit localhost:5000.
Removing Monsoon
To remove your Monsoon infrastructure from AWS, run monsoon teardown.
To remove the Monsoon global directory, run monsoon destroy. Be sure to run monsoon teardown first -- otherwise the monsoon teardown command cannot use your AWS credentials to tear down the infrastructure.
To uninstall / remove the Monsoon CLI tool, run npm uninstall -g monsoon-load-testing.
FAQ
I quit monsoon deploy in the middle of deploying the infrastructure -- is there a way to tear down the infrastructure?
- AWS will continue to set up your infrastructure even if you interrupt the Monsoon CLI command. You'll need to manually tear it down by visiting the he AWS console, navigating to the CloudFormation section and deleting the
monsoonstack. Note that the infrastructure deployment must be completed before AWS will allow you to delete the stack.
I ran monsoon destroy and now cannot run monsoon teardown -- is there a way to tear down the infrastructure?
monsoon destorydeletes your Monsoon.envfile. Make sure to runmonsoon configagain with correct information, then you can runmonsoon teardown.
Commands
monsoon configmonsoon deploymonsoon destroymonsoon help [COMMAND]monsoon initmonsoon listmonsoon new-testmonsoon startmonsoon teardownmonsoon weather-channel
monsoon config
Allows you to change the AWS credentials associated with your Monsoon infrastructure
USAGE
$ monsoon config
DESCRIPTION
You will need:
- your AWS access key
- your AWS secret key
- your AWS profile nameSee code: src/commands/config.ts
monsoon deploy
Deploys Monsoon infrastructure inside your AWS account
USAGE
$ monsoon deploySee code: src/commands/deploy.ts
monsoon destroy
Deletes the .monsoon directory from the user's local machine
USAGE
$ monsoon destroySee code: src/commands/destroy.ts
monsoon help [COMMAND]
display help for monsoon
USAGE
$ monsoon help [COMMAND]
ARGUMENTS
COMMAND command to show help for
OPTIONS
--all see all commands in CLISee code: @oclif/plugin-help
monsoon init
Creates global .monsoon directory and .env file
USAGE
$ monsoon init
DESCRIPTION
---
Creates the Monsoon directory at ~/.monsoon.
The .env file inside contains your AWS credentials and AWS profile name Monsoon needs to interact with your
infrastructure.See code: src/commands/init.ts
monsoon list
Lists all current test directories in the monsoon_tests folder
USAGE
$ monsoon listSee code: src/commands/list.ts
monsoon new-test
Creates a new test directory pre-populated with a template test script and a test_config.json file
USAGE
$ monsoon new-testSee code: src/commands/new-test.ts
monsoon start
Starts the load test
USAGE
$ monsoon start
DESCRIPTION
---
Allows you to choose the directory containing the test script you want to run and begins running that test.See code: src/commands/start.ts
monsoon teardown
Tears down your AWS infrastructure
USAGE
$ monsoon teardown
DESCRIPTION
---
This command should be run BEFORE running the "monsoon destroy" commandSee code: src/commands/teardown.ts
monsoon weather-channel
Displays your test results dashboard on localhost:5000
USAGE
$ monsoon weather-channel
DESCRIPTION
---
Starts a local server that serves the test results dashboard. To view this dashboard, visit localhost:5000 in your
browser.See code: src/commands/weather-channel.ts