npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@tru_id/cli

v1.2.2

Published

The tru.ID CLI

Downloads

164

Readme

The tru.ID CLI

Usage

Every run of the CLI will check to see if all required configuration is in place.

$ npm install -g @tru_id/cli
$ tru COMMAND
running command...
$ tru (--version)
@tru_id/cli/1.2.2 linux-x64 node-v16.20.0
$ tru --help [COMMAND]
USAGE
  $ tru COMMAND
...

Commands

tru analytics:pck:daily

Get Daily PhoneCheck Analytics. By default returns most recent analytics.

USAGE
  $ tru analytics:pck:daily [--debug] [--help] [--columns <value> | -x] [--sort <value>] [--filter <value>] [--output
    csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ] [--search <value>] [--group-by <value>] [--page-number
    <value>] [--page-size <value>]

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --group-by=<value>     group results by one or more fields e.g project_id or network_id
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --page-number=<value>  [default: 1] the page number to return in the list resource.
  --page-size=<value>    [default: 10] the page size to return in list resource request.
  --search=<value>       the RSQL query for analytics. e.g --search='date>=2021-03-29'
  --sort=<value>         sort query in the form "{parameter_name},{direction}". For example, "date,asc" or "date,desc".

DESCRIPTION
  Get Daily PhoneCheck Analytics. By default returns most recent analytics.

See code: dist/commands/analytics/pck/daily.ts

tru analytics:pck:hourly

Get Hourly PhoneCheck Analytics. By default returns most recent analytics.

USAGE
  $ tru analytics:pck:hourly [--debug] [--help] [--columns <value> | -x] [--sort <value>] [--filter <value>] [--output
    csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ] [--search <value>] [--group-by <value>] [--page-number
    <value>] [--page-size <value>]

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --group-by=<value>     group results by one or more fields e.g project_id or network_id
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --page-number=<value>  [default: 1] the page number to return in the list resource.
  --page-size=<value>    [default: 10] the page size to return in list resource request.
  --search=<value>       the RSQL query for analytics. e.g --search='date>=2021-03-29'
  --sort=<value>         sort query in the form "{parameter_name},{direction}". For example, "date,asc" or "date,desc".

DESCRIPTION
  Get Hourly PhoneCheck Analytics. By default returns most recent analytics.

See code: dist/commands/analytics/pck/hourly.ts

tru analytics:pck:monthly

Get Monthly PhoneCheck Analytics. By default returns most recent analytics.

USAGE
  $ tru analytics:pck:monthly [--debug] [--help] [--columns <value> | -x] [--sort <value>] [--filter <value>] [--output
    csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ] [--search <value>] [--group-by <value>] [--page-number
    <value>] [--page-size <value>]

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --group-by=<value>     group results by one or more fields e.g project_id or network_id
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --page-number=<value>  [default: 1] the page number to return in the list resource.
  --page-size=<value>    [default: 10] the page size to return in list resource request.
  --search=<value>       the RSQL query for analytics. e.g --search='date>=2021-03-29'
  --sort=<value>         sort query in the form "{parameter_name},{direction}". For example, "date,asc" or "date,desc".

DESCRIPTION
  Get Monthly PhoneCheck Analytics. By default returns most recent analytics.

See code: dist/commands/analytics/pck/monthly.ts

tru analytics:sck:daily

Get Daily SimCheck Analytics. By default returns most recent analytics.

USAGE
  $ tru analytics:sck:daily [--debug] [--help] [--columns <value> | -x] [--sort <value>] [--filter <value>] [--output
    csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ] [--search <value>] [--group-by <value>] [--page-number
    <value>] [--page-size <value>]

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --group-by=<value>     group results by one or more fields e.g project_id or network_id
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --page-number=<value>  [default: 1] the page number to return in the list resource.
  --page-size=<value>    [default: 10] the page size to return in list resource request.
  --search=<value>       the RSQL query for analytics. e.g --search='date>=2021-03-29'
  --sort=<value>         sort query in the form "{parameter_name},{direction}". For example, "date,asc" or "date,desc".

DESCRIPTION
  Get Daily SimCheck Analytics. By default returns most recent analytics.

See code: dist/commands/analytics/sck/daily.ts

tru analytics:sck:hourly

