1.3.0 • Published 2 years ago

monsoon-load-testing v1.3.0

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

monsoon

oclif Version Downloads/week License

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

Installation

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.

  • cd to the folder in which you would like to initialize your Monsoon directory

  • type monsoon init. You will be prompted for your AWS credentials, including the name of your CLI profile. A new monsoon_tests subdirectory will be created inside your current working directory. You will need to cd into monsoon_tests and be sure to execute all of the other monsoon CLI subcommands from monsoon_tests.

  • Your Monsoon infrastructure information can be found in ~/.monsoon/.env:

    • AWS_ACCESS_KEY_ID
    • AWS_SECRET_KEY
    • AWS_PROFILE
  • type monsoon config if you need to edit your AWS credentials.

  • Once inside monsoon_tests, type monsoon new-test to create a new test folder that will include a test_script.js template and a default test_config.json file that you can update to set the parameters for your current test.

  • type monsoon list to see all current test directories.

  • type monsoon deploy to deploy the infrastructure.

  • monsoon start will prompt you to select the test directory that contains the test you want Monsoon to run.

  • type monsoon weather-channel to 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 monsoon stack. 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 destory deletes your Monsoon .env file. Make sure to run monsoon config again with correct information, then you can run monsoon teardown.

Commands

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 name

See code: src/commands/config.ts

monsoon deploy

Deploys Monsoon infrastructure inside your AWS account

USAGE
  $ monsoon deploy

See code: src/commands/deploy.ts

monsoon destroy

Deletes the .monsoon directory from the user's local machine

USAGE
  $ monsoon destroy

See 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 CLI

See 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 list

See 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-test

See 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" command

See 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