Skip to content

wmfs/tymly-cli-rest-client

Repository files navigation

tymly-cli

npm (scoped) CircleCI codecov CodeFactor Dependabot badge Commitizen friendly JavaScript Style Guide license FOSSA Status

CLI tool to launch Tymly State Machines over REST

Install

$ npm install tymly-cli --save

Usage

$ npm run cli --command configKey

--command

Key of the configuration you want to run, it must match with a config command. e.g. search, refreshRanking

Each config will have it's own set of input values and must be added as extra flags. For example, if you wish to launch the search state machine you can pass in a query, a limit and an offset so the command will look like the following:

$ npm run cli --command=search --query=kebab --limit=12 --offset=0

To find the input flags, you can look in the run-configurations directory and find the state machine you wish to run.

quiet | q

Including 'quiet' in the command will make it run in 'quiet mode' and does not put anything onto the console

$ npm run cli quiet --command=incidentsInProgress
$ npm run cli q --command=incidentsInProgress

Run Configurations

  1. Incidents In Progress
  2. Search
  3. Refresh Ranking
  4. Refresh All

Incidents In Progress

$ npm run cli --command=incidentsInProgress

Search

Inputs:

  • query (required)
  • limit (required)
  • offset (required)
  • domain
  • orderBy
  • showActiveEventsOnly
  • lat
  • long
  • categoryRestriction
$ npm run cli --command=search --query=kebabs --limit=10 --offset=0 

When a value to any of the inputs contains multiple words then separate them with underscores. See query:

$ npm run cli --command=search --query=99_vauxhall_road --limit=10 --offset=0 

When a value to any of the inputs is an array then separate them with commas. See categoryRestriction:

$ npm run cli --command=search --query=kebabs --limit=10 --offset=0 --categoryRestriction=gazetteer,fireSafety

Refresh Ranking

Inputs:

  • schema (required)
  • category (required)
$ npm run cli --command=refreshRanking --schema=wmfs --category=factory 

Refresh All

$ npm run cli --command=refreshAll

Build environment variables

Environment Variable Notes Example
TYMLY_API_URL The base URL of Tymly (Required) http://localhost:3210
TYMLY_NIC_AUTH0_CLIENT_ID The client ID (as supplied by Auth0) (Required) abc...
TYMLY_NIC_AUTH0_CLIENT_SECRET The client secret (as supplied by Auth0) (Required) abc...
TYMLY_NIC_AUTH0_DOMAIN The client domain (as supplied by Auth0) (Required) abc.de.auth0.com
TYMLY_AUTH_AUDIENCE The Tymly audience (Required) abc...
DEBUG To enable debug statements (Optional) tymly-cli
WEB_API_TIMEOUT_IN_MS Specify a timeout. Default to 3000. (Optional) 5000

Once the environment variables have been set, you can run the tests like this:

$ npm test

License

MIT

FOSSA Status