Get Hourly SimCheck Analytics. By default returns most recent analytics.

USAGE
  $ tru analytics:sck:hourly [--debug] [--help] [--columns <value> | -x] [--sort <value>] [--filter <value>] [--output
    csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ] [--search <value>] [--group-by <value>] [--page-number
    <value>] [--page-size <value>]

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --group-by=<value>     group results by one or more fields e.g project_id or network_id
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --page-number=<value>  [default: 1] the page number to return in the list resource.
  --page-size=<value>    [default: 10] the page size to return in list resource request.
  --search=<value>       the RSQL query for analytics. e.g --search='date>=2021-03-29'
  --sort=<value>         sort query in the form "{parameter_name},{direction}". For example, "date,asc" or "date,desc".

DESCRIPTION
  Get Hourly SimCheck Analytics. By default returns most recent analytics.

See code: dist/commands/analytics/sck/hourly.ts

tru analytics:sck:monthly

Get Monthly SimCheck Analytics. By default returns most recent analytics.

USAGE
  $ tru analytics:sck:monthly [--debug] [--help] [--columns <value> | -x] [--sort <value>] [--filter <value>] [--output
    csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ] [--search <value>] [--group-by <value>] [--page-number
    <value>] [--page-size <value>]

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --group-by=<value>     group results by one or more fields e.g project_id or network_id
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --page-number=<value>  [default: 1] the page number to return in the list resource.
  --page-size=<value>    [default: 10] the page size to return in list resource request.
  --search=<value>       the RSQL query for analytics. e.g --search='date>=2021-03-29'
  --sort=<value>         sort query in the form "{parameter_name},{direction}". For example, "date,asc" or "date,desc".

DESCRIPTION
  Get Monthly SimCheck Analytics. By default returns most recent analytics.

See code: dist/commands/analytics/sck/monthly.ts

tru analytics:suk:daily

Get Daily SubscriberCheck Analytics. By default returns most recent analytics.

USAGE
  $ tru analytics:suk:daily [--debug] [--help] [--columns <value> | -x] [--sort <value>] [--filter <value>] [--output
    csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ] [--search <value>] [--group-by <value>] [--page-number
    <value>] [--page-size <value>]

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --group-by=<value>     group results by one or more fields e.g project_id or network_id
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --page-number=<value>  [default: 1] the page number to return in the list resource.
  --page-size=<value>    [default: 10] the page size to return in list resource request.
  --search=<value>       the RSQL query for analytics. e.g --search='date>=2021-03-29'
  --sort=<value>         sort query in the form "{parameter_name},{direction}". For example, "date,asc" or "date,desc".

DESCRIPTION
  Get Daily SubscriberCheck Analytics. By default returns most recent analytics.

See code: dist/commands/analytics/suk/daily.ts

tru analytics:suk:hourly

Get Hourly SubscriberCheck Analytics. By default returns most recent analytics.

USAGE
  $ tru analytics:suk:hourly [--debug] [--help] [--columns <value> | -x] [--sort <value>] [--filter <value>] [--output
    csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ] [--search <value>] [--group-by <value>] [--page-number
    <value>] [--page-size <value>]

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --group-by=<value>     group results by one or more fields e.g project_id or network_id
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --page-number=<value>  [default: 1] the page number to return in the list resource.
  --page-size=<value>    [default: 10] the page size to return in list resource request.
  --search=<value>       the RSQL query for analytics. e.g --search='date>=2021-03-29'
  --sort=<value>         sort query in the form "{parameter_name},{direction}". For example, "date,asc" or "date,desc".

DESCRIPTION
  Get Hourly SubscriberCheck Analytics. By default returns most recent analytics.

See code: dist/commands/analytics/suk/hourly.ts

tru analytics:suk:monthly

Get Monthly SubscriberCheck Analytics. By default returns most recent analytics.

USAGE
  $ tru analytics:suk:monthly [--debug] [--help] [--columns <value> | -x] [--sort <value>] [--filter <value>] [--output
    csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ] [--search <value>] [--group-by <value>] [--page-number
    <value>] [--page-size <value>]

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --group-by=<value>     group results by one or more fields e.g project_id or network_id
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --page-number=<value>  [default: 1] the page number to return in the list resource.
  --page-size=<value>    [default: 10] the page size to return in list resource request.
  --search=<value>       the RSQL query for analytics. e.g --search='date>=2021-03-29'
  --sort=<value>         sort query in the form "{parameter_name},{direction}". For example, "date,asc" or "date,desc".

DESCRIPTION
  Get Monthly SubscriberCheck Analytics. By default returns most recent analytics.

See code: dist/commands/analytics/suk/monthly.ts

tru coverage:country CODE

Retrieve country based coverage and prices

USAGE
  $ tru coverage:country [CODE] [--debug] [--help] [--project-dir <value>] [--columns <value> | -x] [--sort <value>]
    [--filter <value>] [--output csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ]

ARGUMENTS
  CODE  two letter code ISO 3166-1 alpha-2 or country dialing code

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --project-dir=<value>  The directory that contains the tru.json Project configuration file
  --sort=<value>         property to sort by (prepend '-' for descending)

DESCRIPTION
  Retrieve country based coverage and prices

See code: dist/commands/coverage/country.ts

tru coverage:reach DEVICE-IP

Find if a certain device ip is reachable

USAGE
  $ tru coverage:reach [DEVICE-IP] [--debug] [--help] [--project-dir <value>] [--columns <value> | -x] [--sort
    <value>] [--filter <value>] [--output csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ]

ARGUMENTS
  DEVICE-IP  the device ip in ipv4 or ipv6 format

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --project-dir=<value>  The directory that contains the tru.json Project configuration file
  --sort=<value>         property to sort by (prepend '-' for descending)

DESCRIPTION
  Find if a certain device ip is reachable

See code: dist/commands/coverage/reach.ts

tru help [COMMAND]

Display help for tru.

USAGE
  $ tru help [COMMAND] [-n]

ARGUMENTS
  COMMAND  Command to show help for.

FLAGS
  -n, --nested-commands  Include all nested commands in the output.

DESCRIPTION
  Display help for tru.

See code: @oclif/plugin-help

tru login IDP

Login to tru.ID

USAGE
  $ tru login [IDP]

ARGUMENTS
  IDP  (google|github|microsoft) The Identity Provider

DESCRIPTION
  Login to tru.ID

See code: dist/commands/login/index.ts

tru oauth2:token

Creates an OAuth2 token

USAGE
  $ tru oauth2:token [--debug] [--help] [--project-dir <value>] [--output csv|json|yaml | --no-truncate | ] [-x |
    ] [--no-header | ]

FLAGS
  -x, --extended         show extra columns
  --debug                enables debug logging for the CLI
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --project-dir=<value>  The directory that contains the tru.json Project configuration file

DESCRIPTION
  Creates an OAuth2 token

EXAMPLES
  # use project credentials to create token

    $ tru oauth2:token --project-dir path/to/project

  # assign a token to a variable in shell
  $ TOKEN=$(tru oauth2:token --project-dir path/to/project --no-header)
  $ echo $TOKEN
  Emesua0F7gj3qOaav7UaKaBwefaaefaAxlrdGom_mb3U.78Od2d9XpvTQbd44eM1Uf7nzz9e9nezs5TRjPmpDnMc

See code: dist/commands/oauth2/token.ts

tru phonechecks:create [PHONE_NUMBER]

Creates a PhoneCheck within a project

USAGE
  $ tru phonechecks:create [PHONE_NUMBER] [--debug] [--help] [--project-dir <value>] [--output csv|json|yaml |  | ]

ARGUMENTS
  PHONE_NUMBER  the phone number to perform the Check on

FLAGS
  --debug                enables debug logging for the CLI
  --help                 show CLI help
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --project-dir=<value>  The directory that contains the tru.json Project configuration file

DESCRIPTION
  Creates a PhoneCheck within a project

See code: dist/commands/phonechecks/create.ts

tru phonechecks:list [CHECK_ID]

Lists details for all PhoneChecks or a specific PhoneCheck if the a check-id argument is passed

USAGE
  $ tru phonechecks:list [CHECK_ID] [--debug] [--help] [--project-dir <value>] [--columns <value> | -x] [--sort
    <value>] [--filter <value>] [--output csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ] [--page-number
    <value>] [--page-size <value>] [--search <value>]

ARGUMENTS
  CHECK_ID  the check_id for the Check to list

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --page-number=<value>  [default: 1] the page number to return in the list resource. Ignored if the "check_id" argument
                         is used.
  --page-size=<value>    [default: 10] the page size to return in list resource request. Ignored if the "check_id"
                         argument is used.
  --project-dir=<value>  The directory that contains the tru.json Project configuration file
  --search=<value>       a RSQL search query. To ensure correct parsing put your query in quotes. For example "--search
                         'status==COMPLETED'". Ignored if the "check_id" argument is used.
  --sort=<value>         [default: created_at,desc] sort query in the form "{parameter_name},{direction}". For example,
                         "created_at,asc" or "created_at,desc". Ignored if the "check_id" argument is used.

DESCRIPTION
  Lists details for all PhoneChecks or a specific PhoneCheck if the a check-id argument is passed

See code: dist/commands/phonechecks/list.ts

tru phonechecks:traces CHECK_ID

Get the traces of a PhoneCheck

USAGE
  $ tru phonechecks:traces [CHECK_ID] [--debug] [--help] [--project-dir <value>] [--columns <value> | -x] [--sort
    <value>] [--filter <value>] [--output csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ] [--trace-id
    <value>]

ARGUMENTS
  CHECK_ID  the check_id for which we want to get the traces

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --project-dir=<value>  The directory that contains the tru.json Project configuration file
  --sort=<value>         property to sort by (prepend '-' for descending)
  --trace-id=<value>     the trace-id for which we want to get the logs

DESCRIPTION
  Get the traces of a PhoneCheck

See code: dist/commands/phonechecks/traces.ts

tru projects:create [NAME]

Creates a new Project

USAGE
  $ tru projects:create [NAME] [--debug] [--help] [--project-dir <value>] [--phonecheck-callback <value> | ] [--mode
    live|sandbox] [--output csv|json|yaml |  | ]

ARGUMENTS
  NAME  the name of the project to create

FLAGS
  --debug                        enables debug logging for the CLI
  --help                         show CLI help
  --mode=<option>                Set the project mode to "live" or "sandbox"
                                 <options: live|sandbox>
  --output=<option>              output in a more machine friendly format
                                 <options: csv|json|yaml>
  --phonecheck-callback=<value>  set a callback to be invoked when a PhoneCheck reaches an end state
  --project-dir=<value>          The directory that contains the tru.json Project configuration file

DESCRIPTION
  Creates a new Project

EXAMPLES
  $ tru projects:create
  What is the name of the project?: My first project
  Creating Project "My first project"

  $ tru projects:create --phonecheck-callback https://example.com/callback

  $ tru projects:create --mode sandbox

  $ tru projects:create --mode live

See code: dist/commands/projects/create.ts

tru projects:list [PROJECT_ID]

Lists details for all Projects or a Projects that match a given criteria

USAGE
  $ tru projects:list [PROJECT_ID] [--debug] [--help] [--columns <value> | -x] [--sort <value>] [--filter <value>]
    [--output csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ] [--page-number <value>] [--page-size <value>]
    [--search <value>]

ARGUMENTS
  PROJECT_ID  the project_id for the Project to retrieve

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --page-number=<value>  [default: 1] the page number to return in the list resource. Ignored if the "project_id"
                         argument is used.
  --page-size=<value>    [default: 10] the page size to return in list resource request. Ignored if the "project_id"
                         argument is used.
  --search=<value>       a RSQL search query. To ensure correct parsing put your query in quotes. For example "--search
                         'name=p*'". Ignored if the "project_id" argument is used.
  --sort=<value>         [default: created_at,desc] sort query in the form "{parameter_name},{direction}". For example,
                         "created_at,asc" or "created_at,desc". Ignored if the "project_id" argument is used.

DESCRIPTION
  Lists details for all Projects or a Projects that match a given criteria

See code: dist/commands/projects/list.ts

tru projects:update [PROJECT-ID]

Update an existing Project

USAGE
  $ tru projects:update [PROJECT-ID] [--debug] [--help] [--project-dir <value>] [--phonecheck-callback <value> |
    --remove-phonecheck-callback] [--mode live|sandbox] [--output csv|json|yaml |  | ]

ARGUMENTS
  PROJECT-ID  the ID of the project to update

FLAGS
  --debug                        enables debug logging for the CLI
  --help                         show CLI help
  --mode=<option>                Set the project mode to "live" or "sandbox"
                                 <options: live|sandbox>
  --output=<option>              output in a more machine friendly format
                                 <options: csv|json|yaml>
  --phonecheck-callback=<value>  set a callback to be invoked when a PhoneCheck reaches an end state
  --project-dir=<value>          The directory that contains the tru.json Project configuration file
  --remove-phonecheck-callback   remove the PhoneCheck callback configuration from the Project

DESCRIPTION
  Update an existing Project

EXAMPLES
  $ tru projects:update --phonecheck-callback https://example.com/callback

  $ tru projects:update --remove-phonecheck-callback

  $ tru projects:update --mode sandbox

  $ tru projects:update --mode live

See code: dist/commands/projects/update.ts

tru simchecks:create [PHONE_NUMBER]

Create SIMChecks within a Project

USAGE
  $ tru simchecks:create [PHONE_NUMBER] [--debug] [--help] [--project-dir <value>] [--output csv|json|yaml |  | ]

ARGUMENTS
  PHONE_NUMBER  the phone number to perform the Check on

FLAGS
  --debug                enables debug logging for the CLI
  --help                 show CLI help
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --project-dir=<value>  The directory that contains the tru.json Project configuration file

DESCRIPTION
  Create SIMChecks within a Project

See code: dist/commands/simchecks/create.ts

tru simchecks:list [CHECK_ID]

Lists details for all SIMChecks or a specific SIMCheck if the a check-id argument is passed

USAGE
  $ tru simchecks:list [CHECK_ID] [--debug] [--help] [--project-dir <value>] [--columns <value> | -x] [--sort
    <value>] [--filter <value>] [--output csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ] [--page-number
    <value>] [--page-size <value>] [--search <value>]

ARGUMENTS
  CHECK_ID  the check_id for the Check to list

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --page-number=<value>  [default: 1] the page number to return in the list resource. Ignored if the "check_id" argument
                         is used.
  --page-size=<value>    [default: 10] the page size to return in list resource request. Ignored if the "check_id"
                         argument is used.
  --project-dir=<value>  The directory that contains the tru.json Project configuration file
  --search=<value>       a RSQL search query. To ensure correct parsing put your query in quotes. For example "--search
                         'status==COMPLETED'". Ignored if the "check_id" argument is used.
  --sort=<value>         [default: created_at,desc] sort query in the form "{parameter_name},{direction}". For example,
                         "created_at,asc" or "created_at,desc". Ignored if the "check_id" argument is used.

DESCRIPTION
  Lists details for all SIMChecks or a specific SIMCheck if the a check-id argument is passed

See code: dist/commands/simchecks/list.ts

tru simchecks:traces CHECK_ID

Get the traces of a SIMCheck

USAGE
  $ tru simchecks:traces [CHECK_ID] [--debug] [--help] [--project-dir <value>] [--columns <value> | -x] [--sort
    <value>] [--filter <value>] [--output csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ] [--trace-id
    <value>]

ARGUMENTS
  CHECK_ID  the check_id for which we want to get the traces

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --project-dir=<value>  The directory that contains the tru.json Project configuration file
  --sort=<value>         property to sort by (prepend '-' for descending)
  --trace-id=<value>     the trace-id for which we want to get the logs

DESCRIPTION
  Get the traces of a SIMCheck

See code: dist/commands/simchecks/traces.ts

tru subscriberchecks:create [PHONE_NUMBER]

Creates SubscriberChecks within a project

USAGE
  $ tru subscriberchecks:create [PHONE_NUMBER] [--debug] [--help] [--project-dir <value>] [--output csv|json|yaml |  | ]

ARGUMENTS
  PHONE_NUMBER  the phone number to perform the Check on

FLAGS
  --debug                enables debug logging for the CLI
  --help                 show CLI help
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --project-dir=<value>  The directory that contains the tru.json Project configuration file

DESCRIPTION
  Creates SubscriberChecks within a project

See code: dist/commands/subscriberchecks/create.ts

tru subscriberchecks:list [CHECK_ID]

Lists details for all SubscriberChecks or a specific SubscriberCheck if the a check-id argument is passed

USAGE
  $ tru subscriberchecks:list [CHECK_ID] [--debug] [--help] [--project-dir <value>] [--columns <value> | -x] [--sort
    <value>] [--filter <value>] [--output csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ] [--page-number
    <value>] [--page-size <value>] [--search <value>]

ARGUMENTS
  CHECK_ID  the check_id for the Check to list

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --page-number=<value>  [default: 1] the page number to return in the list resource. Ignored if the "check_id" argument
                         is used.
  --page-size=<value>    [default: 10] the page size to return in list resource request. Ignored if the "check_id"
                         argument is used.
  --project-dir=<value>  The directory that contains the tru.json Project configuration file
  --search=<value>       a RSQL search query. To ensure correct parsing put your query in quotes. For example "--search
                         'status==COMPLETED'". Ignored if the "check_id" argument is used.
  --sort=<value>         [default: created_at,desc] sort query in the form "{parameter_name},{direction}". For example,
                         "created_at,asc" or "created_at,desc". Ignored if the "check_id" argument is used.

DESCRIPTION
  Lists details for all SubscriberChecks or a specific SubscriberCheck if the a check-id argument is passed

See code: dist/commands/subscriberchecks/list.ts

tru subscriberchecks:traces CHECK_ID

Get the traces of a SubscriberCheck

USAGE
  $ tru subscriberchecks:traces [CHECK_ID] [--debug] [--help] [--project-dir <value>] [--columns <value> | -x] [--sort
    <value>] [--filter <value>] [--output csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ] [--trace-id
    <value>]

ARGUMENTS
  CHECK_ID  the check_id for which we want to get the traces

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --project-dir=<value>  The directory that contains the tru.json Project configuration file
  --sort=<value>         property to sort by (prepend '-' for descending)
  --trace-id=<value>     the trace-id for which we want to get the logs

DESCRIPTION
  Get the traces of a SubscriberCheck

See code: dist/commands/subscriberchecks/traces.ts

tru usage:daily

Get Daily Usage. The date range defaults to the last 7 days.

USAGE
  $ tru usage:daily [--debug] [--help] [--columns <value> | -x] [--sort <value>] [--filter <value>] [--output
    csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ] [--search <value>] [--group-by <value>] [--page-number
    <value>] [--page-size <value>]

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --group-by=<value>     group results by one or more fields e.g product_id or project_id or product_id,project_id
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --page-number=<value>  [default: 1] the page number to return in the list resource.
  --page-size=<value>    [default: 10] the page size to return in list resource request.
  --search=<value>       the RSQL query for usage. date is required e.g --search='date>=2021-03-29'
  --sort=<value>         property to sort by (prepend '-' for descending)

DESCRIPTION
  Get Daily Usage. The date range defaults to the last 7 days.

See code: dist/commands/usage/daily.ts

tru usage:hourly

Get Hourly Usage. The date range defaults to the last 12 hours.

USAGE
  $ tru usage:hourly [--debug] [--help] [--columns <value> | -x] [--sort <value>] [--filter <value>] [--output
    csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ] [--search <value>] [--group-by <value>] [--page-number
    <value>] [--page-size <value>]

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --group-by=<value>     group results by one or more fields e.g product_id or project_id or product_id,project_id
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --page-number=<value>  [default: 1] the page number to return in the list resource.
  --page-size=<value>    [default: 10] the page size to return in list resource request.
  --search=<value>       the RSQL query for usage. date is required e.g --search='date>=2021-03-29'
  --sort=<value>         property to sort by (prepend '-' for descending)

DESCRIPTION
  Get Hourly Usage. The date range defaults to the last 12 hours.

See code: dist/commands/usage/hourly.ts

tru usage:monthly

Get Monthly Usage. The date range defaults to the last 6 months.

USAGE
  $ tru usage:monthly [--debug] [--help] [--columns <value> | -x] [--sort <value>] [--filter <value>] [--output
    csv|json|yaml |  | [--csv | --no-truncate]] [--no-header | ] [--search <value>] [--group-by <value>] [--page-number
    <value>] [--page-size <value>]

FLAGS
  -x, --extended         show extra columns
  --columns=<value>      only show provided columns (comma-separated)
  --csv                  output is csv format [alias: --output=csv]
  --debug                enables debug logging for the CLI
  --filter=<value>       filter property by partial string matching, ex: name=foo
  --group-by=<value>     group results by one or more fields e.g product_id or project_id or product_id,project_id
  --help                 show CLI help
  --no-header            hide table header from output
  --no-truncate          do not truncate output to fit screen
  --output=<option>      output in a more machine friendly format
                         <options: csv|json|yaml>
  --page-number=<value>  [default: 1] the page number to return in the list resource.
  --page-size=<value>    [default: 10] the page size to return in list resource request.
  --search=<value>       the RSQL query for usage. date is required e.g --search='date>=2021-03-29'
  --sort=<value>         property to sort by (prepend '-' for descending)

DESCRIPTION
  Get Monthly Usage. The date range defaults to the last 6 months.

See code: dist/commands/usage/monthly.ts

tru workspaces:list

List of available workspaces

USAGE
  $ tru workspaces:list [--debug] [--help] [--output csv|json|yaml | --no-truncate | ] [--no-header | ]

FLAGS
  --debug            enables debug logging for the CLI
  --help             show CLI help
  --no-header        hide table header from output
  --no-truncate      do not truncate output to fit screen
  --output=<option>  output in a more machine friendly format
                     <options: csv|json|yaml>

DESCRIPTION
  List of available workspaces

See code: dist/commands/workspaces/list.ts

tru workspaces:selected

Displays selected workspace information

USAGE
  $ tru workspaces:selected [--debug] [--help] [--output csv|json|yaml | --no-truncate | ] [--no-header | ]

FLAGS
  --debug            enables debug logging for the CLI
  --help             show CLI help
  --no-header        hide table header from output
  --no-truncate      do not truncate output to fit screen
  --output=<option>  output in a more machine friendly format
                     <options: csv|json|yaml>

DESCRIPTION
  Displays selected workspace information

See code: dist/commands/workspaces/selected.ts

tru workspaces:switch DATA_RESIDENCY WORKSPACE_ID

Switch workspaces

USAGE
  $ tru workspaces:switch [DATA_RESIDENCY] [WORKSPACE_ID] [--debug] [--help] [--output csv|json|yaml | --no-truncate |
    ] [--no-header | ]

ARGUMENTS
  DATA_RESIDENCY  data residency where the workspace is located
  WORKSPACE_ID    selected Workspace

FLAGS
  --debug            enables debug logging for the CLI
  --help             show CLI help
  --no-header        hide table header from output
  --no-truncate      do not truncate output to fit screen
  --output=<option>  output in a more machine friendly format
                     <options: csv|json|yaml>

DESCRIPTION
  Switch workspaces

See code: dist/commands/workspaces/switch.ts

Development

Commits

The release process will generate/update a CHANGELOG based on commit messages. In order to do this commits should follow Conventional Commits v1.0.0.

If you forget to follow this the release process allows for manual editing of the CHANGELOG.

Releases

Releases should be performed on the dev branch and the related commits then merged into the main branch.

CHANGELOG & Package Version

The CLI uses standard-version to generate a changelog and bump the package version.

To update the README with new CLI instructions and add new version info to the CHANGELOG run:

$ npm run release

Additional parameters supported by standard-version can be passed as follows:

$ npm run release {additional_parameters}

For example:

$ npm run release --dry-run

Commit and Tag

If all goes well, we're ready to mark the release as complete.

Once the CHANGELOG and version in package.json are correct ensure the file updates are staged and run the following replacing current_version with the version of the CLI being released:

$ git commit -m 'chore(release): v{current_version}'
  git tag v{currentVersion}
  git push origin v{currentVersion}
  git push origin canary

Build & Release

Merge canary into main to release and the installers are automatically test and publish to NPM @latest. All commits on canary will also publish to NPM with a @canary tag.

Release MacOS Installer

To release the installers create a .env file with the following, including valid AWS credentials and an NPM token:

AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
NPM_TOKEN=
Publish to NPM

To publish to NPM tagged with canary run:

$ npm run npm:publish:dev

For a full production release run:

$ npm run npm:publish:prod

Configuration

Every run of the CLI will check to see if all required configuration is in place. This is achieved through a hook.

For more inforation see the Oclif Configuration How to.