Skip to content

CLI

The Nextmv Command Line Interface (CLI).

Usage:

$ [OPTIONS] COMMAND [ARGS]...

Options:

  • -v, --version: Show the current version of the Nextmv CLI.
  • --install-completion: Install completion for the current shell.
  • --show-completion: Show completion for the current shell, to copy it or customize the installation.
  • --help: Show this message and exit.

🐰 Made by Nextmv with ♥️

Commands:

  • auth: Authenticate and manage login sessions.
  • cache: Manage the cache used for Nextmv operations.
  • cloud: Interact with Nextmv Cloud, a platform for...
  • community: Interact with community apps, which are...
  • configuration: Configure the CLI and manage profiles.
  • init: Get started with the Nextmv CLI.
  • local: Interact with local Nextmv apps and make...
  • manifest: Manage app.yaml (app...
  • version: Show the current version of the Nextmv CLI.
  • mcp: Model Context Protocol (MCP) server for...

auth

Authenticate and manage login sessions.

Usage:

$ auth [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • login: Log in to Nextmv using the browser-based...
  • logout: Log out of Nextmv and delete stored access...

auth login

Log in to Nextmv using the browser-based PKCE auth flow.

Opens your browser, completes the OAuth2 PKCE flow, and stores the resulting tokens under ~/.nextmv/auth/.

If --profile is given, only that profile is logged in (it must be configured with --auth-type pkce via nextmv configuration create). If no profile is given, all pkce profiles found in ~/.nextmv/config.yaml are logged in sequentially.

Examples

  • Log in with the default auth profile.

    $ nextmv auth login

  • Log in with a specific named profile.

    $ nextmv auth login --profile my-auth-profile

  • Force re-authentication, bypassing any active browser session.

    $ nextmv auth login --force

Usage:

$ auth login [OPTIONS]

Options:

  • -f, --force: Force re-authentication even if an active browser session exists. Opens the identity provider's logout endpoint first to clear any existing session before starting the login flow.
  • -p, --profile PROFILE_NAME: Profile to log in to. If omitted, all pkce profiles are logged in. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

auth logout

Log out of Nextmv and delete stored access tokens.

Deletes the token file for the auth session associated with each pkce profile. Multiple profiles sharing the same auth session are logged out together (tokens are stored per session, not per profile).

Examples

  • Log out of all pkce profiles.

    $ nextmv auth logout

  • Log out of a specific named profile.

    $ nextmv auth logout --profile my-auth-profile

Usage:

$ auth logout [OPTIONS]

Options:

  • -p, --profile PROFILE_NAME: Profile to log out of. If omitted, all pkce profiles are logged out. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cache

Manage the cache used for Nextmv operations.

Usage:

$ cache [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • delete: Deletes the Nextmv cache and resets it to...
  • get: Gets general information about the Nextmv...

cache delete

Deletes the Nextmv cache and resets it to an empty state.

This action is permanent and cannot be undone. Use the --yes flag to skip the confirmation prompt.

Examples

  • Delete the Nextmv cache.

    $ nextmv cache delete

  • Delete the Nextmv cache without confirmation prompt.

    $ nextmv cache delete --yes

Usage:

$ cache delete [OPTIONS]

Options:

  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

cache get

Gets general information about the Nextmv cache.

Examples

  • Get cache information.

    $ nextmv cache get

Usage:

$ cache get [OPTIONS]

Options:

  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

cloud

Interact with Nextmv Cloud, a platform for deploying and managing decision models.

Usage:

$ cloud [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • acceptance: Create and manage Nextmv Cloud acceptance...
  • account: Manage your Nextmv Cloud account...
  • app: Create, manage, and push Nextmv Cloud...
  • batch: Create and manage Nextmv Cloud batch...
  • data: Upload data for Nextmv Cloud application...
  • ensemble: Create and manage Nextmv Cloud ensemble...
  • input-set: Create and manage Nextmv Cloud input sets.
  • instance: Create and manage Nextmv Cloud application...
  • managed-input: Create and handle managed inputs for...
  • marketplace: Interact with the Nextmv Marketplace.
  • run: Create and manage Nextmv Cloud application...
  • scenario: Create and manage Nextmv Cloud scenario...
  • secrets: Create and manage Nextmv Cloud secrets...
  • shadow: Create and manage Nextmv Cloud shadow tests.
  • sso: Manage SSO for your Nextmv Cloud...
  • switchback: Create and manage Nextmv Cloud switchback...
  • upload: Create temporary upload URLs for Nextmv...
  • version: Create and manage Nextmv Cloud application...

cloud acceptance

Create and manage Nextmv Cloud acceptance tests.

Usage:

$ cloud acceptance [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • create: Create a new Nextmv Cloud acceptance test.
  • delete: Deletes a Nextmv Cloud acceptance test.
  • get: Get a Nextmv Cloud acceptance test.
  • list: List all Nextmv Cloud acceptance tests for...
  • update: Update a Nextmv Cloud acceptance test.

cloud acceptance create

Create a new Nextmv Cloud acceptance test.

The acceptance test is based on a batch experiment. If the batch experiment with the same ID already exists, it will be reused. Otherwise, you must provide the --input-set-id option to create a new batch experiment.

Use the --wait flag to wait for the acceptance test to complete, polling for results. Using the --output flag will also activate waiting, and allows you to specify a destination file for the results.

Metrics

Metrics are provided as json objects using the --metrics flag. Each metric defines how to compare the candidate and baseline instances.

You can provide metrics in three ways: - A single metric as a json object. - Multiple metrics by repeating the --metrics flag. - Multiple metrics as a json array in a single --metrics flag.

Each metric must have the following fields: - field: Field of the metric to measure (e.g., "result.custom.unassigned"). - metric_type: Type of metric comparison. Allowed values: direct-comparison. - params: Parameters of the metric comparison. - operator: Comparison operator. Allowed values: eq, gt, ge, lt, le, and ne. - tolerance: Tolerance for the comparison. - type: Type of tolerance. Allowed values: , absolute, and relative. - value: Tolerance value (numeric). - statistic: Statistical method. Allowed values: min, max, mean, std, shifted_geometric_mean, p01, p05, p10, p25, p50, p75, p90, p95, and p99.

Object format: { "field": "field", "metric_type": "type", "params": { "operator": "op", "tolerance": { "type": "tol_type", "value": tol_value } }, "statistic": "statistic" }

Examples

  • Create an acceptance test with a single metric.

    $ METRIC='{ "field": "result.custom.unassigned", "metric_type": "direct-comparison", "params": { "operator": "lt", "tolerance": {"type": "relative", "value": 0.05} }, "statistic": "mean" }' nextmv cloud acceptance create --app-id hare-app \ --candidate-instance-id candidate-123 --baseline-instance-id baseline-456 \ --metrics "$METRIC" --input-set-id input-set-123

  • Create with multiple metrics by repeating the flag.

    $ METRIC1='{ "field": "result.custom.unassigned", "metric_type": "direct-comparison", "params": { "operator": "lt", "tolerance": {"type": "relative", "value": 0.05} }, "statistic": "mean" }' METRIC2='{ "field": "run.duration", "metric_type": "direct-comparison", "params": { "operator": "le", "tolerance": {"type": "absolute", "value": 1.0} }, "statistic": "p95" }' nextmv cloud acceptance create --app-id hare-app \ --candidate-instance-id candidate-123 --baseline-instance-id baseline-456 \ --metrics "\(METRIC1" --metrics "\)METRIC2" --input-set-id input-set-123

  • Create with multiple metrics in a single json array.

    $ METRICS='[ { "field": "result.custom.unassigned", "metric_type": "direct-comparison", "params": { "operator": "lt", "tolerance": {"type": "relative", "value": 0.05} }, "statistic": "mean" }, { "field": "run.duration", "metric_type": "direct-comparison", "params": { "operator": "le", "tolerance": {"type": "absolute", "value": 1.0} }, "statistic": "p95" } ]' nextmv cloud acceptance create --app-id hare-app \ --candidate-instance-id candidate-123 --baseline-instance-id baseline-456 \ --metrics "$METRICS" --input-set-id input-set-123

  • Create an acceptance test and wait for it to complete.

    $ METRIC='{ "field": "result.custom.unassigned", "metric_type": "direct-comparison", "params": { "operator": "lt", "tolerance": {"type": "relative", "value": 0.05} }, "statistic": "mean" }' nextmv cloud acceptance create --app-id hare-app \ --candidate-instance-id candidate-123 --baseline-instance-id baseline-456 \ --metrics "$METRIC" --input-set-id input-set-123 --wait

  • Create an acceptance test and save the results to a file, waiting for completion.

    $ METRIC='{ "field": "result.custom.unassigned", "metric_type": "direct-comparison", "params": { "operator": "lt", "tolerance": {"type": "relative", "value": 0.05} }, "statistic": "mean" }' nextmv cloud acceptance create --app-id hare-app \ --candidate-instance-id candidate-123 --baseline-instance-id baseline-456 \ --metrics "$METRIC" --input-set-id input-set-123 --output results.json

Usage:

$ cloud acceptance create [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -b, --baseline-instance-id BASELINE_INSTANCE_ID: ID of the baseline instance to compare against. [required]
  • -c, --candidate-instance-id CANDIDATE_INSTANCE_ID: ID of the candidate instance to test. [required]
  • -m, --metrics METRICS: Metrics to use for the acceptance test. Data should be valid json. Pass multiple metrics by repeating the flag, or providing a list of objects. See command help for details on metric formatting. [required]
  • -t, --acceptance-test-id ACCEPTANCE_TEST_ID: An optional ID for the acceptance test. If not provided, a random ID will be generated. [env var: NEXTMV_ACCEPTANCE_TEST_ID]
  • -d, --description DESCRIPTION: Description of the acceptance test.
  • -i, --input-set-id INPUT_SET_ID: ID of the input set to use for the underlying batch experiment. Required if the batch experiment does not exist yet.
  • -n, --name NAME: Optional name of the acceptance test. If not provided, the ID will be used as the name.
  • -o, --output OUTPUT_PATH: Waits for the test to complete and saves the results to this location.
  • --timeout TIMEOUT_SECONDS: The maximum time in seconds to wait for results when polling. Poll indefinitely if not set. [default: -1]
  • -w, --wait: Wait for the acceptance test to complete. Results are printed to stdout. Specify output location with --output.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud acceptance delete

Deletes a Nextmv Cloud acceptance test.

This action is permanent and cannot be undone. The underlying batch experiment and associated data will also be deleted. Use the --yes flag to skip the confirmation prompt.

Examples

  • Delete the acceptance test with the ID test-cotton-tail from application hare-app.

    $ nextmv cloud acceptance delete --app-id hare-app --acceptance-test-id test-cotton-tail

  • Delete the acceptance test without confirmation prompt.

    $ nextmv cloud acceptance delete --app-id hare-app --acceptance-test-id test-cotton-tail --yes

Usage:

$ cloud acceptance delete [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -t, --acceptance-test-id ACCEPTANCE_TEST_ID: The Nextmv Cloud acceptance test ID to use for this action. [env var: NEXTMV_ACCEPTANCE_TEST_ID; required]
  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud acceptance get

Get a Nextmv Cloud acceptance test.

Use the --wait flag to wait for the acceptance test to complete, polling for results. Using the --output flag will also activate waiting, and allows you to specify a destination file for the results.

Examples

  • Get the acceptance test with ID test-123 from application hare-app.

    $ nextmv cloud acceptance get --app-id hare-app --acceptance-test-id test-123

  • Get the acceptance test and wait for it to complete if necessary.

    $ nextmv cloud acceptance get --app-id hare-app --acceptance-test-id test-123 --wait

  • Get the acceptance test and save the results to a file.

    $ nextmv cloud acceptance get --app-id hare-app \ --acceptance-test-id test-123 --output results.json

  • Get the acceptance test using a specific profile.

    $ nextmv cloud acceptance get --app-id hare-app --acceptance-test-id test-123 --profile prod

Usage:

$ cloud acceptance get [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -t, --acceptance-test-id ACCEPTANCE_TEST_ID: The Nextmv Cloud acceptance test ID to use for this action. [env var: NEXTMV_ACCEPTANCE_TEST_ID; required]
  • -o, --output OUTPUT_PATH: Waits for the acceptance test to complete and saves the results to this location.
  • --timeout TIMEOUT_SECONDS: The maximum time in seconds to wait for results when polling. Poll indefinitely if not set. [default: -1]
  • -w, --wait: Wait for the acceptance test to complete. Results are printed to stdout. Specify output location with --output.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud acceptance list

List all Nextmv Cloud acceptance tests for an application.

This command retrieves all acceptance tests associated with the specified application. By default this command paginates the list of tests, which means multiple API calls may be made to retrieve all tests. You may use the --no-pagination option to disable pagination.

Examples

  • List all acceptance tests for application hare-app.

    $ nextmv cloud acceptance list --app-id hare-app

  • List all acceptance tests and save to a file.

    $ nextmv cloud acceptance list --app-id hare-app --output tests.json

  • List all acceptance tests using a specific profile.

    $ nextmv cloud acceptance list --app-id hare-app --profile prod

  • List all acceptance tests without pagination.

    $ nextmv cloud acceptance list --app-id hare-app --no-pagination

Usage:

$ cloud acceptance list [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • --no-pagination: Whether to disable pagination when listing this type of entity.
  • -o, --output OUTPUT_PATH: Saves the list of acceptance tests to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud acceptance update

Update a Nextmv Cloud acceptance test.

Update the name and/or description of an acceptance test. Any fields not specified will remain unchanged.

Examples

  • Update the name of an acceptance test.

    $ nextmv cloud acceptance update --app-id hare-app \ --acceptance-test-id test-123 --name "Updated Test Name"

  • Update the description of an acceptance test.

    $ nextmv cloud acceptance update --app-id hare-app \ --acceptance-test-id test-123 --description "Updated description"

  • Update both name and description and save the result.

    $ nextmv cloud acceptance update --app-id hare-app \ --acceptance-test-id test-123 --name "New Name" \ --description "New description" --output updated-test.json

Usage:

$ cloud acceptance update [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -t, --acceptance-test-id ACCEPTANCE_TEST_ID: The Nextmv Cloud acceptance test ID to use for this action. [env var: NEXTMV_ACCEPTANCE_TEST_ID; required]
  • -d, --description DESCRIPTION: Updated description of the acceptance test.
  • -n, --name NAME: Updated name of the acceptance test.
  • -o, --output OUTPUT_PATH: Saves the updated acceptance test information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud account

Manage your Nextmv Cloud account (organization).

Please contact Nextmv support for assistance configuring SSO for your organization. You may use the nextmv cloud sso command tree to manage the SSO configuration for your organization.

Usage:

$ cloud account [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • create: Create a new Nextmv Cloud account in your...
  • delete: Deletes an account within your SSO-enabled...
  • get: Get the information of a Nextmv Cloud...
  • update: Updates information of a Nextmv Cloud...

cloud account create

Create a new Nextmv Cloud account in your organization.

To create managed accounts, SSO must be configured for your organization. Please contact Nextmv support for assistance. You may use the nextmv cloud sso command tree to manage the SSO configuration for your organization.

At least one administrator email address must be provided. Multiple administrators can be specified by repeating the --admins flag or by separating email addresses with commas.

Examples

  • Create an account named Bunny Logistics with a single administrator.

    $ nextmv cloud account create --name "Bunny Logistics" \ --admins peter.rabbit@carrotexpress.com

  • Create an account named Hare Delivery Co with multiple administrators.

    $ nextmv cloud account create --name "Hare Delivery Co" \ --admins bugs@acme.com --admins roger@toontown.com

  • Create an account using the profile named hare.

    $ nextmv cloud account create --name "Cottontail Couriers" \ --admins fluffy@hopmail.com --profile hare

  • Create an account with comma-separated administrators.

    $ nextmv cloud account create --name "Whiskers Warehouse" \ --admins "thumper@forestmail.com,flopsy@warren.io"

Usage:

$ cloud account create [OPTIONS]

Options:

  • -a, --admins ADMINS: Email addresses of the administrators for the account. Pass multiple emails by repeating the flag, or separating with commas. [required]
  • -n, --name NAME: A name for the account. [required]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud account delete

Deletes an account within your SSO-enabled organization.

You must have the administrator role on that account in order to delete it.

This action is permanent and cannot be undone. Use the --yes flag to skip the confirmation prompt.

Examples

  • Delete the account with the ID bunnies-account.

    $ nextmv cloud account delete --account-id bunnies-account

  • Delete the account without confirmation prompt.

    $ nextmv cloud account delete --account-id bunnies-account --yes

Usage:

$ cloud account delete [OPTIONS]

Options:

  • -a, --account-id ACCOUNT_ID: The Nextmv Cloud account ID to use for this action. [env var: NEXTMV_ACCOUNT_ID; required]
  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud account get

Get the information of a Nextmv Cloud account.

This command is useful to get the attributes of an existing Nextmv Cloud account by its ID.

Examples

  • Get the account with the ID bunny-logistics.

    $ nextmv cloud account get --account-id bunny-logistics

  • Get the account with the ID cottontail-couriers and save the information to an account.json file.

    $ nextmv cloud account get --account-id cottontail-couriers --output account.json

Usage:

$ cloud account get [OPTIONS]

Options:

  • -a, --account-id ACCOUNT_ID: The Nextmv Cloud account ID to use for this action. [env var: NEXTMV_ACCOUNT_ID; required]
  • -o, --output OUTPUT_PATH: Saves the account information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud account update

Updates information of a Nextmv Cloud account.

This command allows you to update the name of an existing account.

Examples

  • Update the account named hare-delivery to Hare Delivery Co.

    $ nextmv cloud account update --account-id hare-delivery \ --name "Hare Delivery Co"

  • Update an account and save the updated information to an updated_account.json file.

    $ nextmv cloud account update --account-id cottontail-couriers \ --name "Cottontail Express" --output updated_account.json

Usage:

$ cloud account update [OPTIONS]

Options:

  • -a, --account-id ACCOUNT_ID: The Nextmv Cloud account ID to use for this action. [env var: NEXTMV_ACCOUNT_ID; required]
  • -n, --name NAME: A new name for the account. [required]
  • -o, --output OUTPUT_PATH: Saves the updated account information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud app

Create, manage, and push Nextmv Cloud applications.

A Nextmv application is an entity that contains a decision model as executable code. An application can make a run by taking an input, executing the decision model, and producing an output.

Usage:

$ cloud app [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • create: Create a new Nextmv Cloud application.
  • delete: Deletes a Nextmv Cloud application.
  • exists: Check if a Nextmv Cloud application exists.
  • get: Get a Nextmv Cloud application.
  • list: List all Nextmv Cloud applications.
  • push: Push (deploy) a Nextmv application to...
  • update: Updates a Nextmv Cloud application.

cloud app create

Create a new Nextmv Cloud application.

Use the --exist-ok flag to avoid errors when creating an application with an ID that already exists. This is useful for scripts that need to ensure an application exists without worrying about whether it was created previously.

An application can be marked as a workflow using the --is-workflow flag. Workflows allow for more complex decision-making processes by leveraging Nextpipe to orchestrate multiple decision models.

Examples

  • Create an application with the name Hare App. A random ID will be generated.

    $ nextmv cloud app create --name "Hare App"

  • Create an application with the specific ID hare-app.

    $ nextmv cloud app create --name "Hare App" --app-id hare-app

  • Create an application with an ID and description.

    $ nextmv cloud app create --name "Hare App" --app-id hare-app \ --description "An application for routing hares"

  • Create an application, or get it if it already exists.

    $ nextmv cloud app create --name "Hare App" --app-id hare-app --exist-ok

  • Create a workflow application.

    $ nextmv cloud app create --name "Hare Workflow" --app-id hare-workflow --is-workflow

  • Create an application with a default instance ID.

    $ nextmv cloud app create --name "Hare App" --app-id hare-app \ --default-instance-id burrow

  • Create an application with a default experiment instance.

    $ nextmv cloud app create --name "Hare App" --app-id hare-app \ --default-experiment-instance experiment-v1

Usage:

$ cloud app create [OPTIONS]

Options:

  • -a, --app-id APP_ID: An optional ID for the Nextmv Cloud application. If not provided, a random ID will be generated. [env var: NEXTMV_APP_ID]
  • -x, --default-experiment-instance DEFAULT_EXPERIMENT_INSTANCE: An optional default experiment instance ID for the application.
  • -i, --default-instance-id DEFAULT_INSTANCE_ID: An optional default instance ID for the application.
  • -d, --description DESCRIPTION: An optional description for the application.
  • -e, --exist-ok: If an application with the given ID already exists, do not raise an error, and simply return it.
  • -w, --is-workflow: Whether the application is a workflow.
  • -n, --name NAME: An optional name for the application. If not provided, the application ID will be used as the name.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud app delete

Deletes a Nextmv Cloud application.

This action is permanent and cannot be undone. Use the --yes flag to skip the confirmation prompt.

Examples

  • Delete the application with the ID hare-app.

    $ nextmv cloud app delete --app-id hare-app

  • Delete the application with the ID hare-app without confirmation prompt.

    $ nextmv cloud app delete --app-id hare-app --yes

Usage:

$ cloud app delete [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud app exists

Check if a Nextmv Cloud application exists.

This command is useful in scripting applications to verify the existence of a Nextmv Cloud application by its ID.

Examples

  • Check if the application with the ID hare-app exists.

    $ nextmv cloud app exists --app-id hare-app

  • Check if the application with the ID hare-app exists. Use the profile named hare.

    $ nextmv cloud app exists --app-id hare-app --profile hare

Usage:

$ cloud app exists [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud app get

Get a Nextmv Cloud application.

This command is useful to get the attributes of an existing Nextmv Cloud application by its ID.

Examples

  • Get the application with the ID hare-app.

    $ nextmv cloud app get --app-id hare-app

  • Get the application with the ID hare-app and save the information to an app.json file.

    $ nextmv cloud app get --app-id hare-app --output app.json

Usage:

$ cloud app get [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -o, --output OUTPUT_PATH: Saves the app information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud app list

List all Nextmv Cloud applications.

By default this command paginates the list of applications, which means multiple API calls may be made to retrieve all applications. You may use the --no-pagination option to disable pagination.

Examples

  • List all applications.

    $ nextmv cloud app list

  • List all applications using the profile named hare.

    $ nextmv cloud app list --profile hare

  • List all applications and save the information to an apps.json file.

    $ nextmv cloud app list --output apps.json

  • List all applications without pagination.

    $ nextmv cloud app list --no-pagination

Usage:

$ cloud app list [OPTIONS]

Options:

  • --no-pagination: Whether to disable pagination when listing this type of entity.
  • -o, --output OUTPUT_PATH: Saves the app list information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud app push

Push (deploy) a Nextmv application to Nextmv Cloud.

Use the --app-dir option to specify the path to your application's root directory. By default, the current working directory is used.

You can also provide a custom manifest file using the --manifest option. If not provided, the CLI will look for a file named app.yaml in the application's root.

By default, this command only pushes the app. After the push, you will be prompted to create a new version. If a new version is created, you will be prompted to link it to an instance. If the instance exists, you will be asked if you want to update it. If it doesn't, you will be asked to create it. You can use the following options to skip the prompts, useful in non-interactive sessions like in a CI/CD pipeline: --version-yes, --version-no, --version-id, --create-instance-id, and --update-instance-id.

Examples

  • Push an application, with ID hare-app, from the current directory.

    $ nextmv cloud app push --app-id hare-app

  • Push an application, with ID hare-app, from the ./my-app directory.

    $ nextmv cloud app push --app-id hare-app --app-dir ./my-app

  • Push an application, with ID hare-app, using a custom manifest file.

    $ nextmv cloud app push --app-id hare-app --manifest ./custom-manifest.yaml

  • Push and automatically create a new version (no prompt).

    $ nextmv cloud app push --app-id hare-app --version-yes

  • Push and create a new version with a custom version ID (no prompt).

    $ nextmv cloud app push --app-id hare-app --version-id v1.0.0

  • Push and create a new version, then link it to a new instance with a specific ID (no prompt).

    $ nextmv cloud app push --app-id hare-app --create-instance-id inst-1

  • Push and create a new version, then link it to an existing instance (no prompt).

    $ nextmv cloud app push --app-id hare-app --update-instance-id inst-1

Usage:

$ cloud app push [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -d, --app-dir APP_DIR: The path to the application's root directory. [default: .]
  • -m, --manifest MANIFEST_PATH: Path to the application manifest file (app.yaml).
  • --no-cache: Do not read from or write to the Nextmv dependency cache for Python applications.
  • -v, --version-id VERSION_ID: Custom ID for version creation after app push. Automatically generated if not provided. Activates --version-yes.
  • -y, --version-yes: Create a new version after push. Skips confirmation prompt. Useful for non-interactive sessions.
  • -n, --version-no: Skip version creation after push. Skips confirmation prompt. Useful for non-interactive sessions.
  • -c, --create-instance-id CREATE_INSTANCE_ID: Link the newly created version to a new instance with this ID. Skips prompt to provide an instance ID. Useful for non-interactive sessions. Activates --version-yes.
  • -u, --update-instance-id UPDATE_INSTANCE_ID: Link the newly created version to an existing instance with this ID. Skips prompt to provide an instance ID. Useful for non-interactive sessions. Activates --version-yes.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud app update

Updates a Nextmv Cloud application.

Please note that you cannot change the type of an application, you must create a new one.

Examples

  • Update an application's name.

    $ nextmv cloud app update --app-id hare-app --name "New Hare App"

  • Update an application's description.

    $ nextmv cloud app update --app-id hare-app --name "Hare App" \ --description "An updated description for routing hares"

  • Update an application's default instance ID.

    $ nextmv cloud app update --app-id hare-app --name "Hare App" \ --default-instance-id burrow

  • Update an application's default experiment instance.

    $ nextmv cloud app update --app-id hare-app --name "Hare App" \ --default-experiment-instance experiment-v1

  • Update multiple application properties at once.

    $ nextmv cloud app update --app-id hare-app --name "Hare App" \ --description "Updated description" --default-instance-id burrow \ --default-experiment-instance experiment-v1

  • Update an application and save the updated information to an updated_app.json file.

    $ nextmv cloud app update --app-id hare-app --name "New Hare App" --output updated_app.json

Usage:

$ cloud app update [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -x, --default-experiment-instance DEFAULT_EXPERIMENT_INSTANCE: A new default experiment instance ID for the application.
  • -i, --default-instance-id DEFAULT_INSTANCE_ID: A new default instance ID for the application.
  • -d, --description DESCRIPTION: A new description for the application.
  • -n, --name NAME: A new name for the application.
  • -o, --output OUTPUT_PATH: Saves the updated app information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud batch

Create and manage Nextmv Cloud batch experiments.

Usage:

$ cloud batch [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • create: Create a new Nextmv Cloud batch experiment.
  • delete: Deletes a Nextmv Cloud batch experiment.
  • get: Get a Nextmv Cloud batch experiment,...
  • list: List all Nextmv Cloud batch experiments...
  • metadata: Get metadata for a Nextmv Cloud batch...
  • update: Update a Nextmv Cloud batch experiment.

cloud batch create

Create a new Nextmv Cloud batch experiment.

A batch experiment executes multiple runs across different inputs and/or configurations. Each run is defined by a combination of input, instance or version, and optional configuration options.

Use the --wait flag to wait for the batch experiment to complete, polling for results. Using the --output flag will also activate waiting, and allows you to specify a destination file for the results.

Runs

Runs are provided as json objects using the --runs flag. Each run defines what input, instance/version, and configuration to use.

You can provide runs in three ways: - A single run as a json object. - Multiple runs by repeating the --runs flag. - Multiple runs as a json array in a single --runs flag.

Each run must have the following fields: - input_id: ID of the input to use for this run (required). If a managed input is used, this should be the ID of the managed input. If input_set_id is provided for the run, this should be the ID of an input within that input set. - instance_id OR version_id: Either an instance ID or version ID must be provided (at least one required). - option_set: ID of the option set to use (optional). Make sure to define the option sets using the --option-sets flag. - input_set_id: ID of the input set (optional). - scenario_id: Scenario ID if part of a scenario test (optional). - repetition: Repetition number (optional).

Object format: { "input_id": "meadow-input-a1", "instance_id": "bunny-hopper-v2", "option_set": "speed-optimized", "input_set_id": "spring-gardens" }

Option Sets

Option sets are provided as a json object using the --option-sets flag. Option sets define named collections of runtime options that can be referenced by runs.

The option sets object is a dictionary where keys are option set IDs and values are dictionaries of string key-value pairs representing the options.

Object format: { "speed-optimized": {"timeout": "30", "algorithm": "fast"}, "quality-focused": {"timeout": "300", "algorithm": "thorough"} }

Examples

  • Create a batch experiment with a single run.

    $ RUN='{ "input_id": "carrot-patch-a", "instance_id": "warren-planner-v1" }' nextmv cloud batch create --app-id hare-app --batch-experiment-id bunny-hop-test \ --input-set-id spring-gardens --runs "$RUN"

  • Create with multiple runs by repeating the flag.

    $ RUN1='{ "input_id": "lettuce-field-1", "instance_id": "hop-optimizer" }' RUN2='{ "input_id": "lettuce-field-2", "instance_id": "hop-optimizer" }' nextmv cloud batch create --app-id hare-app --input-set-id veggie-gardens \ --runs "\(RUN1" --runs "\)RUN2"

  • Create with multiple runs in a single json array.

    $ RUNS='[ { "input_id": "warren-zone-a", "instance_id": "burrow-builder" }, { "input_id": "warren-zone-b", "version_id": "tunnel-planner-v3" } ]' nextmv cloud batch create --app-id hare-app --input-set-id burrow-sites --runs "$RUNS"

  • Create a batch experiment and wait for it to complete.

    $ RUN='{ "input_id": "carrot-harvest", "instance_id": "foraging-route" }' nextmv cloud batch create --app-id hare-app --input-set-id harvest-season \ --runs "$RUN" --wait

  • Create a batch experiment and save the results to a file, waiting for completion.

    $ RUN='{ "input_id": "predator-zones", "instance_id": "safe-hopper" }' nextmv cloud batch create --app-id hare-app --input-set-id danger-zones \ --runs "$RUN" --output bunny-safety-results.json

  • Create a batch experiment with option sets.

    $ RUN1='{ "input_id": "garden-route-1", "instance_id": "hop-optimizer", "option_set": "fast-hops" }' RUN2='{ "input_id": "garden-route-1", "instance_id": "hop-optimizer", "option_set": "careful-hops" }' OPTION_SETS='{ "fast-hops": {"max_speed": "10", "caution_level": "low"}, "careful-hops": {"max_speed": "5", "caution_level": "high"} }' nextmv cloud batch create --app-id hare-app --input-set-id garden-paths \ --runs "\(RUN1" --runs "\)RUN2" --option-sets "$OPTION_SETS"

Usage:

$ cloud batch create [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -b, --batch-experiment-id BATCH_EXPERIMENT_ID: Optional ID for the batch experiment. Will be generated if not provided. [env var: NEXTMV_BATCH_EXPERIMENT_ID]
  • -d, --description DESCRIPTION: Description of the batch experiment.
  • -i, --input-set-id INPUT_SET_ID: ID of the input set to use for the batch experiment.
  • -n, --name NAME: Optional name of the batch experiment. If not provided, the ID will be used as the name.
  • --option-sets OPTION_SETS: Option sets to use for the batch experiment. Data should be valid json. See command help for details on option sets formatting.
  • -r, --runs RUNS: Runs to execute for the batch experiment. Data should be valid json. Pass multiple runs by repeating the flag, or providing a list of objects. See command help for details on run formatting.
  • -o, --output OUTPUT_PATH: Waits for the experiment to complete and saves the results to this location.
  • --timeout TIMEOUT_SECONDS: The maximum time in seconds to wait for results when polling. Poll indefinitely if not set. [default: -1]
  • -w, --wait: Wait for the batch experiment to complete. Results are printed to stdout. Specify output location with --output.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud batch delete

Deletes a Nextmv Cloud batch experiment.

This action is permanent and cannot be undone. The batch experiment and all associated data, including runs, will be deleted. Use the --yes flag to skip the confirmation prompt.

Examples

  • Delete the batch experiment with the ID hop-analysis from application hare-app.

    $ nextmv cloud batch delete --app-id hare-app --batch-experiment-id hop-analysis

  • Delete the batch experiment without confirmation prompt.

    $ nextmv cloud batch delete --app-id hare-app --batch-experiment-id carrot-routes --yes

Usage:

$ cloud batch delete [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -b, --batch-experiment-id BATCH_EXPERIMENT_ID: The Nextmv Cloud batch experiment ID to use for this action. [env var: NEXTMV_BATCH_EXPERIMENT_ID; required]
  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud batch get

Get a Nextmv Cloud batch experiment, including its runs.

Use the --wait flag to wait for the batch experiment to complete, polling for results. Using the --output flag will also activate waiting, and allows you to specify a destination file for the results.

Examples

  • Get the batch experiment with ID carrot-optimization from application hare-app.

    $ nextmv cloud batch get --app-id hare-app --batch-experiment-id carrot-optimization

  • Get the batch experiment and wait for it to complete if necessary.

    $ nextmv cloud batch get --app-id hare-app --batch-experiment-id bunny-hop-test --wait

  • Get the batch experiment and save the results to a file.

    $ nextmv cloud batch get --app-id hare-app --batch-experiment-id warren-planning \ --output results.json

  • Get the batch experiment using a specific profile.

    $ nextmv cloud batch get --app-id hare-app --batch-experiment-id lettuce-routes --profile prod

Usage:

$ cloud batch get [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -b, --batch-experiment-id BATCH_EXPERIMENT_ID: The Nextmv Cloud batch experiment ID to use for this action. [env var: NEXTMV_BATCH_EXPERIMENT_ID; required]
  • -o, --output OUTPUT_PATH: Waits for the batch experiment to complete and saves the results to this location.
  • --timeout TIMEOUT_SECONDS: The maximum time in seconds to wait for results when polling. Poll indefinitely if not set. [default: -1]
  • -w, --wait: Wait for the batch experiment to complete. Results are printed to stdout. Specify output location with --output.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud batch list

List all Nextmv Cloud batch experiments for an application.

This command retrieves all batch experiments associated with the specified application. By default this command paginates the list of experiments, which means multiple API calls may be made to retrieve all experiments. You may use the --no-pagination option to disable pagination.

Examples

  • List all batch experiments for application hare-app.

    $ nextmv cloud batch list --app-id hare-app

  • List all batch experiments and save to a file.

    $ nextmv cloud batch list --app-id hare-app --output experiments.json

  • List all batch experiments using a specific profile.

    $ nextmv cloud batch list --app-id hare-app --profile prod

  • List all experiments without pagination.

    $ nextmv cloud batch list --app-id hare-app --no-pagination

Usage:

$ cloud batch list [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • --no-pagination: Whether to disable pagination when listing this type of entity.
  • -o, --output OUTPUT_PATH: Saves the list of batch experiments to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud batch metadata

Get metadata for a Nextmv Cloud batch experiment.

This command retrieves metadata for a specific batch experiment, including status, creation date, and other high-level information without the full run details.

Examples

  • Get metadata for batch experiment bunny-warren-optimization from application hare-app.

    $ nextmv cloud batch metadata --app-id hare-app --batch-experiment-id bunny-warren-optimization

  • Get metadata and save to a file.

    $ nextmv cloud batch metadata --app-id hare-app --batch-experiment-id lettuce-delivery \ --output metadata.json

  • Get metadata using a specific profile.

    $ nextmv cloud batch metadata --app-id hare-app --batch-experiment-id hop-schedule --profile prod

Usage:

$ cloud batch metadata [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -b, --batch-experiment-id BATCH_EXPERIMENT_ID: The Nextmv Cloud batch experiment ID to use for this action. [env var: NEXTMV_BATCH_EXPERIMENT_ID; required]
  • -o, --output OUTPUT_PATH: Saves the batch experiment metadata to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud batch update

Update a Nextmv Cloud batch experiment.

Update the name and/or description of a batch experiment. Any fields not specified will remain unchanged.

Examples

  • Update the name of a batch experiment.

    $ nextmv cloud batch update --app-id hare-app --batch-experiment-id carrot-feast \ --name "Spring Carrot Harvest"

  • Update the description of a batch experiment.

    $ nextmv cloud batch update --app-id hare-app --batch-experiment-id bunny-hop-routes \ --description "Optimizing hop paths through the meadow"

  • Update both name and description and save the result.

    $ nextmv cloud batch update --app-id hare-app --batch-experiment-id lettuce-delivery \ --name "Warren Lettuce Express" --description "Fast lettuce delivery to all burrows" \ --output updated-batch.json

Usage:

$ cloud batch update [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -b, --batch-experiment-id BATCH_EXPERIMENT_ID: The Nextmv Cloud batch experiment ID to use for this action. [env var: NEXTMV_BATCH_EXPERIMENT_ID; required]
  • -d, --description DESCRIPTION: Updated description of the batch experiment.
  • -n, --name NAME: Updated name of the batch experiment.
  • -o, --output OUTPUT_PATH: Saves the updated batch experiment information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud data

Upload data for Nextmv Cloud application components.

When data is too large (exceeds 5 MiB), or you are working with the multi-file content format, you can use this command to upload information to Nextmv Cloud. Requires a pre-signed upload URL, which can be obtained using the nextmv cloud upload create command. Use the .upload_url field from the command output.

Usage:

$ cloud data [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • upload: Upload data for Nextmv Cloud application...

cloud data upload

Upload data for Nextmv Cloud application components.

When data is too large, or is not in a text-based content format, you can use this command to upload information for a Nextmv Cloud application. Data is used for starting new runs, tracking runs, performing experiments, and more.

The --upload-url flag is required to specify the pre-signed upload URL. It can be obtained using the nextmv cloud upload create command. Use the .upload_url field from the command output.

The data input should be given through stdin or the --input flag. When using the --input flag, the value can be one of the following:

  • <FILE_PATH>: path to a file containing the data. Use with the json, and text content formats.
  • <DIR_PATH>: path to a directory containing data files. Use with the multi-file content format.
  • <.tar.gz PATH>: path to a .tar.gz file containing tarred data files. Use with the multi-file content format.

Examples

  • Upload data from stdin for application hare-app. $ echo '{"key": "value"}' | nextmv cloud data upload --app-id hare-app --upload-url <URL>

  • Upload data from a JSON file.

    $ nextmv cloud data upload --app-id hare-app --upload-url <URL> --input data.json

  • Upload data from a text file.

    $ nextmv cloud data upload --app-id hare-app --upload-url <URL> --input data.txt

  • Upload multi-file data from a directory.

    $ nextmv cloud data upload --app-id hare-app --upload-url <URL> --input ./data_directory

  • Upload multi-file data from a .tar.gz file.

    $ nextmv cloud data upload --app-id hare-app --upload-url <URL> --input data.tar.gz

  • Upload data using a specific profile.

    $ nextmv cloud data upload --app-id hare-app --upload-url <URL> --input data.json \ --profile production

Usage:

$ cloud data upload [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -u, --upload-url UPLOAD_URL: Pre-signed URL for uploading the data. [required]
  • -i, --input INPUT_PATH: The input path to use. File or directory depending on content format. Uses stdin if not defined. Can be a .tar.gz file for multi-file content format.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud ensemble

Create and manage Nextmv Cloud ensemble definitions.

An ensemble definition defines how to coordinate and execute multiple child runs for an application, and how to determine the optimal result from those runs. You can configure run groups to specify which instances to run on and with what options, as well as evaluation rules to determine the best result based on specified metrics.

Usage:

$ cloud ensemble [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • create: Create a new Nextmv Cloud ensemble...
  • delete: Deletes a Nextmv Cloud ensemble definition.
  • get: Get a Nextmv Cloud ensemble definition.
  • list: List all Nextmv Cloud ensemble definitions...
  • update: Update a Nextmv Cloud ensemble definition.

cloud ensemble create

Create a new Nextmv Cloud ensemble definition.

An ensemble definition coordinates the execution of multiple child runs for an application and determines the optimal result from those runs. Each ensemble definition contains run groups and evaluation rules.

Run Groups

Run groups are provided as json objects using the --run-groups flag. Each run group specifies how child runs are executed.

You can provide run groups in three ways: - A single run group as a json object. - Multiple run groups by repeating the --run-groups flag. - Multiple run groups as a json array in a single --run-groups flag.

Each run group must have the following fields: - id: Unique identifier for the run group (required). - instance_id: The instance to execute runs on (required). - options: Runtime options/parameters (optional). Options should be provided as a json object with string key-value pairs. - repetitions: Number of times to repeat the run (optional).

Object format: { "id": "rg1", "instance_id": "inst-123", "options": {"param": "value"}, "repetitions": 5 }

Evaluation Rules

Evaluation rules are provided as json objects using the --rules flag. Each rule determines how to evaluate and select the best result from the child runs.

You can provide rules in three ways: - A single rule as a json object. - Multiple rules by repeating the --rules flag. - Multiple rules as a json array in a single --rules flag.

Each rule must have the following fields: - id: Unique identifier for the rule (required). - statistics_path: JSONPath to the metric (e.g., $.result.value) (required). - objective: Objective for the evaluation (required). Allowed values: maximize and minimize. - tolerance: Object with the following fields (required): - value: Tolerance value (float). - type: Tolerance type. Allowed values: absolute and relative. - index: Evaluation order - lower indices evaluated first (required).

Object format: { "id": "rule1", "statistics_path": "$.result.value", "objective": "minimize", "tolerance": {"value": 0.1, "type": "relative"}, "index": 0 }

Examples

  • Create an ensemble definition with a single run group and rule.

    $ RUN_GROUP='{ "id": "rg1", "instance_id": "inst-123" }' RULE='{ "id": "rule1", "statistics_path": "\(.result.value",</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> "objective": "minimize",</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> "tolerance": {"value": 0.1, "type": "relative"},</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> "index": 0</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> }'</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> nextmv cloud ensemble create --app-id hare-app --run-groups "\)RUN_GROUP" --rules "$RULE"

  • Create with multiple run groups by repeating the flag.

    $ RUN_GROUP_1='{ "id": "rg1", "instance_id": "inst-123" }' RUN_GROUP_2='{ "id": "rg2", "instance_id": "inst-456", "options": {"param": "value"} }' RULE='{ "id": "rule1", "statistics_path": "\(.result.value",</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> "objective": "minimize",</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> "tolerance": {"value": 0.1, "type": "relative"},</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> "index": 0</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> }'</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> nextmv cloud ensemble create --app-id hare-app --run-groups "\)RUN_GROUP_1" --run-groups "\(RUN_GROUP_2" \</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> --rules "\)RULE"

  • Create with multiple items in a single JSON array.

    $ RUN_GROUPS='[ {"id": "rg1", "instance_id": "inst-123"}, {"id": "rg2", "instance_id": "inst-456"} ]' RULES='[{ "id": "rule1", "statistics_path": "\(.result.value",</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> "objective": "minimize",</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> "tolerance": {"value": 0.1, "type": "relative"},</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> "index": 0</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> }]'</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> nextmv cloud ensemble create --app-id hare-app --run-groups "\)RUN_GROUPS" --rules "$RULES"

  • Create with custom ID, name, and description.

    $ RUN_GROUP='{ "id": "rg1", "instance_id": "inst-123" }' RULE='{ "id": "rule1", "statistics_path": "\(.result.value",</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> "objective": "minimize",</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> "tolerance": {"value": 0.1, "type": "relative"},</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> "index": 0</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> }'</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> nextmv cloud ensemble create --app-id hare-app \</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> --ensemble-definition-id prod-ensemble --name "Production Ensemble" \</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> --description "Production ensemble with multiple solvers" \</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> --run-groups "\)RUN_GROUP" --rules "$RULE"

  • Create with run group repetitions.

    $ RUN_GROUP='{ "id": "rg1", "instance_id": "inst-123", "repetitions": 5 }' RULE='{ "id": "rule1", "statistics_path": "\(.result.value",</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> "objective": "minimize",</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> "tolerance": {"value": 0.1, "type": "relative"},</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> "index": 0</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> }'</span> <span style="color: #7f7f7f; text-decoration-color: #7f7f7f"> nextmv cloud ensemble create --app-id hare-app --run-groups "\)RUN_GROUP" --rules "$RULE"

Usage:

$ cloud ensemble create [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -r, --run-groups RUN_GROUPS: Run groups to configure for the ensemble. Data should be valid json. Pass multiple run groups by repeating the flag, or providing a list of objects. See command help for details on run group formatting. [required]
  • -u, --rules RULES: Evaluation rules to configure for the ensemble. Data should be valid json. Pass multiple rules by repeating the flag, or providing a list of objects. See command help for details on rule formatting. [required]
  • -d, --description DESCRIPTION: An optional description for the ensemble definition.
  • -n, --name NAME: Optional name for the ensemble definition. If not provided, the ID will be used as the name.
  • -e, --ensemble-definition-id ENSEMBLE_DEFINITION_ID: The ID to assign to the new ensemble definition. If not provided, a random ID will be generated. [env var: NEXTMV_ENSEMBLE_DEFINITION_ID]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud ensemble delete

Deletes a Nextmv Cloud ensemble definition.

This action is permanent and cannot be undone. Use the --yes flag to skip the confirmation prompt.

Examples

  • Delete the ensemble definition with the ID prod-ensemble from application hare-app.

    $ nextmv cloud ensemble delete --app-id hare-app --ensemble-definition-id prod-ensemble

  • Delete the ensemble definition without confirmation prompt.

    $ nextmv cloud ensemble delete --app-id hare-app --ensemble-definition-id prod-ensemble --yes

Usage:

$ cloud ensemble delete [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -e, --ensemble-definition-id ENSEMBLE_DEFINITION_ID: The Nextmv Cloud ensemble definition ID to use for this action. [env var: NEXTMV_ENSEMBLE_DEFINITION_ID; required]
  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud ensemble get

Get a Nextmv Cloud ensemble definition.

This command is useful to get the attributes of an existing Nextmv Cloud ensemble definition by its ID.

Examples

  • Get the ensemble definition with the ID prod-ensemble from application hare-app.

    $ nextmv cloud ensemble get --app-id hare-app \ --ensemble-definition-id prod-ensemble

  • Get the ensemble definition with the ID prod-ensemble and save the information to an ensemble.json file.

    $ nextmv cloud ensemble get --app-id hare-app \ --ensemble-definition-id prod-ensemble --output ensemble.json

Usage:

$ cloud ensemble get [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -e, --ensemble-definition-id ENSEMBLE_DEFINITION_ID: The Nextmv Cloud ensemble definition ID to use for this action. [env var: NEXTMV_ENSEMBLE_DEFINITION_ID; required]
  • -o, --output OUTPUT_PATH: Saves the ensemble definition information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud ensemble list

List all Nextmv Cloud ensemble definitions for an application.

This command retrieves all ensemble definitions associated with the specified application. By default this command paginates the list of definitions, which means multiple API calls may be made to retrieve all definitions. You may use the --no-pagination option to disable pagination.

Examples

  • List all ensemble definitions for application hare-app.

    $ nextmv cloud ensemble list --app-id hare-app

  • List all ensemble definitions and save to a file.

    $ nextmv cloud ensemble list --app-id hare-app --output ensembles.json

  • List all ensemble definitions using a specific profile.

    $ nextmv cloud ensemble list --app-id hare-app --profile prod

  • List all ensemble definitions without pagination.

    $ nextmv cloud ensemble list --app-id hare-app --no-pagination

Usage:

$ cloud ensemble list [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • --no-pagination: Whether to disable pagination when listing this type of entity.
  • -o, --output OUTPUT_PATH: Saves the list of ensemble definitions to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud ensemble update

Update a Nextmv Cloud ensemble definition.

You can update the name and/or description of an existing ensemble definition. To modify run groups or evaluation rules, you need to delete and recreate the ensemble definition.

Examples

  • Update the name of an ensemble definition.

    $ nextmv cloud ensemble update --app-id hare-app \ --ensemble-definition-id prod-ensemble --name "Updated Production Ensemble"

  • Update the description of an ensemble definition.

    $ nextmv cloud ensemble update --app-id hare-app \ --ensemble-definition-id prod-ensemble \ --description "Updated ensemble for production workloads"

  • Update both name and description.

    $ nextmv cloud ensemble update --app-id hare-app \ --ensemble-definition-id prod-ensemble --name "Production Ensemble v2" \ --description "Enhanced ensemble configuration for production"

  • Update and save the result to a file.

    $ nextmv cloud ensemble update --app-id hare-app \ --ensemble-definition-id prod-ensemble --name "New Name" \ --description "New Description" --output updated.json

Usage:

$ cloud ensemble update [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -e, --ensemble-definition-id ENSEMBLE_DEFINITION_ID: The Nextmv Cloud ensemble definition ID to use for this action. [env var: NEXTMV_ENSEMBLE_DEFINITION_ID; required]
  • -d, --description DESCRIPTION: A new description for the ensemble definition.
  • -n, --name NAME: A new name for the ensemble definition.
  • -o, --output OUTPUT_PATH: Saves the updated ensemble definition information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud input-set

Create and manage Nextmv Cloud input sets.

An input set is a collection of inputs from associated runs that can be reused across multiple experiments. Input sets allow you to test different configurations of your decision model using the same set of inputs for consistent comparison.

Usage:

$ cloud input-set [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • create: Create a new Nextmv Cloud input set for...
  • delete: Deletes a Nextmv Cloud input set.
  • get: Get an Nextmv Cloud input set.
  • list: List all input sets of a Nextmv Cloud...
  • update: Updates a Nextmv Cloud input set.

cloud input-set create

Create a new Nextmv Cloud input set for experiments.

An input set is a collection of inputs that can be reused across multiple experiments.

  1. --run-ids: Create from a list of existing run IDs.
  2. --managed-inputs: Create from existing managed inputs in the application.
  3. --instance-id with --start-time and --end-time: Create from instance runs matching the time range criteria.

Examples

  • Create an input set for application hare-app from runs. A random input set ID will be generated if one is not provided.

    $ nextmv cloud input-set create --app-id hare-app \ --run-ids run-1 --run-ids run-2 --run-ids run-3

  • Create an input set with a specific ID and name.

    $ nextmv cloud input-set create --app-id hare-app --input-set-id hare-input-set \ --name "Hare Input Set" --run-ids run-1 --run-ids run-2 --run-ids run-3

  • Create an input set using existing managed inputs.

    $ nextmv cloud input-set create --app-id hare-app \ --managed-inputs '[{"id": "hare-input-1", "name": "hare input", "description": "hare description"}]'

  • Create an input set from runs using a specific instance and time range.

    $ nextmv cloud input-set create --app-id hare-app \ --instance-id hare-instance --start-time "2024-01-01T00:00:00Z" \ --end-time "2024-01-31T23:59:59Z"

Usage:

$ cloud input-set create [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -d, --description DESCRIPTION: An optional description for the input set.
  • --end-time END_TIME: End time for filtering runs in RFC 3339 format. Object format: '2024-01-01T00:00:00Z'
  • -s, --input-set-id INPUT_SET_ID: An optional ID for the input set. If not provided, a random ID will be generated. [env var: NEXTMV_INPUT_SET_ID]
  • -i, --instance-id INSTANCE_ID: Instance ID to filter runs from.
  • --managed-inputs MANAGED_INPUTS: Managed inputs for the input set. Data should be valid json. Object format: [{'id': 'id', 'name': 'name', 'description': 'description'}].
  • -m, --maximum-runs MAXIMUM_RUNS: Maximum number of runs to include (max 20). [default: 20]
  • -n, --name NAME: An optional name for the input set. If not provided, the ID will be used as the name.
  • -r, --run-ids RUN_IDS: List of run IDs to include in the input set (max 20). Pass multiple run IDs by repeating the flag.
  • --start-time START_TIME: Start time for filtering runs in RFC 3339 format. Object format: '2024-01-01T00:00:00Z'
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud input-set delete

Deletes a Nextmv Cloud input set.

This action is permanent and cannot be undone. The input set and all associated data will be deleted. Use the --yes flag to skip the confirmation prompt.

Examples

  • Delete the input set with the ID hop-analysis from application hare-app.

    $ nextmv cloud input-set delete --app-id hare-app --input-set-id hop-analysis

  • Delete the input set without confirmation prompt.

    $ nextmv cloud input-set delete --app-id hare-app --input-set-id carrot-routes --yes

Usage:

$ cloud input-set delete [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -s, --input-set-id INPUT_SET_ID: The Nextmv Cloud input set ID to use for this action. [env var: NEXTMV_INPUT_SET_ID; required]
  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud input-set get

Get an Nextmv Cloud input set.

This command retrieves the details of an existing input set, including its name, description, and the list of inputs it contains.

Examples

  • Get an input set with the ID hare-input-set.

    $ nextmv cloud input-set get --app-id hare-app --input-set-id hare-input-set

  • Get an input set with the ID hare-input-set and save the information to a input-set.json file.

    $ nextmv cloud input-set get --app-id hare-app --input-set-id hare-input-set \ --output input-set.json

Usage:

$ cloud input-set get [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -s, --input-set-id INPUT_SET_ID: The Nextmv Cloud input set ID to use for this action. [env var: NEXTMV_INPUT_SET_ID; required]
  • -o, --output OUTPUT_PATH: Saves the input set information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud input-set list

List all input sets of a Nextmv Cloud application.

This command retrieves all input sets that exist for a given Nextmv Cloud application. By default this command paginates the list of input sets, which means multiple API calls may be made to retrieve all input sets. You may use the --no-pagination option to disable pagination.

Examples

  • List all input sets of application hare-app.

    $ nextmv cloud input-set list --app-id hare-app

  • List all input sets using the profile named hare.

    $ nextmv cloud input-set list --app-id hare-app --profile hare

  • List all input sets and save the information to a input-sets.json file.

    $ nextmv cloud input-set list --app-id hare-app --output input-sets.json

  • List all input sets without pagination.

    $ nextmv cloud input-set list --app-id hare-app --no-pagination

Usage:

$ cloud input-set list [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • --no-pagination: Whether to disable pagination when listing this type of entity.
  • -o, --output OUTPUT_PATH: Saves the input set list to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud input-set update

Updates a Nextmv Cloud input set.

This command updates the metadata of an existing input set. You can update the name, description, or managed inputs of the input set.

Examples

  • Update an input set's name.

    $ nextmv cloud input-set update --app-id hare-app \ --input-set-id hare-input-set --name "New Name"

  • Update an input set's description.

    $ nextmv cloud input-set update --app-id hare-app \ --input-set-id hare-input-set --description "Updated description"

  • Update an input set's managed inputs.

    $ nextmv cloud input-set update --app-id hare-app --input-set-id hare-input-set \ --managed-inputs '[{"id": "hare-input-1", "name": "hare input", "description": "hare description"}]'

  • Update both name and description.

    $ nextmv cloud input-set update --app-id hare-app --input-set-id hare-input-set \ --name "New Name" --description "Updated description"

  • Update and save to a file.

    $ nextmv cloud input-set update --app-id hare-app --input-set-id hare-input-set \ --name "New Name" --output updated_input_set.json

Usage:

$ cloud input-set update [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -s, --input-set-id INPUT_SET_ID: The Nextmv Cloud input set ID to use for this action. [env var: NEXTMV_INPUT_SET_ID; required]
  • -n, --name NAME: A new name for the input set.
  • -d, --description DESCRIPTION: A new description for the input set.
  • --managed-inputs MANAGED_INPUTS: Managed inputs for the input set. Data should be valid json. Object format: [{'id': 'id', 'name': 'name', 'description': 'description'}].
  • -o, --output OUTPUT_PATH: Saves the updated input set information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud instance

Create and manage Nextmv Cloud application instances.

An application instance is a representation of a version and optional configuration (options/parameters). Instances are the mechanism by which a run is made. When you make a new run, the app determines which instance to use and then uses the executable code associated to the version for the run.

Usage:

$ cloud instance [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • create: Create a new Nextmv Cloud application...
  • delete: Deletes a Nextmv Cloud application instance.
  • exists: Check if a Nextmv Cloud application...
  • get: Get a Nextmv Cloud application instance.
  • list: List all instances of a Nextmv Cloud...
  • update: Updates a Nextmv Cloud application instance.

cloud instance create

Create a new Nextmv Cloud application instance.

Use the --exist-ok flag to avoid errors when creating an instance with an ID that already exists. This is useful for scripts that need to ensure an instance exists without worrying about whether it was created previously.

Examples

  • Create an instance for application hare-app version v1.

    $ nextmv cloud instance create --app-id hare-app --version-id v1 --instance-id prod

  • Create an instance with a specific name.

    $ nextmv cloud instance create --app-id hare-app --version-id v1 \ --instance-id prod --name "Production Instance"

  • Create an instance with a name and description.

    $ nextmv cloud instance create --app-id hare-app --version-id v1 \ --instance-id prod --name "Production Instance" \ --description "Instance for production routing jobs"

  • Create an instance, or get it if it already exists.

    $ nextmv cloud instance create --app-id hare-app --version-id v1 \ --instance-id prod --exist-ok

  • Create an instance with configuration options.

    $ nextmv cloud instance create --app-id hare-app --version-id v1 \ --instance-id prod --execution-class 6c9500mb870s --priority 1

  • Create an instance with runtime options.

    $ nextmv cloud instance create --app-id hare-app --version-id v1 \ --instance-id prod --options max_duration=30 --options timeout=60

Usage:

$ cloud instance create [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -v, --version-id VERSION_ID: The Nextmv Cloud version ID to use for this action. [env var: NEXTMV_VERSION_ID; required]
  • -d, --description DESCRIPTION: An optional description for the instance.
  • -e, --exist-ok: If an instance with the given ID already exists, do not raise an error, and simply return it.
  • -i, --instance-id INSTANCE_ID: The ID to assign to the new instance. If not provided, a random ID will be generated. [env var: NEXTMV_INSTANCE_ID]
  • -n, --name NAME: Optional name for the instance. If a name is not provided, the instance ID will be used as the name.
  • -c, --content-format CONTENT_FORMAT: The content format of the instance to create. Allowed values are: json and multi-file.
  • -x, --execution-class EXECUTION_CLASS: The execution class to use for the instance.
  • --integration-id INTEGRATION_ID: The integration ID to use for the runs of the instance, if applicable.
  • --no-queuing / --yes-queuing: Whether to queue when running the instance. Default is False, meaning the instance's run will be queued. [default: yes-queuing]
  • -o, --options KEY=VALUE: Options to always use when running the instance. Format: key=value. Pass multiple options by repeating the flag, or separating with commas.
  • --priority PRIORITY: The priority of the runs in the instance. Priority is between 1 and 9, with 1 being the highest priority. [default: 6]
  • -s, --secret-collection-id SECRET_COLLECTION_ID: The secret collection ID to use for the instance, if applicable.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud instance delete

Deletes a Nextmv Cloud application instance.

This action is permanent and cannot be undone. Use the --yes flag to skip the confirmation prompt.

Examples

  • Delete the instance with the ID prod from application hare-app.

    $ nextmv cloud instance delete --app-id hare-app --instance-id prod

  • Delete the instance without confirmation prompt.

    $ nextmv cloud instance delete --app-id hare-app --instance-id prod --yes

Usage:

$ cloud instance delete [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -i, --instance-id INSTANCE_ID: The Nextmv Cloud instance ID to use for this action. [env var: NEXTMV_INSTANCE_ID; required]
  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud instance exists

Check if a Nextmv Cloud application instance exists.

This command is useful in scripting applications to verify the existence of a Nextmv Cloud application instance by its ID.

Examples

  • Check if the instance with the ID prod exists in application hare-app.

    $ nextmv cloud instance exists --app-id hare-app --instance-id prod

  • Check if the instance exists using the profile named hare.

    $ nextmv cloud instance exists --app-id hare-app --instance-id prod --profile hare

Usage:

$ cloud instance exists [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -i, --instance-id INSTANCE_ID: The Nextmv Cloud instance ID to use for this action. [env var: NEXTMV_INSTANCE_ID; required]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud instance get

Get a Nextmv Cloud application instance.

This command is useful to get the attributes of an existing Nextmv Cloud application instance by its ID.

Examples

  • Get the instance with the ID prod from application hare-app.

    $ nextmv cloud instance get --app-id hare-app --instance-id prod

  • Get the instance with the ID prod and save the information to a instance.json file.

    $ nextmv cloud instance get --app-id hare-app --instance-id prod --output instance.json

Usage:

$ cloud instance get [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -i, --instance-id INSTANCE_ID: The Nextmv Cloud instance ID to use for this action. [env var: NEXTMV_INSTANCE_ID; required]
  • -o, --output OUTPUT_PATH: Saves the instance information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud instance list

List all instances of a Nextmv Cloud application.

By default this command paginates the list of instances, which means multiple API calls may be made to retrieve all instances. You may use the --no-pagination option to disable pagination.

Examples

  • List all instances of application hare-app.

    $ nextmv cloud instance list --app-id hare-app

  • List all instances using the profile named hare.

    $ nextmv cloud instance list --app-id hare-app --profile hare

  • List all instances and save the information to a instances.json file.

    $ nextmv cloud instance list --app-id hare-app --output instances.json

  • List all instances without pagination.

    $ nextmv cloud instance list --app-id hare-app --no-pagination

Usage:

$ cloud instance list [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • --no-pagination: Whether to disable pagination when listing this type of entity.
  • -o, --output OUTPUT_PATH: Saves the instance list information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud instance update

Updates a Nextmv Cloud application instance.

Examples

  • Update an instance's name.

    $ nextmv cloud instance update --app-id hare-app --instance-id prod --name "Production Instance"

  • Update an instance's description.

    $ nextmv cloud instance update --app-id hare-app --instance-id prod \ --description "Instance for production routing jobs"

  • Update an instance to use a different version.

    $ nextmv cloud instance update --app-id hare-app --instance-id prod --version-id v2

  • Update an instance's name and description at once.

    $ nextmv cloud instance update --app-id hare-app --instance-id prod \ --name "Production Instance" --description "Instance for production routing jobs"

  • Update an instance and save the updated information to a updated_instance.json file.

    $ nextmv cloud instance update --app-id hare-app --instance-id prod \ --name "Production Instance" --output updated_instance.json

  • Update an instance's execution class and priority.

    $ nextmv cloud instance update --app-id hare-app --instance-id prod \ --execution-class 6c9500mb870s --priority 1

  • Update an instance's runtime options.

    $ nextmv cloud instance update --app-id hare-app --instance-id prod \ --options max_duration=30 --options timeout=60

Usage:

$ cloud instance update [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -i, --instance-id INSTANCE_ID: The Nextmv Cloud instance ID to use for this action. [env var: NEXTMV_INSTANCE_ID; required]
  • -d, --description DESCRIPTION: A new description for the instance.
  • --locked / --unlocked: Whether to lock or unlock the instance. If not provided, the locked status will not be updated.
  • -n, --name NAME: A new name for the instance.
  • -u, --output OUTPUT_PATH: Saves the updated instance information to this location.
  • -v, --version-id VERSION_ID: Update the instance to use a different version.
  • -c, --content-format CONTENT_FORMAT: The content format for the instance. Allowed values are: json and multi-file.
  • -x, --execution-class EXECUTION_CLASS: The execution class to use for the instance.
  • --integration-id INTEGRATION_ID: The integration ID to use for the runs of the instance, if applicable.
  • --no-queuing / --yes-queuing: Whether to queue when running the instance. Default is False, meaning the instance's run will be queued.
  • -o, --options KEY=VALUE: Options to always use when running the instance. Format: key=value. Pass multiple options by repeating the flag, or separating with commas.
  • --priority PRIORITY: The priority of the runs in the instance. Priority is between 1 and 9, with 1 being the highest priority.
  • -s, --secret-collection-id SECRET_COLLECTION_ID: The secret collection ID to use for the instance, if applicable.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud managed-input

Create and handle managed inputs for Nextmv Cloud applications.

A managed input is a stored input that can be referenced and used across runs and experiments. Managed inputs help organize and reuse test cases and datasets within your application.

Usage:

$ cloud managed-input [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • create: Create a new Nextmv Cloud application...
  • delete: Deletes a Nextmv Cloud application managed...
  • get: Get a Nextmv Cloud application managed input.
  • list: List all managed inputs of a Nextmv Cloud...
  • update: Updates a Nextmv Cloud application managed...

cloud managed-input create

Create a new Nextmv Cloud application managed input.

A managed input can be created from either an upload or a run. Use the --upload-id flag to create from an upload, or the --run-id flag to create from a run output.

You can get an upload ID by using the nextmv cloud upload create command. The .upload_id field in the command output contains the upload ID, and the .upload_url field contains a pre-signed URL to upload the data to. You may use the nextmv cloud data upload command to upload the data to the upload URL.

If no ID is provided, a unique ID will be automatically generated. If no name is provided, the ID will be used as the name.

Examples

  • Create a managed input from an upload.

    $ nextmv cloud managed-input create --app-id hare-app --upload-id upl_123456789

  • Create a managed input from a run.

    $ nextmv cloud managed-input create --app-id hare-app --run-id run_123456789

  • Create a managed input with a specific ID, name, and description.

    $ nextmv cloud managed-input create --app-id hare-app --name "Test Input" \ --managed-input-id inp_custom --description "Test case for validation" --upload-id upl_123456789

  • Create a managed input with custom format.

    $ nextmv cloud managed-input create --app-id hare-app --name "CSV Input" \ --upload-id upl_123456789 --content-format csv

Usage:

$ cloud managed-input create [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -c, --content-format CONTENT_FORMAT: The content format for the managed input. Allowed values are: json and multi-file. Default is json.
  • -d, --description DESCRIPTION: An optional description for the managed input.
  • -m, --managed-input-id MANAGED_INPUT_ID: The ID to assign to the new managed input. If not provided, a random ID will be generated. [env var: NEXTMV_MANAGED_INPUT_ID]
  • -n, --name NAME: Optional name for the managed input. If not provided, the ID will be used as the name.
  • -r, --run-id RUN_ID: ID of the run to use for the managed input. Either --upload-id or --run-id must be specified. [env var: NEXTMV_RUN_ID]
  • -u, --upload-id UPLOAD_ID: ID of the upload to use for the managed input. Either --upload-id or --run-id must be specified.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud managed-input delete

Deletes a Nextmv Cloud application managed input.

This action is permanent and cannot be undone. Use the --yes flag to skip the confirmation prompt.

Examples

  • Delete the managed input with the ID inp_123456789 from application hare-app.

    $ nextmv cloud managed-input delete --app-id hare-app --managed-input-id inp_123456789

  • Delete the managed input without confirmation prompt.

    $ nextmv cloud managed-input delete --app-id hare-app --managed-input-id inp_123456789 --yes

Usage:

$ cloud managed-input delete [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -m, --managed-input-id MANAGED_INPUT_ID: The Nextmv Cloud managed input ID to use for this action. [env var: NEXTMV_MANAGED_INPUT_ID; required]
  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud managed-input get

Get a Nextmv Cloud application managed input.

This command is useful to get the attributes of an existing Nextmv Cloud application managed input by its ID.

Examples

  • Get the managed input with the ID inp_123456789 from application hare-app.

    $ nextmv cloud managed-input get --app-id hare-app --managed-input-id inp_123456789

  • Get the managed input with the ID inp_123456789 and save the information to a managed_input.json file.

    $ nextmv cloud managed-input get --app-id hare-app --managed-input-id inp_123456789 --output managed_input.json

Usage:

$ cloud managed-input get [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -m, --managed-input-id MANAGED_INPUT_ID: The Nextmv Cloud managed input ID to use for this action. [env var: NEXTMV_MANAGED_INPUT_ID; required]
  • -o, --output OUTPUT_PATH: Saves the managed input information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud managed-input list

List all managed inputs of a Nextmv Cloud application.

By default this command paginates the list of inputs, which means multiple API calls may be made to retrieve all inputs. You may use the --no-pagination option to disable pagination.

Examples

  • List all managed inputs of application hare-app.

    $ nextmv cloud managed-input list --app-id hare-app

  • List all managed inputs using the profile named hare.

    $ nextmv cloud managed-input list --app-id hare-app --profile hare

  • List all managed inputs and save the information to a managed_inputs.json file.

    $ nextmv cloud managed-input list --app-id hare-app --output managed_inputs.json

  • List all managed inputs without pagination.

    $ nextmv cloud managed-input list --app-id hare-app --no-pagination

Usage:

$ cloud managed-input list [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • --no-pagination: Whether to disable pagination when listing this type of entity.
  • -o, --output OUTPUT_PATH: Saves the managed input list information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud managed-input update

Updates a Nextmv Cloud application managed input.

Examples

  • Update a managed input's name.

    $ nextmv cloud managed-input update --app-id hare-app --managed-input-id inp_123456789 --name "Updated Test Input"

  • Update a managed input's description.

    $ nextmv cloud managed-input update --app-id hare-app --managed-input-id inp_123456789 \ --description "Updated test case for validation"

  • Update a managed input's name and description at once.

    $ nextmv cloud managed-input update --app-id hare-app --managed-input-id inp_123456789 \ --name "Updated Test Input" --description "Updated test case for validation"

  • Update a managed input and save the updated information to a updated_managed_input.json file.

    $ nextmv cloud managed-input update --app-id hare-app --managed-input-id inp_123456789 \ --name "Updated Test Input" --output updated_managed_input.json

Usage:

$ cloud managed-input update [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -m, --managed-input-id MANAGED_INPUT_ID: The Nextmv Cloud managed input ID to use for this action. [env var: NEXTMV_MANAGED_INPUT_ID; required]
  • -d, --description DESCRIPTION: A new description for the managed input.
  • -n, --name NAME: A new name for the managed input.
  • -o, --output OUTPUT_PATH: Saves the updated managed input information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud marketplace

Interact with the Nextmv Marketplace.

The Nextmv Marketplace is a platform where users can discover, subscribe to, and run decision applications for various use cases.

Usage:

$ cloud marketplace [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • app: Create and manage Nextmv Marketplace...
  • subscription: Manage Nextmv Marketplace subscriptions.
  • version: Create and manage Nextmv Marketplace...

cloud marketplace app

Create and manage Nextmv Marketplace applications.

Unlike the nextmv cloud app command set, this one can be used to manage Marketplace applications instances explicitly.

Usage:

$ cloud marketplace app [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • create: Create a new Nextmv Marketplace application.
  • get: Get a Nextmv Marketplace application.
  • list: List all Nextmv Marketplace applications.
  • update: Update a Nextmv Marketplace application.
cloud marketplace app create

Create a new Nextmv Marketplace application.

Marketplace applications are created under a partner ID and are based on a reference application. The reference application serves as a template, providing the structure and configuration for the new marketplace listing.

Applications can be enriched with categories and features to improve discoverability in the Nextmv Marketplace. If no app ID is provided, a random ID will be generated.

Examples

  • Create a marketplace application with the title Hare Routing. A random ID will be generated.

    $ nextmv cloud marketplace app create --partner-id fluffy-comrade \ --reference-app-id hare-app --title "Hare Routing"

  • Create a marketplace application with a specific ID marketplace-hare.

    $ nextmv cloud marketplace app create --partner-id fluffy-comrade \ --reference-app-id hare-app --title "Hare Routing" --app-id marketplace-hare

  • Create a marketplace application with a description.

    $ nextmv cloud marketplace app create --partner-id fluffy-comrade \ --reference-app-id hare-app --title "Hare Routing" \ --description "Advanced routing solution for hare logistics"

  • Create a marketplace application with categories.

    $ nextmv cloud marketplace app create --partner-id fluffy-comrade \ --reference-app-id hare-app --title "Hare Routing" \ --categories routing --categories logistics

  • Create a marketplace application with features.

    $ nextmv cloud marketplace app create --partner-id fluffy-comrade \ --reference-app-id hare-app --title "Hare Routing" \ --features "real-time optimization" --features "multi-vehicle support"

  • Create a marketplace application with all options.

    $ nextmv cloud marketplace app create --partner-id fluffy-comrade \ --reference-app-id hare-app --title "Hare Routing" --app-id marketplace-hare \ --description "Advanced routing solution" --categories routing \ --features "real-time optimization"

Usage:

$ cloud marketplace app create [OPTIONS]

Options:

  • -n, --partner-id PARTNER_ID: The partner ID to create the application under. [env var: NEXTMV_MARKETPLACE_PARTNER_ID; required]
  • -r, --reference-app-id REFERENCE_APP_ID: The ID of an existing application to use as a reference for the new application. [required]
  • -t, --title TITLE: The title of the application to create. [required]
  • -a, --app-id APP_ID: An optional ID for the Nextmv Marketplace application. If not provided, a random ID will be generated. [env var: NEXTMV_MARKETPLACE_APP_ID]
  • -c, --categories CATEGORIES: Optional categories for the application. Pass multiple categories by repeating the flag.
  • -d, --description DESCRIPTION: An optional description for the application.
  • -f, --features FEATURES: Optional features for the application. Pass multiple features by repeating the flag.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.
cloud marketplace app get

Get a Nextmv Marketplace application.

Examples

  • Get the marketplace application with the ID marketplace-hare.

    $ nextmv cloud marketplace app get --partner-id my-partner \ --app-id marketplace-hare

  • Get the marketplace application and save the information to an app.json file.

    $ nextmv cloud marketplace app get --partner-id my-partner \ --app-id marketplace-hare --output app.json

Usage:

$ cloud marketplace app get [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Marketplace application ID to use for this action. [env var: NEXTMV_MARKETPLACE_APP_ID; required]
  • -n, --partner-id PARTNER_ID: The partner ID to use for this action. [env var: NEXTMV_MARKETPLACE_PARTNER_ID; required]
  • -o, --output OUTPUT_PATH: Saves the app information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.
cloud marketplace app list

List all Nextmv Marketplace applications.

By default, this command lists all marketplace applications. Use the --partner-id flag to filter applications belonging to a specific partner.

Examples

  • List all marketplace applications.

    $ nextmv cloud marketplace app list

  • List all applications for a specific partner.

    $ nextmv cloud marketplace app list --partner-id my-partner

  • List all applications using the profile named hare.

    $ nextmv cloud marketplace app list --profile hare

  • List all applications and save the information to an apps.json file.

    $ nextmv cloud marketplace app list --output apps.json

Usage:

$ cloud marketplace app list [OPTIONS]

Options:

  • -n, --partner-id PARTNER_ID: Only the apps belonging to this partner will be listed. If not provided, all apps are listed. [env var: NEXTMV_MARKETPLACE_PARTNER_ID]
  • -o, --output OUTPUT_PATH: Saves the app list information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.
cloud marketplace app update

Update a Nextmv Marketplace application.

This command allows you to update the attributes of an existing marketplace application, including its title, description, categories, features, and state. Only the fields you specify will be updated; all other fields will remain unchanged.

Examples

  • Update the title of a marketplace application.

    $ nextmv cloud marketplace app update --partner-id my-partner \ --app-id marketplace-hare --title "Advanced Hare Routing"

  • Update the description of a marketplace application.

    $ nextmv cloud marketplace app update --partner-id my-partner \ --app-id marketplace-hare --description "Enterprise-grade routing solution"

  • Update categories and features.

    $ nextmv cloud marketplace app update --partner-id my-partner \ --app-id marketplace-hare --categories routing --categories logistics \ --features "real-time optimization"

  • Update the state of a marketplace application.

    $ nextmv cloud marketplace app update --partner-id my-partner \ --app-id marketplace-hare --state released

  • Update multiple fields and save the result to a file.

    $ nextmv cloud marketplace app update --partner-id my-partner \ --app-id marketplace-hare --title "New Title" --state released \ --output app.json

Usage:

$ cloud marketplace app update [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Marketplace application ID to use for this action. [env var: NEXTMV_MARKETPLACE_APP_ID; required]
  • -n, --partner-id PARTNER_ID: The partner ID to use for this action. [env var: NEXTMV_MARKETPLACE_PARTNER_ID; required]
  • -c, --categories CATEGORIES: Optional categories for the application. Pass multiple categories by repeating the flag.
  • -d, --description DESCRIPTION: An optional description for the application.
  • -f, --features FEATURES: Optional features for the application. Pass multiple features by repeating the flag.
  • -o, --output OUTPUT_PATH: Saves the app information to this location.
  • -s, --state STATE: The state of the application. Allowed values are: released, pre-release, and retracted.
  • -t, --title TITLE: The title of the application to update.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud marketplace subscription

Manage Nextmv Marketplace subscriptions.

These commands allow you to view and manage your subscriptions to Marketplace applications.

Usage:

$ cloud marketplace subscription [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • create: Create a new marketplace subscription.
  • delete: Delete a marketplace subscription.
  • get: Get a marketplace subscription.
  • list: List all marketplace subscriptions.
cloud marketplace subscription create

Create a new marketplace subscription.

Subscribe to a marketplace application by providing the subscription ID, which combines the partner ID and application ID in the format <PARTNER_ID>-<APP_ID>. This allows you to access and use the marketplace application in your account.

Examples

  • Subscribe to a marketplace application.

    $ nextmv cloud marketplace subscription create --subscription-id my-partner-marketplace-hare

  • Subscribe to a marketplace application using the profile named hare.

    $ nextmv cloud marketplace subscription create --subscription-id my-partner-marketplace-hare \ --profile hare

Usage:

$ cloud marketplace subscription create [OPTIONS]

Options:

  • -s, --subscription-id SUBSCRIPTION_ID: The ID of the marketplace application and partner to subscribe to. Format of the subscription ID: <PARTNER_ID>-<APP_ID>. [env var: NEXTMV_MARKETPLACE_SUBSCRIPTION_ID; required]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.
cloud marketplace subscription delete

Delete a marketplace subscription.

Use the --yes flag to skip the confirmation prompt.

Examples

  • Delete a marketplace subscription.

    $ nextmv cloud marketplace subscription delete --subscription-id my-partner-marketplace-hare

  • Delete a marketplace subscription without confirmation prompt.

    $ nextmv cloud marketplace subscription delete --subscription-id my-partner-marketplace-hare \ --yes

Usage:

$ cloud marketplace subscription delete [OPTIONS]

Options:

  • -s, --subscription-id SUBSCRIPTION_ID: The Nextmv Marketplace subscription ID to use for this action. Format of the subscription ID: <PARTNER_ID>-<APP_ID>. [env var: NEXTMV_MARKETPLACE_SUBSCRIPTION_ID; required]
  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.
cloud marketplace subscription get

Get a marketplace subscription.

Examples

  • Get a marketplace subscription.

    $ nextmv cloud marketplace subscription get --subscription-id my-partner-marketplace-hare

  • Get a marketplace subscription and save the information to a subscription.json file.

    $ nextmv cloud marketplace subscription get --subscription-id my-partner-marketplace-hare \ --output subscription.json

Usage:

$ cloud marketplace subscription get [OPTIONS]

Options:

  • -s, --subscription-id SUBSCRIPTION_ID: The Nextmv Marketplace subscription ID to use for this action. Format of the subscription ID: <PARTNER_ID>-<APP_ID>. [env var: NEXTMV_MARKETPLACE_SUBSCRIPTION_ID; required]
  • -o, --output OUTPUT_PATH: Saves the subscription information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.
cloud marketplace subscription list

List all marketplace subscriptions.

Examples

  • List all marketplace subscriptions.

    $ nextmv cloud marketplace subscription list

  • List all subscriptions using the profile named hare.

    $ nextmv cloud marketplace subscription list --profile hare

  • List all subscriptions and save the information to a subscriptions.json file.

    $ nextmv cloud marketplace subscription list --output subscriptions.json

Usage:

$ cloud marketplace subscription list [OPTIONS]

Options:

  • -o, --output OUTPUT_PATH: Saves the subscription list information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud marketplace version

Create and manage Nextmv Marketplace application versions.

Usage:

$ cloud marketplace version [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • create: Create a new marketplace version for an...
  • get: Get a marketplace version for an application.
  • list: List all versions of a marketplace...
  • update: Update a marketplace version's change log.
cloud marketplace version create

Create a new marketplace version for an application.

Marketplace versions are created by referencing an existing version from the underlying application. The change log provides information about what has changed in this marketplace version. If no version ID is provided, a random ID will be generated.

Examples

  • Create a marketplace version with change log entries. A random ID will be generated.

    $ nextmv cloud marketplace version create --partner-id my-partner \ --app-id marketplace-hare --reference-version-id v1.0.0 \ --change-log "Improved performance" --change-log "Fixed bug in routing"

  • Create a marketplace version with a specific version ID.

    $ nextmv cloud marketplace version create --partner-id my-partner \ --app-id marketplace-hare --reference-version-id v1.0.0 \ --version-id mkt-v1 --change-log "Initial marketplace release"

  • Create a marketplace version with multiple change log entries.

    $ nextmv cloud marketplace version create --partner-id my-partner \ --app-id marketplace-hare --reference-version-id v2.0.0 \ --change-log "Added new features" --change-log "Performance improvements" \ --change-log "Updated documentation"

Usage:

$ cloud marketplace version create [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Marketplace application ID to use for this action. [env var: NEXTMV_MARKETPLACE_APP_ID; required]
  • -c, --change-log CHANGE_LOG: Changelog entries for the version. Pass multiple entries by repeating the flag. [required]
  • -n, --partner-id PARTNER_ID: The partner ID to use for this action. [env var: NEXTMV_MARKETPLACE_PARTNER_ID; required]
  • -r, --reference-version-id REFERENCE_VERSION_ID: The ID of the version to reference. [required]
  • -v, --version-id VERSION_ID: The ID to assign to the new marketplace version. If not provided, a random ID will be generated. [env var: NEXTMV_MARKETPLACE_VERSION_ID]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.
cloud marketplace version get

Get a marketplace version for an application.

Examples

  • Get the marketplace version with the ID mkt-v1.

    $ nextmv cloud marketplace version get --partner-id my-partner \ --app-id marketplace-hare --version-id mkt-v1

  • Get the marketplace version and save the information to a version.json file.

    $ nextmv cloud marketplace version get --partner-id my-partner \ --app-id marketplace-hare --version-id mkt-v1 --output version.json

Usage:

$ cloud marketplace version get [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Marketplace application ID to use for this action. [env var: NEXTMV_MARKETPLACE_APP_ID; required]
  • -n, --partner-id PARTNER_ID: The partner ID to use for this action. [env var: NEXTMV_MARKETPLACE_PARTNER_ID; required]
  • -v, --version-id VERSION_ID: The Nextmv Marketplace version ID to use for this action. [env var: NEXTMV_MARKETPLACE_VERSION_ID; required]
  • -o, --output OUTPUT_PATH: Saves the version information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.
cloud marketplace version list

List all versions of a marketplace application.

Examples

  • List all marketplace versions for an application.

    $ nextmv cloud marketplace version list --partner-id my-partner \ --app-id marketplace-hare

  • List all versions using the profile named hare.

    $ nextmv cloud marketplace version list --partner-id my-partner \ --app-id marketplace-hare --profile hare

  • List all versions and save the information to a versions.json file.

    $ nextmv cloud marketplace version list --partner-id my-partner \ --app-id marketplace-hare --output versions.json

Usage:

$ cloud marketplace version list [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Marketplace application ID to use for this action. [env var: NEXTMV_MARKETPLACE_APP_ID; required]
  • -n, --partner-id PARTNER_ID: The partner ID to use for this action. [env var: NEXTMV_MARKETPLACE_PARTNER_ID; required]
  • -o, --output OUTPUT_PATH: Saves the version list information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.
cloud marketplace version update

Update a marketplace version's change log.

This command allows you to update the change log entries for an existing marketplace version. Pass multiple change log entries by repeating the --change-log flag.

Examples

  • Update a version's change log with a single entry.

    $ nextmv cloud marketplace version update --partner-id my-partner \ --app-id marketplace-hare --version-id mkt-v1 \ --change-log "Fixed critical bug in routing algorithm"

  • Update a version's change log with multiple entries.

    $ nextmv cloud marketplace version update --partner-id my-partner \ --app-id marketplace-hare --version-id mkt-v1 \ --change-log "Performance improvements" --change-log "Added new features" \ --change-log "Updated documentation"

  • Update a version and save the updated information to a updated_version.json file.

    $ nextmv cloud marketplace version update --partner-id my-partner \ --app-id marketplace-hare --version-id mkt-v1 \ --change-log "Bug fixes" --output updated_version.json

Usage:

$ cloud marketplace version update [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Marketplace application ID to use for this action. [env var: NEXTMV_MARKETPLACE_APP_ID; required]
  • -n, --partner-id PARTNER_ID: The partner ID to use for this action. [env var: NEXTMV_MARKETPLACE_PARTNER_ID; required]
  • -v, --version-id VERSION_ID: The Nextmv Marketplace version ID to use for this action. [env var: NEXTMV_MARKETPLACE_VERSION_ID; required]
  • -c, --change-log CHANGE_LOG: Changelog entries for the version. Pass multiple entries by repeating the flag. [required]
  • -o, --output OUTPUT_PATH: Saves the updated version information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud run

Create and manage Nextmv Cloud application runs.

A run represents the execution of a decision model within a Nextmv Cloud application. Each run takes an input, processes it using the decision model, and produces an output.

Usage:

$ cloud run [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • cancel: Cancel a queued/running Nextmv Cloud...
  • clone: Clone an existing Nextmv Cloud application...
  • compare: Compare multiple Nextmv Cloud application...
  • create: Create a new Nextmv Cloud application run.
  • delete: Deletes a Nextmv Cloud application run.
  • get: Get the result (output) of a Nextmv Cloud...
  • information: Get the information of a Nextmv Cloud...
  • input: Get the input of a Nextmv Cloud...
  • list: Get the list of runs for a Nextmv Cloud...
  • logs: Get the logs of a Nextmv Cloud application...
  • metadata: This command is deprecated, use... (DEPRECATED)
  • track: Track an external run as a Nextmv Cloud...

cloud run cancel

Cancel a queued/running Nextmv Cloud application run.

Examples

  • Cancel the run with ID burrow-123 belonging to an app with ID hare-app.

    $ nextmv cloud run cancel --app-id hare-app --run-id burrow-123

  • Cancel the run with ID burrow-123 belonging to an app with ID hare-app. Use the profile named hare.

    $ nextmv cloud run cancel --app-id hare-app --run-id burrow-123 --profile hare

Usage:

$ cloud run cancel [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -r, --run-id RUN_ID: The Nextmv run ID to use for this action. [env var: NEXTMV_RUN_ID; required]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud run clone

Clone an existing Nextmv Cloud application run.

All information of the original (cloned) run will be reused. You may override any information you wish, such as the input, content format, or instance, for example. All the options for creating the new run work the same way as in the nextmv cloud run create command. You may inspect the documentation of that command for more details on what each option does.

Examples

  • Clone run run-123 from app hare-app, reusing the original run's input.

    $ nextmv cloud run clone --app-id hare-app --cloned-run-id run-123

  • Clone run run-123 from app hare-app, overriding the input with a json file via stdin. $ cat input.json | nextmv cloud run clone --app-id hare-app --cloned-run-id run-123

  • Clone run run-123 from app hare-app, overriding the input with an input.json file.

    $ nextmv cloud run clone --app-id hare-app --cloned-run-id run-123 --input input.json

  • Clone run run-123 from app hare-app. Wait for the run to complete and print the result to stdout.

    $ nextmv cloud run clone --app-id hare-app --cloned-run-id run-123 --wait

  • Clone run run-123 from app hare-app. Tail the run's logs, streaming to stderr.

    $ nextmv cloud run clone --app-id hare-app --cloned-run-id run-123 --tail

  • Clone run run-123 from app hare-app. Wait for the run to complete and write the result to an output.json file.

    $ nextmv cloud run clone --app-id hare-app --cloned-run-id run-123 --output output.json

  • Clone run run-123 from app hare-app. Wait for the run to complete, and write the logs to a logs.log file.

    $ nextmv cloud run clone --app-id hare-app --cloned-run-id run-123 --logs logs.log

  • Clone run run-123 from app hare-app. Wait for the run to complete. Tail the run's logs, streaming to stderr. Write the logs to a logs.log file. Write the result to an output.json file.

    $ nextmv cloud run clone --app-id hare-app --cloned-run-id run-123 --tail --logs logs.log \ --output output.json

  • Clone run run-123 from app hare-app, overriding the input with a multi-file directory, using the default instance.

    $ nextmv cloud run clone --app-id hare-app --cloned-run-id run-123 --input inputs \ --instance-id default

  • Clone run run-123 from app hare-app, overriding the input with a multi-file directory, using the burrow instance. Wait for the run to complete and download the result files to an outputs directory.

    $ nextmv cloud run clone --app-id hare-app --cloned-run-id run-123 --input inputs --instance-id burrow \ --output outputs

  • Clone run run-123 from app hare-app, overriding the input with a Nextmv managed input with ID carrot-input. Wait for the run to complete and download the result files to an outputs directory.

    $ nextmv cloud run clone --app-id hare-app --cloned-run-id run-123 --managed-input-id carrot-input \ --output outputs

Usage:

$ cloud run clone [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -r, --cloned-run-id CLONED_RUN_ID: The original Nextmv run ID that you want to clone. [env var: NEXTMV_CLONED_RUN_ID; required]
  • -i, --input INPUT_PATH: The input path to use. File or directory depending on content format. Uses stdin if not defined. Can be a .tar.gz file for multi-file content format.
  • -m, --managed-input-id MANAGED_INPUT_ID: The Nextmv Cloud managed input ID to use as the input for the run. [env var: NEXTMV_MANAGED_INPUT_ID]
  • -l, --logs LOGS_PATH: Waits for the run to complete and saves the logs to this location.
  • -u, --output OUTPUT_PATH: Waits for the run to complete and save the output to this location. A file or directory will be created depending on content format.
  • -t, --tail: Tail the logs until the run completes. Logs are streamed to stderr. Specify log output location with --logs.
  • -w, --wait: Wait for the run to complete. Run result is printed to stdout for json, to a dir for multi-file. Specify output location with --output.
  • -c, --content-format CONTENT_FORMAT: The content format of the run to create. Allowed values are: json and multi-file.
  • -d, --definition-id DEFINITION_ID: The definition ID to use for the run. Required for certain run types like ensemble runs.
  • --description DESCRIPTION: An optional description for the new run.
  • -e, --execution-class EXECUTION_CLASS: The execution class to use for the run, if applicable.
  • --instance-id INSTANCE_ID: The instance ID to use for the run.
  • --integration-id INTEGRATION_ID: The integration ID to use for the run, if applicable.
  • -n, --name NAME: An optional name for the new run.
  • --no-queuing / --yes-queuing: Whether to queue when running. Default is False, meaning the run will be queued. [default: yes-queuing]
  • -o, --options KEY=VALUE: Options passed to the run. Format: key=value. Pass multiple options by repeating the flag, or separating with commas.
  • --priority PRIORITY: The priority of the run. Priority is between 1 and 9, with 1 being the highest priority.
  • --run-type RUN_TYPE: The type of run to create. Allowed values are: standard, external, ensemble, and ensemble-child.
  • -s, --secret-collection-id SECRET_COLLECTION_ID: The secret collection ID to use for the run, if applicable.
  • --timeout TIMEOUT_SECONDS: The maximum time in seconds to wait for results when polling. Poll indefinitely if not set. [default: -1]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud run compare

Compare multiple Nextmv Cloud application runs.

By default this command prints a human-readable table to stdout. You may use the --flat option to print the comparison result to stdout as json instead. When the --output option is used, the --flat flag is automatically activated and the result is saved as json.

Examples

  • Compare two runs belonging to an app with ID hare-app repeating the --run-ids flag.

    $ nextmv cloud run compare --app-id hare-app --run-ids fluff --run-ids white

  • Compare three runs belonging to an app with ID hare-app separating the run IDs with commas.

    $ nextmv cloud run compare --app-id hare-app --run-ids fluff,white,thumper

  • Compare two runs and print the result as json.

    $ nextmv cloud run compare --app-id hare-app --run-ids fluff,white --flat

  • Compare two runs and save the result to a file named comparison.json.

    $ nextmv cloud run compare --app-id hare-app --run-ids fluff,white --output comparison.json

Usage:

$ cloud run compare [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -r, --run-ids RUN_IDS: List of run IDs to compare. Pass multiple run IDs by repeating the flag, or separating with commas. [required]
  • -f, --flat: Print the comparison result as json, instead of a table.
  • -o, --output OUTPUT_PATH: Saves the comparison result to this location. Activates the --flat option.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud run create

Create a new Nextmv Cloud application run.

Input for the run should be given through stdin, the --input flag, or a Nextmv managed input by passing its ID into the --managed-input-id flag. When using the --input flag, the value can be one of the following:

  • <FILE_PATH>: path to a file containing the input data. Use with the json content format.
  • <DIR_PATH>: path to a directory containing the input data files. Use with the multi-file content format.
  • <.tar.gz PATH>: path to a .tar.gz file containing tarred input data files. Use with the multi-file content format.

The CLI determines how to send the input to the application based on the value.

Use the --wait flag to wait for the run to complete, polling for results. Using the --output flag will also activate waiting, and allows you to specify a destination (file or dir) for the output, depending on the content type.

Use the --tail flag to stream logs to stderr until the run completes. Using the --logs flag will also activate waiting, and allows you to specify a file to write the logs to.

An application run executes against a specific instance. An instance represents the combination of executable code and configuration. You can specify the instance with the --instance-id flag. These are the possible values for this flag:

  • unspecified: Run against the default instance of the application. When an application is created, the default instance is latest.
  • latest: uses the special latest instance of the application. This corresponds to the latest pushed executable.
  • <INSTANCE_ID>: uses the instance with the given ID.

Examples

  • Read a json input via stdin, from an input.json file, and submit a run to an app with ID hare-app, using the latest instance. $ cat input.json | nextmv cloud run create --app-id hare-app

  • Read a json input from an input.json file, and submit a run to an app with ID hare-app, using the latest instance.

    $ nextmv cloud run create --app-id hare-app --input input.json

  • Read a json input from an input.json file, and submit a run to an app with ID hare-app, using the latest instance. Wait for the run to complete and print the result to stdout.

    $ nextmv cloud run create --app-id hare-app --input input.json --wait

  • Read a json input from an input.json file, and submit a run to an app with ID hare-app, using the latest instance. Tail the run's logs, streaming to stderr.

    $ nextmv cloud run create --app-id hare-app --input input.json --tail

  • Read a json input from an input.json file, and submit a run to an app with ID hare-app, using the latest instance. Wait for the run to complete and write the result to an output.json file.

    $ nextmv cloud run create --app-id hare-app --input input.json --output output.json

  • Read a json input from an input.json file, and submit a run to an app with ID hare-app, using the latest instance. Wait for the run to complete, and write the logs to a logs.log file.

    $ nextmv cloud run create --app-id hare-app --input input.json --logs logs.log

  • Read a json input from an input.json file, and submit a run to an app with ID hare-app, using the latest instance. Wait for the run to complete. Tail the run's logs, streaming to stderr. Write the logs to a logs.log file. Write the result to an output.json file.

    $ nextmv cloud run create --app-id hare-app --input input.json --tail --logs logs.log \ --output output.json

  • Read a multi-file input from an inputs directory, and submit a run to an app with ID hare-app, using the default instance.

    $ nextmv cloud run create --app-id hare-app --input inputs --instance-id default

  • Read a multi-file input from an inputs directory, and submit a run to an app with ID hare-app, using the default instance. Wait for the run to complete, and save the results to the default location (a directory named after the run ID).

    $ nextmv cloud run create --app-id hare-app --input inputs --instance-id default --wait

  • Read a multi-file input from an inputs directory, and submit a run to an app with ID hare-app, using the burrow instance. Wait for the run to complete and download the result files to an outputs directory.

    $ nextmv cloud run create --app-id hare-app --input inputs --instance-id burrow --output outputs

  • Set the run to use a Nextmv managed input with ID carrot-input, and submit a run to an app with ID hare-app, using the latest instance. Wait for the run to complete and download the result files to an outputs directory.

    $ nextmv cloud run create --app-id hare-app --managed-input-id carrot-input --output outputs

Usage:

$ cloud run create [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -i, --input INPUT_PATH: The input path to use. File or directory depending on content format. Uses stdin if not defined. Can be a .tar.gz file for multi-file content format.
  • -m, --managed-input-id MANAGED_INPUT_ID: The Nextmv Cloud managed input ID to use as the input for the run. [env var: NEXTMV_MANAGED_INPUT_ID]
  • -l, --logs LOGS_PATH: Waits for the run to complete and saves the logs to this location.
  • -u, --output OUTPUT_PATH: Waits for the run to complete and save the output to this location. A file or directory will be created depending on content format.
  • -t, --tail: Tail the logs until the run completes. Logs are streamed to stderr. Specify log output location with --logs.
  • -w, --wait: Wait for the run to complete. Run result is printed to stdout for json, to a dir for multi-file. Specify output location with --output.
  • -c, --content-format CONTENT_FORMAT: The content format of the run to create. Allowed values are: json and multi-file.
  • -d, --definition-id DEFINITION_ID: The definition ID to use for the run. Setting it converts the run into an ensemble run.
  • --description DESCRIPTION: An optional description for the new run.
  • -e, --execution-class EXECUTION_CLASS: The execution class to use for the run, if applicable.
  • --instance-id INSTANCE_ID: The instance ID to use for the run.
  • --integration-id INTEGRATION_ID: The integration ID to use for the run, if applicable.
  • -n, --name NAME: An optional name for the new run.
  • --no-queuing / --yes-queuing: Whether to queue when running. Default is False, meaning the run will be queued. [default: yes-queuing]
  • -o, --options KEY=VALUE: Options passed to the run. Format: key=value. Pass multiple options by repeating the flag, or separating with commas.
  • --priority PRIORITY: The priority of the run. Priority is between 1 and 9, with 1 being the highest priority. [default: 6]
  • -r, --run-type RUN_TYPE: The type of run to create. Allowed values are: standard, external, ensemble, and ensemble-child. [default: standard]
  • -s, --secret-collection-id SECRET_COLLECTION_ID: The secret collection ID to use for the run, if applicable.
  • --timeout TIMEOUT_SECONDS: The maximum time in seconds to wait for results when polling. Poll indefinitely if not set. [default: -1]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud run delete

Deletes a Nextmv Cloud application run.

This action is permanent and cannot be undone. Use the --yes flag to skip the confirmation prompt.

Examples

  • Delete the run with ID burrow-123 belonging to an app with ID hare-app.

    $ nextmv cloud run delete --app-id hare-app --run-id burrow-123

  • Delete the run with ID burrow-123 belonging to an app with ID hare-app. Use the profile named hare.

    $ nextmv cloud run delete --app-id hare-app --run-id burrow-123 --profile hare

Usage:

$ cloud run delete [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -r, --run-id RUN_ID: The Nextmv run ID to use for this action. [env var: NEXTMV_RUN_ID; required]
  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud run get

Get the result (output) of a Nextmv Cloud application run.

Use the --wait flag to wait for the run to complete, polling for results. Using the --output flag will also activate waiting, and allows you to specify a destination (file or dir) for the output, depending on the content type.

Examples

  • Get the results of a run with ID burrow-123, belonging to an app with ID hare-app.

    $ nextmv cloud run get --app-id hare-app --run-id burrow-123

  • Get the results of a run with ID burrow-123, belonging to an app with ID hare-app. Wait for the run to complete if necessary.

    $ nextmv cloud run get --app-id hare-app --run-id burrow-123 --wait

  • Get the results of a run with ID burrow-123, belonging to an app with ID hare-app. The app is a json app. Save the results to a results.json file.

    $ nextmv cloud run get --app-id hare-app --run-id burrow-123 --output results.json

  • Get the results of a run with ID burrow-123, belonging to an app with ID hare-app. The app is a multi-file app. Save the results to the results dir.

    $ nextmv cloud run get --app-id hare-app --run-id burrow-123 --output results

  • Get the results of a run with ID burrow-123, belonging to an app with ID hare-app. Use the profile named hare.

    $ nextmv cloud run get --app-id hare-app --run-id burrow-123 --profile hare

Usage:

$ cloud run get [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -r, --run-id RUN_ID: The Nextmv run ID to use for this action. [env var: NEXTMV_RUN_ID; required]
  • -o, --output OUTPUT_PATH: Waits for the run to complete and save the output to this location. A file or directory will be created depending on content format.
  • --timeout TIMEOUT_SECONDS: The maximum time in seconds to wait for results when polling. Poll indefinitely if not set. [default: -1]
  • -w, --wait: Wait for the run to complete. Run result is printed to stdout for json, to a dir for multi-file. Specify output location with --output.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud run information

Get the information of a Nextmv Cloud application run.

By default, the information (including metadata) is fetched and printed to stdout. Use the --output flag to save the information to a file.

Examples

  • Get the information of a run with ID burrow-123, belonging to an app with ID hare-app. Information is printed to stdout.

    $ nextmv cloud run information --app-id hare-app --run-id burrow-123

  • Get the information of a run with ID burrow-123, belonging to an app with ID hare-app. Save the information to a information.json file.

    $ nextmv cloud run information --app-id hare-app --run-id burrow-123 --output information.json

  • Get the information of a run with ID burrow-123, belonging to an app with ID hare-app. Use the profile named hare.

    $ nextmv cloud run information --app-id hare-app --run-id burrow-123 --profile hare

Usage:

$ cloud run information [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -r, --run-id RUN_ID: The Nextmv run ID to use for this action. [env var: NEXTMV_RUN_ID; required]
  • -o, --output OUTPUT_PATH: Saves the information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud run input

Get the input of a Nextmv Cloud application run.

By default, the input is fetched and printed to stdout. Use the --output flag to save the input to a file.

Examples

  • Get the input of a run with ID burrow-123, belonging to an app with ID hare-app. Input is printed to stdout.

    $ nextmv cloud run input --app-id hare-app --run-id burrow-123

  • Get the input of a run with ID burrow-123, belonging to an app with ID hare-app. Save the input to a input.json file.

    $ nextmv cloud run input --app-id hare-app --run-id burrow-123 --output input.json

  • Get the input of a run with ID burrow-123, belonging to an app with ID hare-app. Use the profile named hare.

    $ nextmv cloud run input --app-id hare-app --run-id burrow-123 --profile hare

Usage:

$ cloud run input [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -r, --run-id RUN_ID: The Nextmv run ID to use for this action. [env var: NEXTMV_RUN_ID; required]
  • -o, --output OUTPUT_PATH: Saves the input to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud run list

Get the list of runs for a Nextmv Cloud application.

By default, the list of runs is fetched and printed to stdout. Use the --output flag to save the list to a file. You can use the optional --status flag to filter runs by their status. This command paginates the list of runs, which means multiple API calls may be made to retrieve all runs. You may use the --no-pagination option to disable pagination.

Examples

  • Get the list of runs for an app with ID hare-app. List is printed to stdout.

    $ nextmv cloud run list --app-id hare-app

  • Get the list of runs for an app with ID hare-app. Save the list to a runs.json file.

    $ nextmv cloud run list --app-id hare-app --output runs.json

  • Get the list of runs for an app with ID hare-app. Use the profile named hare.

    $ nextmv cloud run list --app-id hare-app --profile hare

  • Get the list of queued runs for an app with ID hare-app.

    $ nextmv cloud run list --app-id hare-app --status queued

  • Get the list of runs for an app with ID hare-app without pagination.

    $ nextmv cloud run list --app-id hare-app --no-pagination

Usage:

$ cloud run list [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • --no-pagination: Whether to disable pagination when listing this type of entity.
  • -o, --output OUTPUT_PATH: Saves the list of runs to this location.
  • -s, --status STATUS: Filter runs by their status. Allowed values are: canceled, failed, none, queued, running, and succeeded.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud run logs

Get the logs of a Nextmv Cloud application run.

By default, the logs are fetched and printed to stderr. Use the --tail flag to stream logs to stderr until the run completes. Using the --output flag will also activate waiting, and allows you to specify a file to write the logs to.

Examples

  • Get the logs of a run with ID burrow-123, belonging to an app with ID hare-app. Logs are printed to stderr.

    $ nextmv cloud run logs --app-id hare-app --run-id burrow-123

  • Get the logs of a run with ID burrow-123, belonging to an app with ID hare-app. Tail the logs until the run completes.

    $ nextmv cloud run logs --app-id hare-app --run-id burrow-123 --tail

  • Get the logs of a run with ID burrow-123, belonging to an app with ID hare-app. Save the logs to a logs.log file.

    $ nextmv cloud run logs --app-id hare-app --run-id burrow-123 --output logs.log

  • Get the logs of a run with ID burrow-123, belonging to an app with ID hare-app. Tail the logs and save them to a logs.log file.

    $ nextmv cloud run logs --app-id hare-app --run-id burrow-123 --tail --output logs.log

  • Get the logs of a run with ID burrow-123, belonging to an app with ID hare-app. Use the profile named hare.

    $ nextmv cloud run logs --app-id hare-app --run-id burrow-123 --profile hare

Usage:

$ cloud run logs [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -r, --run-id RUN_ID: The Nextmv run ID to use for this action. [env var: NEXTMV_RUN_ID; required]
  • -o, --output OUTPUT_PATH: Waits for the run to complete and saves the logs to this location.
  • -t, --tail: Tail the logs until the run completes. Logs are streamed to stderr. Specify log output location with --output.
  • --timeout TIMEOUT_SECONDS: The maximum time in seconds to wait for results when polling. Poll indefinitely if not set. [default: -1]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud run metadata

This command is deprecated, use nextmv cloud run information instead.

Get the metadata of a Nextmv Cloud application run.

By default, the metadata is fetched and printed to stdout. Use the --output flag to save the metadata to a file.

Examples

  • Get the metadata of a run with ID burrow-123, belonging to an app with ID hare-app. Metadata is printed to stdout.

    $ nextmv cloud run metadata --app-id hare-app --run-id burrow-123

  • Get the metadata of a run with ID burrow-123, belonging to an app with ID hare-app. Save the metadata to a metadata.json file.

    $ nextmv cloud run metadata --app-id hare-app --run-id burrow-123 --output metadata.json

  • Get the metadata of a run with ID burrow-123, belonging to an app with ID hare-app. Use the profile named hare.

    $ nextmv cloud run metadata --app-id hare-app --run-id burrow-123 --profile hare

Usage:

$ cloud run metadata [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -r, --run-id RUN_ID: The Nextmv run ID to use for this action. [env var: NEXTMV_RUN_ID; required]
  • -o, --output OUTPUT_PATH: Saves the metadata to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud run track

Track an external run as a Nextmv Cloud application run.

Please see the help of the --content-type option for details on valid content types.

If the content type is json, then input for the run can be given through stdin. The --input option allows you to specify a file or directory path for the input, instead of using stdin. In the case of multi-file content type, the input must be given through a directory specified via the --input option.

The --output option allows you to specify a file or directory path for the output of the run. The behavior depends on the content type. If the content type is json, then a file path must be provided. If the content type is multi-file, then a directory path must be provided.

Run logs, assets, and metrics can be provided via files using the --logs, --assets, and --metrics options, respectively. Assets and metrics must be provided as json files, while logs must be provided as a utf-8 encoded text file.

Examples

  • Track a successful json run via stdin input, for an app with ID hare-app. $ cat input.json | nextmv cloud run track --app-id hare-app --status succeeded

  • Track a successful json run with input from an input.json file and output from an output.json file, for an app with ID hare-app.

    $ nextmv cloud run track --app-id hare-app --status succeeded --input input.json \ --output output.json

  • Track a successful json run including logs from a logs.log file, for an app with ID hare-app.

    $ nextmv cloud run track --app-id hare-app --status succeeded --input input.json \ --output output.json --logs logs.log

  • Track a successful json run with assets and metrics from json files, for an app with ID hare-app.

    $ nextmv cloud run track --app-id hare-app --status succeeded --input input.json \ --output output.json --assets assets.json --metrics metrics.json

  • Track a failed run with an error message, for an app with ID hare-app.

    $ nextmv cloud run track --app-id hare-app --status failed --input input.json \ --error-msg "Solver timed out"

  • Track a successful multi-file run from an inputs directory with output to an outputs directory, for an app with ID hare-app, using the default instance.

    $ nextmv cloud run track --app-id hare-app --status succeeded --input inputs \ --output outputs --content-type multi-file --instance-id default

  • Track a successful run with a name, description, and duration, for an app with ID hare-app.

    $ nextmv cloud run track --app-id hare-app --status succeeded --input input.json \ --output output.json --name "Production run" --description "Weekly optimization" --duration 5000

  • Track a successful json run with all available options, for an app with ID hare-app.

    $ nextmv cloud run track --app-id hare-app --status succeeded --input input.json \ --output output.json --logs logs.log --assets assets.json --metrics metrics.json \ --name "Full run" --description "Complete example" --duration 10000 --instance-id burrow

Usage:

$ cloud run track [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -o, --output OUTPUT_PATH: The output of the run being tracked. A file or directory depending on content format. [required]
  • -s, --status STATUS: Status of the tracked run. Allowed values are: succeeded and failed. [required]
  • --assets ASSETS_PATH: The assets of the run being tracked. A json file to read the assets from.
  • -c, --content-format CONTENT_FORMAT: The content format of the run to track. Allowed values are: json and multi-file. [default: json]
  • --description DESCRIPTION: An optional description for the tracked run.
  • -d, --duration DURATION_MS: The duration of the run being tracked, in milliseconds. [default: 0]
  • -e, --error-msg ERROR_MESSAGE: An error message if the run being tracked failed.
  • -i, --input INPUT_PATH: The input of the run being tracked. File or directory depending on content format. Uses stdin if not defined.
  • -l, --logs LOGS_PATH: The logs of the run being tracked. A utf-8 encoded text file to read the logs from.
  • -n, --name NAME: An optional name for the tracked run.
  • --statistics STATISTICS_PATH: (deprecated) Use --metrics instead. The statistics of the run being tracked. A json file to read the statistics from.
  • --metrics METRICS_PATH: The metrics of the run being tracked. A json file to read the metrics from.
  • --instance-id INSTANCE_ID: The instance ID to use for the run. [default: latest]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud scenario

Create and manage Nextmv Cloud scenario tests.

Usage:

$ cloud scenario [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • create: Create a new Nextmv Cloud scenario test.
  • delete: Deletes a Nextmv Cloud scenario test.
  • get: Get a Nextmv Cloud scenario test,...
  • list: List all Nextmv Cloud scenario tests for...
  • metadata: Get metadata for a Nextmv Cloud scenario...
  • update: Update a Nextmv Cloud scenario test.

cloud scenario create

Create a new Nextmv Cloud scenario test.

A scenario test allows you to run multiple scenarios with different inputs, instances/versions, and configurations in a single test.

Use the --wait flag to wait for the scenario test to complete, polling for results. Using the --output flag will also activate waiting, and allows you to specify a destination file for the results.

Scenarios

Scenarios are provided as json objects using the --scenarios flag. Each scenario defines the configuration for a scenario test execution.

You can provide scenarios in three ways: - A single scenario as a json object. - Multiple scenarios by repeating the --scenarios flag. - Multiple scenarios as a json array in a single --scenarios flag.

Each scenario must have the following fields: - instance_id: ID of the instance to use for this scenario (required). - scenario_input: Object containing the scenario input (required), with: - scenario_input_type: Type of the scenario input (required). Allowed values: input_set, input, and new. - scenario_input_data: Data for the scenario input (required). - For input_set: a str (the input set ID). - For input: an array of str (list of input IDs). - For new: an array of objects (raw data). - scenario_id: ID of the scenario (optional). The default value will be set as scenario-<index> if not set. - configuration: An array of configuration objects (optional). Use this attribute to configure variation of options for the scenario. Each scenario configuration object requires: - name: Name of the configuration option. - values: List of values for the configuration option.

Object format: { "instance_id": "bunny-hopper-v2", "scenario_input": { "scenario_input_type": "input_set", "scenario_input_data": "spring-gardens" }, "configuration": [ { "name": "speed", "values": ["optimized", "balanced", "safe"] } ] }

Examples

  • Create a scenario test with a single scenario.

    $ SCENARIO='{ "instance_id": "warren-planner-v1", "scenario_input": { "scenario_input_type": "input_set", "scenario_input_data": "spring-gardens" } }' nextmv cloud scenario create --app-id hare-app --scenarios "$SCENARIO"

  • Create with multiple scenarios by repeating the flag.

    $ SCENARIO1='{ "instance_id": "hop-optimizer", "scenario_input": { "scenario_input_type": "input_set", "scenario_input_data": "veggie-gardens" } }' SCENARIO2='{ "instance_id": "hop-optimizer", "scenario_input": { "scenario_input_type": "input_set", "scenario_input_data": "lettuce-field-2" } }' nextmv cloud scenario create --app-id hare-app --scenarios "\(SCENARIO1" --scenarios "\)SCENARIO2"

  • Create with multiple scenarios in a single json array.

    $ SCENARIOS='[ { "instance_id": "burrow-builder", "scenario_input": { "scenario_input_type": "input_set", "scenario_input_data": "warren-zone-a" } }, { "instance_id": "tunnel-planner-v3", "scenario_input": { "scenario_input_type": "input_set", "scenario_input_data": "warren-zone-b" } } ]' nextmv cloud scenario create --app-id hare-app --scenarios "$SCENARIOS"

  • Create a scenario test and wait for it to complete.

    $ SCENARIO='{ "instance_id": "foraging-route", "scenario_input": { "scenario_input_type": "input_set", "scenario_input_data": "harvest-season" } }' nextmv cloud scenario create --app-id hare-app --scenarios "$SCENARIO" \ --wait

  • Create a scenario test and save the results to a file, waiting for completion.

    $ SCENARIO='{ "instance_id": "safe-hopper", "scenario_input": { "scenario_input_type": "input_set", "scenario_input_data": "danger-zones" } }' nextmv cloud scenario create --app-id hare-app --scenarios "$SCENARIO" \ --output bunny-safety-results.json

  • Create a scenario test with configuration options.

    $ SCENARIO='{ "instance_id": "hop-optimizer", "scenario_input": { "scenario_input_type": "input_set", "scenario_input_data": "garden-paths" }, "configuration": [ { "name": "speed", "values": ["fast", "careful"] } ] }' nextmv cloud scenario create --app-id hare-app --scenarios "$SCENARIO"

Usage:

$ cloud scenario create [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -s, --scenarios SCENARIOS: Scenarios to use for the test. Data should be valid json. Pass multiple scenarios by repeating the flag, or providing a list of objects. See command help for details on scenario formatting. [required]
  • -d, --description DESCRIPTION: Description of the scenario test.
  • -n, --name NAME: Optional name of the scenario test. If not provided, the ID will be used as the name.
  • -r, --repetitions REPETITIONS: Number of times the scenario test is repeated. 0 repetitions = 1 execution, 1 repetition = 2 executions, etc. [default: 0]
  • -i, --scenario-test-id SCENARIO_TEST_ID: ID for the scenario test. Will be generated if not provided. [env var: NEXTMV_SCENARIO_TEST_ID]
  • -o, --output OUTPUT_PATH: Waits for the test to complete and saves the results to this location.
  • --timeout TIMEOUT_SECONDS: The maximum time in seconds to wait for results when polling. Poll indefinitely if not set. [default: -1]
  • -w, --wait: Wait for the scenario test to complete. Results are printed to stdout. Specify output location with --output.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud scenario delete

Deletes a Nextmv Cloud scenario test.

This action is permanent and cannot be undone. The scenario test and all associated data will be deleted. Use the --yes flag to skip the confirmation prompt.

Examples

  • Delete the scenario test with the ID hop-analysis from application hare-app.

    $ nextmv cloud scenario delete --app-id hare-app --scenario-test-id hop-analysis

  • Delete the scenario test without confirmation prompt.

    $ nextmv cloud scenario delete --app-id hare-app --scenario-test-id carrot-routes --yes

Usage:

$ cloud scenario delete [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -i, --scenario-test-id SCENARIO_TEST_ID: The Nextmv Cloud scenario test ID to use for this action. [env var: NEXTMV_SCENARIO_TEST_ID; required]
  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud scenario get

Get a Nextmv Cloud scenario test, including its runs.

Use the --wait flag to wait for the scenario test to complete, polling for results. Using the --output flag will also activate waiting, and allows you to specify a destination file for the results.

Examples

  • Get the scenario test with ID carrot-optimization from application hare-app.

    $ nextmv cloud scenario get --app-id hare-app --scenario-test-id carrot-optimization

  • Get the scenario test and wait for it to complete if necessary.

    $ nextmv cloud scenario get --app-id hare-app --scenario-test-id bunny-hop-test --wait

  • Get the scenario test and save the results to a file.

    $ nextmv cloud scenario get --app-id hare-app --scenario-test-id warren-planning \ --output results.json

  • Get the scenario test using a specific profile.

    $ nextmv cloud scenario get --app-id hare-app --scenario-test-id lettuce-routes --profile prod

Usage:

$ cloud scenario get [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -i, --scenario-test-id SCENARIO_TEST_ID: The Nextmv Cloud scenario test ID to use for this action. [env var: NEXTMV_SCENARIO_TEST_ID; required]
  • -o, --output OUTPUT_PATH: Waits for the scenario test to complete and saves the results to this location.
  • --timeout TIMEOUT_SECONDS: The maximum time in seconds to wait for results when polling. Poll indefinitely if not set. [default: -1]
  • -w, --wait: Wait for the scenario test to complete. Results are printed to stdout. Specify output location with --output.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud scenario list

List all Nextmv Cloud scenario tests for an application.

This command retrieves all scenario tests associated with the specified application. By default this command paginates the list of tests, which means multiple API calls may be made to retrieve all tests. You may use the --no-pagination option to disable pagination.

Examples

  • List all scenario tests for application hare-app.

    $ nextmv cloud scenario list --app-id hare-app

  • List all scenario tests and save to a file.

    $ nextmv cloud scenario list --app-id hare-app --output scenario_tests.json

  • List all scenario tests using a specific profile.

    $ nextmv cloud scenario list --app-id hare-app --profile prod

  • List all scenario tests without pagination.

    $ nextmv cloud scenario list --app-id hare-app --no-pagination

Usage:

$ cloud scenario list [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • --no-pagination: Whether to disable pagination when listing this type of entity.
  • -o, --output OUTPUT_PATH: Saves the list of scenario tests to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud scenario metadata

Get metadata for a Nextmv Cloud scenario test.

This command retrieves metadata for a specific scenario test, including status, creation date, and other high-level information without the full run details.

Examples

  • Get metadata for scenario test bunny-warren-optimization from application hare-app.

    $ nextmv cloud scenario metadata --app-id hare-app --scenario-test-id bunny-warren-optimization

  • Get metadata and save to a file.

    $ nextmv cloud scenario metadata --app-id hare-app --scenario-test-id lettuce-delivery \ --output metadata.json

  • Get metadata using a specific profile.

    $ nextmv cloud scenario metadata --app-id hare-app --scenario-test-id hop-schedule --profile prod

Usage:

$ cloud scenario metadata [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -i, --scenario-test-id SCENARIO_TEST_ID: The Nextmv Cloud scenario test ID to use for this action. [env var: NEXTMV_SCENARIO_TEST_ID; required]
  • -o, --output OUTPUT_PATH: Saves the scenario test metadata to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud scenario update

Update a Nextmv Cloud scenario test.

Update the name and/or description of a scenario test. Any fields not specified will remain unchanged.

Examples

  • Update the name of a scenario test.

    $ nextmv cloud scenario update --app-id hare-app --scenario-test-id carrot-feast \ --name "Spring Carrot Harvest"

  • Update the description of a scenario test.

    $ nextmv cloud scenario update --app-id hare-app --scenario-test-id bunny-hop-routes \ --description "Optimizing hop paths through the meadow"

  • Update both name and description and save the result.

    $ nextmv cloud scenario update --app-id hare-app --scenario-test-id lettuce-delivery \ --name "Warren Lettuce Express" --description "Fast lettuce delivery to all burrows" \ --output updated-scenario.json

Usage:

$ cloud scenario update [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -i, --scenario-test-id SCENARIO_TEST_ID: The Nextmv Cloud scenario test ID to use for this action. [env var: NEXTMV_SCENARIO_TEST_ID; required]
  • -d, --description DESCRIPTION: Updated description of the scenario test.
  • -n, --name NAME: Updated name of the scenario test.
  • -o, --output OUTPUT_PATH: Saves the updated scenario test information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud secrets

Create and manage Nextmv Cloud secrets collections.

A secret collection defines one or more secrets used by your optimization model during execution. You can reference a secret collection either in an application instance configuration, or directly when starting a run. The platform then injects the secrets into the container during the optimization run as environment variables and files.

Usage:

$ cloud secrets [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • create: Create a new Nextmv Cloud secrets collection.
  • delete: Deletes a Nextmv Cloud secrets collection.
  • get: Get a Nextmv Cloud secrets collection.
  • list: List all secrets collections of a Nextmv...
  • update: Update a Nextmv Cloud secrets collection.

cloud secrets create

Create a new Nextmv Cloud secrets collection.

A secrets collection is a group of key-value pairs that can be used by your application instances during execution. Each collection can contain up to 20 secrets. Secrets are provided as JSON objects using the --secrets flag.

Each secret must include three fields: - type: Either env or file, which determines how the secret is injected into the runtime. - location: Where to place the secret. - env: the environment variable name. E.g.: BURROW_ENTRANCE. - file: the relative path from the execution directory. E.g.: licenses/burrow.entr. - value: The secret value as text (limited to 1 KB).

You can provide secrets in three ways: - A single secret as a json object. - Multiple secrets by repeating the --secrets flag. - Multiple secrets as a json array in a single --secrets flag.

The --secrets-collection-id and --name are optional. If not provided, they will be automatically generated.

Examples

  • Create a secrets collection with a single environment variable secret.

    $ nextmv cloud secrets create --app-id hare-app \ --secrets '{"type": "env", "location": "API_KEY", "value": "secret-value"}'

  • Create a secrets collection with multiple secrets by repeating the flag.

    $ nextmv cloud secrets create --app-id hare-app \ --secrets '{"type": "env", "location": "API_KEY", "value": "secret-value"}' \ --secrets '{"type": "env", "location": "DATABASE_URL", "value": "postgres://localhost"}'

  • Create a secrets collection with multiple secrets in a single JSON array.

    $ nextmv cloud secrets create --app-id hare-app \ --secrets '[{"type": "env", "location": "DB_USER", "value": "admin"}, {...}]'

  • Create a secrets collection with custom ID, name, and description.

    $ nextmv cloud secrets create --app-id hare-app \ --secrets-collection-id db-creds --name "Database Credentials" \ --description "Production database credentials" \ --secrets '{"type": "env", "location": "DB_USER", "value": "admin"}' \ --secrets '{"type": "env", "location": "DB_PASS", "value": "secure123"}'

  • Create a secrets collection with file-based secrets.

    $ nextmv cloud secrets create --app-id hare-app \ --secrets-collection-id certs --name "Certificates" \ --secrets '{"type": "file", "location": "licenses/acme.lic", "value": "LICENSE_CONTENT_HERE"}'

  • Mix environment and file-based secrets.

    $ nextmv cloud secrets create --app-id hare-app \ --secrets '{"type": "env", "location": "ACME_LICENSE_KEY", "value": "abc123"}' \ --secrets '{"type": "file", "location": "config/app.conf", "value": "server=prod\nport=8080"}'

Usage:

$ cloud secrets create [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -e, --secrets SECRETS: Secrets to configure in the app. Data should be valid json. Pass multiple secrets by repeating the flag, or providing a list of objects. Allowed values for type are: env and file. Object format: {'type': type, 'location': location, 'value': value}. [required]
  • -d, --description DESCRIPTION: An optional description for the secrets collection.
  • -n, --name NAME: An optional name for the secrets collection. If not provided, the ID will be used as the name.
  • -s, --secrets-collection-id SECRETS_COLLECTION_ID: The ID to assign to the new secrets collection. If not provided, a random ID will be generated. [env var: NEXTMV_SECRETS_COLLECTION_ID]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud secrets delete

Deletes a Nextmv Cloud secrets collection.

This action is permanent and cannot be undone. Use the --yes flag to skip the confirmation prompt.

Examples

  • Delete the secrets collection with the ID api-keys from application hare-app.

    $ nextmv cloud secrets delete --app-id hare-app --secrets-collection-id api-keys

  • Delete the secrets collection without confirmation prompt.

    $ nextmv cloud secrets delete --app-id hare-app --secrets-collection-id api-keys --yes

Usage:

$ cloud secrets delete [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -s, --secrets-collection-id SECRETS_COLLECTION_ID: The Nextmv Cloud secrets collection ID to use for this action. [env var: NEXTMV_SECRETS_COLLECTION_ID; required]
  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud secrets get

Get a Nextmv Cloud secrets collection.

This command is useful to get the attributes of an existing Nextmv Cloud secrets collection by its ID. 🚧 Warning: secret values will be included in the output.

Examples

  • Get the secrets collection with the ID api-keys from application hare-app.

    $ nextmv cloud secrets get --app-id hare-app \ --secrets-collection-id api-keys

  • Get the secrets collection with the ID api-keys and save the information to a secrets.json file.

    $ nextmv cloud secrets get --app-id hare-app \ --secrets-collection-id api-keys --output secrets.json

Usage:

$ cloud secrets get [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -s, --secrets-collection-id SECRETS_COLLECTION_ID: The Nextmv Cloud secrets collection ID to use for this action. [env var: NEXTMV_SECRETS_COLLECTION_ID; required]
  • -o, --output OUTPUT_PATH: Saves the secrets collection information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud secrets list

List all secrets collections of a Nextmv Cloud application.

By default this command paginates the list of secrets, which means multiple API calls may be made to retrieve all secrets. You may use the --no-pagination option to disable pagination.

Examples

  • List all secrets collections of application hare-app.

    $ nextmv cloud secrets list --app-id hare-app

  • List all secrets collections using the profile named hare.

    $ nextmv cloud secrets list --app-id hare-app --profile hare

  • List all secrets collections and save the information to a secrets.json file.

    $ nextmv cloud secrets list --app-id hare-app --output secrets.json

  • List all secrets collections without pagination.

    $ nextmv cloud secrets list --app-id hare-app --no-pagination

Usage:

$ cloud secrets list [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • --no-pagination: Whether to disable pagination when listing this type of entity.
  • -o, --output OUTPUT_PATH: Saves the secrets collections list information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud secrets update

Update a Nextmv Cloud secrets collection.

You can update the name, description, and/or secrets of an existing secrets collection. When updating secrets, all existing secrets will be replaced with the new ones provided.

Secrets are provided as JSON objects using the --secrets flag, following the same format as the create command. You can provide secrets as: - A single secret as a JSON object - Multiple secrets by repeating the --secrets flag - Multiple secrets as a JSON array in a single --secrets flag

Examples

  • Update the name of a secrets collection.

    $ nextmv cloud secrets update --app-id hare-app \ --secrets-collection-id api-keys --name "Updated API Keys"

  • Update the description of a secrets collection.

    $ nextmv cloud secrets update --app-id hare-app \ --secrets-collection-id api-keys \ --description "Updated collection of API keys"

  • Update both name and description.

    $ nextmv cloud secrets update --app-id hare-app \ --secrets-collection-id api-keys --name "Production API Keys" \ --description "API keys for production environment"

  • Replace all secrets in a collection with new secrets.

    $ nextmv cloud secrets update --app-id hare-app \ --secrets-collection-id api-keys \ --secrets '{"type": "env", "location": "API_KEY", "value": "new-value"}' \ --secrets '{"type": "env", "location": "DATABASE_URL", "value": "postgres://newhost"}'

  • Replace all secrets with a JSON array.

    $ nextmv cloud secrets update --app-id hare-app \ --secrets-collection-id api-keys \ --secrets '[{"type": "env", "location": "API_KEY", "value": "new-value"}, {...}]'

  • Update multiple attributes at once and save the result.

    $ nextmv cloud secrets update --app-id hare-app \ --secrets-collection-id api-keys --name "New Name" \ --description "New Description" \ --secrets '{"type": "env", "location": "NEW_KEY", "value": "new-value"}' \ --output updated.json

Usage:

$ cloud secrets update [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -s, --secrets-collection-id SECRETS_COLLECTION_ID: The Nextmv Cloud secrets collection ID to use for this action. [env var: NEXTMV_SECRETS_COLLECTION_ID; required]
  • -d, --description DESCRIPTION: A new description for the secrets collection.
  • -n, --name NAME: A new name for the secrets collection.
  • -u, --output OUTPUT_PATH: Saves the updated secrets collection information to this location.
  • -e, --secrets SECRETS: Secrets to configure in the app. Data should be valid json. Pass multiple secrets by repeating the flag, or providing a list of objects. Allowed values for type are: env and file. Object format: {'type': type, 'location': location, 'value': value}. This will replace all existing secrets in the collection.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud shadow

Create and manage Nextmv Cloud shadow tests.

Usage:

$ cloud shadow [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • create: Create a new Nextmv Cloud shadow test in...
  • delete: Deletes a Nextmv Cloud shadow test.
  • get: Get a Nextmv Cloud shadow test, including...
  • list: List all Nextmv Cloud shadow tests for an...
  • metadata: Get metadata for a Nextmv Cloud shadow test.
  • start: Starts a Nextmv Cloud shadow test.
  • stop: Stops a Nextmv Cloud shadow test.
  • update: Update a Nextmv Cloud shadow test.

cloud shadow create

Create a new Nextmv Cloud shadow test in draft mode.

Use the --comparisons option to define how to set up instance comparisons. The value should be valid json. The keys of the comparisons object are the baseline instance IDs, and the values are the candidate lists of instance IDs to compare against the respective baseline.

Here is an example comparisons object: { "baseline-instance-1": ["candidate-instance-1", "candidate-instance-2"], "baseline-instance-2": ["candidate-instance-3"] }

You may specify the --start-time option to make the shadow test start at a specific time. Alternatively, you may use the nextmv cloud shadow start command to start the test.

The --termination-maximum-runs option is required and provides control over when the shadow test should terminate, after said number of runs. Alternatively, you may specify the --termination-time option or use the nextmv cloud shadow stop command to stop the test.

Examples

  • Create a shadow test with a baseline and two candidate instances.

    $ COMPARISONS='{ "fluffy-bunny-baseline": [ "hopping-candidate-ears", "speedy-cottontail" ] }' nextmv cloud shadow create --app-id hare-app --shadow-test-id bunny-hop-shadow --name "Bunny Hop Showdown" \ --comparisons "$COMPARISONS" --termination-maximum-runs 100

  • Create a shadow test with multiple baselines and candidates.

    $ COMPARISONS='{ "fluffy-bunny-baseline": [ "hopping-candidate-ears" ], "wise-old-rabbit": [ "burrow-master" ] }' nextmv cloud shadow create --app-id hare-app --shadow-test-id warren-race --name "Warren Race Test" \ --comparisons "$COMPARISONS" --termination-maximum-runs 50

  • Create a shadow test with a scheduled start and termination time.

    $ COMPARISONS='{ "fluffy-bunny-baseline": [ "hopping-candidate-ears" ] }' nextmv cloud shadow create --app-id hare-app --shadow-test-id sunrise-hop --name "Sunrise Hop Test" \ --comparisons "$COMPARISONS" --start-time '2026-01-23T10:00:00Z' \ --termination-time '2026-01-23T18:00:00Z' --termination-maximum-runs 20

  • Create a shadow test with a description.

    $ COMPARISONS='{ "fluffy-bunny-baseline": [ "hopping-candidate-ears" ] }' nextmv cloud shadow create --app-id hare-app --shadow-test-id carrot-compare --name "Carrot Comparison" \ --description "Testing cool bunnies" --comparisons "$COMPARISONS" --termination-maximum-runs 10

Usage:

$ cloud shadow create [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -c, --comparisons COMPARISONS: Object mapping baseline instance IDs to a list of comparison instance IDs. Data should be valid json. Object format: {'baseline_id1': ['comparison_id1', 'comparison_id2'], 'baseline_id2': ...} [required]
  • -m, --termination-maximum-runs TERMINATION_MAXIMUM_RUNS: Maximum number of runs for the shadow test termination condition. [1<=x<=300; required]
  • -d, --description DESCRIPTION: Description of the shadow test.
  • -n, --name NAME: Optional name of the shadow test. If not provided, the ID will be used as the name.
  • -s, --shadow-test-id SHADOW_TEST_ID: Optional ID for the shadow test. Will be generated if not provided. [env var: NEXTMV_SHADOW_TEST_ID]
  • -r, --start-time START_TIME: Scheduled time for shadow test start in RFC 3339 format. Object format: '2024-01-01T00:00:00Z'
  • -t, --termination-time TERMINATION_TIME: Scheduled time for shadow test end in RFC 3339 format. Object format: '2024-01-01T00:00:00Z'
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud shadow delete

Deletes a Nextmv Cloud shadow test.

This action is permanent and cannot be undone. The shadow test and all associated data, including runs, will be deleted. Use the --yes flag to skip the confirmation prompt.

Examples

  • Delete the shadow test with the ID hop-analysis from application hare-app.

    $ nextmv cloud shadow delete --app-id hare-app --shadow-test-id hop-analysis

  • Delete the shadow test without confirmation prompt.

    $ nextmv cloud shadow delete --app-id hare-app --shadow-test-id carrot-routes --yes

Usage:

$ cloud shadow delete [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -s, --shadow-test-id SHADOW_TEST_ID: The Nextmv Cloud shadow test ID to use for this action. [env var: NEXTMV_SHADOW_TEST_ID; required]
  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud shadow get

Get a Nextmv Cloud shadow test, including its runs.

Examples

  • Get the shadow test with ID carrot-optimization from application hare-app.

    $ nextmv cloud shadow get --app-id hare-app --shadow-test-id carrot-optimization

  • Get the shadow test using a specific profile.

    $ nextmv cloud shadow get --app-id hare-app --shadow-test-id lettuce-routes --profile prod

Usage:

$ cloud shadow get [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -s, --shadow-test-id SHADOW_TEST_ID: The Nextmv Cloud shadow test ID to use for this action. [env var: NEXTMV_SHADOW_TEST_ID; required]
  • -o, --output OUTPUT_PATH: Saves the results to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud shadow list

List all Nextmv Cloud shadow tests for an application.

This command retrieves all shadow tests associated with the specified application. By default this command paginates the list of tests, which means multiple API calls may be made to retrieve all tests. You may use the --no-pagination option to disable pagination.

Examples

  • List all shadow tests for application hare-app.

    $ nextmv cloud shadow list --app-id hare-app

  • List all shadow tests and save to a file.

    $ nextmv cloud shadow list --app-id hare-app --output tests.json

  • List all shadow tests using a specific profile.

    $ nextmv cloud shadow list --app-id hare-app --profile prod

  • List all shadow tests without pagination.

    $ nextmv cloud shadow list --app-id hare-app --no-pagination

Usage:

$ cloud shadow list [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • --no-pagination: Whether to disable pagination when listing this type of entity.
  • -o, --output OUTPUT_PATH: Saves the list of shadow tests to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud shadow metadata

Get metadata for a Nextmv Cloud shadow test.

This command retrieves metadata for a specific shadow test, including status, creation date, and other high-level information without the full run details.

Examples

  • Get metadata for shadow test bunny-warren-optimization from application hare-app.

    $ nextmv cloud shadow metadata --app-id hare-app --shadow-test-id bunny-warren-optimization

  • Get metadata and save to a file.

    $ nextmv cloud shadow metadata --app-id hare-app --shadow-test-id lettuce-delivery \ --output metadata.json

  • Get metadata using a specific profile.

    $ nextmv cloud shadow metadata --app-id hare-app --shadow-test-id hop-schedule --profile prod

Usage:

$ cloud shadow metadata [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -s, --shadow-test-id SHADOW_TEST_ID: The Nextmv Cloud shadow test ID to use for this action. [env var: NEXTMV_SHADOW_TEST_ID; required]
  • -o, --output OUTPUT_PATH: Saves the shadow test metadata to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud shadow start

Starts a Nextmv Cloud shadow test.

Before starting a shadow test, it must be created in draft state. You may use the nextmv cloud shadow create command to create a new shadow test. Alternatively, define a --start-time when using the nextmv cloud shadow create command to have the shadow test start automatically at a specific time.

Examples

  • Start the shadow test with the ID hop-analysis from application hare-app.

    $ nextmv cloud shadow start --app-id hare-app --shadow-test-id hop-analysis

Usage:

$ cloud shadow start [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -s, --shadow-test-id SHADOW_TEST_ID: The Nextmv Cloud shadow test ID to use for this action. [env var: NEXTMV_SHADOW_TEST_ID; required]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud shadow stop

Stops a Nextmv Cloud shadow test.

Before stopping a shadow test, it must be in a started state. Experiments in a draft state, that haven't started, can be deleted with the nextmv cloud shadow delete command.

Examples

  • Stop the shadow test with the ID hop-analysis from application hare-app.

    $ nextmv cloud shadow stop --app-id hare-app --shadow-test-id hop-analysis

Usage:

$ cloud shadow stop [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -i, --intent INTENT: Intent for stopping the shadow test. Allowed values are: complete and cancel. [required]
  • -s, --shadow-test-id SHADOW_TEST_ID: The Nextmv Cloud shadow test ID to use for this action. [env var: NEXTMV_SHADOW_TEST_ID; required]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud shadow update

Update a Nextmv Cloud shadow test.

Update the name and/or description of a shadow test. Any fields not specified will remain unchanged.

Examples

  • Update the name of a shadow test.

    $ nextmv cloud shadow update --app-id hare-app --shadow-test-id carrot-feast \ --name "Spring Carrot Harvest"

  • Update the description of a shadow test.

    $ nextmv cloud shadow update --app-id hare-app --shadow-test-id bunny-hop-routes \ --description "Optimizing hop paths through the meadow"

  • Update both name and description and save the result.

    $ nextmv cloud shadow update --app-id hare-app --shadow-test-id lettuce-delivery \ --name "Warren Lettuce Express" --description "Fast lettuce delivery to all burrows" \ --output updated-shadow-test.json

Usage:

$ cloud shadow update [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -s, --shadow-test-id SHADOW_TEST_ID: The Nextmv Cloud shadow test ID to use for this action. [env var: NEXTMV_SHADOW_TEST_ID; required]
  • -d, --description DESCRIPTION: Updated description of the shadow test.
  • -n, --name NAME: Updated name of the shadow test.
  • -o, --output OUTPUT_PATH: Saves the updated shadow test information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud sso

Manage SSO for your Nextmv Cloud organization (account).

Please contact Nextmv support for assistance configuring SSO for your organization.

Usage:

$ cloud sso [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • create: Create a new SSO configuration for your...
  • delete: Deletes the SSO configuration.
  • disable: Disables the SSO configuration.
  • enable: Enables the SSO configuration.
  • get: Get the information of a Nextmv Cloud SSO...
  • update: Updates information of a Nextmv Cloud SSO...
  • domain: Manage SSO mapped domains for your Nextmv...

cloud sso create

Create a new SSO configuration for your Nextmv Cloud organization.

SSO must be configured to enable managed accounts in your organization. Please contact Nextmv support for assistance.

You must use either the --metadata-url or --metadata-document option. When working with the metadata document, you have three options:

  • Pipe the document into the command via stdin.
  • Provide the document as a string with --metadata-document.
  • Provide a path to a file containing the document with --metadata-document.

You can use the nextmv cloud sso get to get the newly-created configuration after running this command.

Examples

Usage:

$ cloud sso create [OPTIONS]

Options:

  • -a, --allow-non-domain-users: Allow users who are not part of the SSO domain to access the Nextmv Cloud organization (account).
  • -e, --enabled: Enable SSO for the Nextmv Cloud organization (account) at the time of creation. Run nextmv cloud sso enable to enable SSO after creation.
  • -u, --metadata-url METADATA_URL: The URL to the SSO metadata document.
  • -d, --metadata-document METADATA_DOCUMENT: The SSO metadata document as a string or a path to a file containing the document.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud sso delete

Deletes the SSO configuration.

You must have the administrator role on the organization in order to delete it. Use the --yes flag to skip the confirmation prompt. You can create a new SSO configuration again with nextmv cloud sso create.

Examples

  • Delete the SSO configuration.

    $ nextmv cloud sso delete

  • Delete the SSO configuration without confirmation prompt.

    $ nextmv cloud sso delete --yes

Usage:

$ cloud sso delete [OPTIONS]

Options:

  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud sso disable

Disables the SSO configuration.

Use the --yes flag to skip the confirmation prompt. Use the nextmv cloud sso enable command to re-enable SSO.

Examples

  • Disable the SSO configuration.

    $ nextmv cloud sso disable

  • Disable the SSO configuration without confirmation prompt.

    $ nextmv cloud sso disable --yes

Usage:

$ cloud sso disable [OPTIONS]

Options:

  • -y, --yes: Agree to disable confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud sso enable

Enables the SSO configuration.

Use the --yes flag to skip the confirmation prompt. Use the nextmv cloud sso disable command to disable SSO.

Examples

  • Enable the SSO configuration.

    $ nextmv cloud sso enable

  • Enable the SSO configuration without confirmation prompt.

    $ nextmv cloud sso enable --yes

Usage:

$ cloud sso enable [OPTIONS]

Options:

  • -y, --yes: Agree to enable confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud sso get

Get the information of a Nextmv Cloud SSO configuration.

This command is useful to get the attributes of an existing Nextmv Cloud SSO configuration.

Examples

  • Get the SSO configuration.

    $ nextmv cloud sso get

  • Get the SSO configuration and save the information to an sso_config.json file.

    $ nextmv cloud sso get --output sso_config.json

Usage:

$ cloud sso get [OPTIONS]

Options:

  • -o, --output OUTPUT_PATH: Saves the SSO configuration information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud sso update

Updates information of a Nextmv Cloud SSO configuration.

This command allows you to update the metadata URL or metadata document of an existing SSO configuration. You can use the nextmv cloud sso get to get the updated configuration after running this command.

Examples

  • Update the SSO configuration with a new metadata URL.

    $ nextmv cloud sso update --metadata-url "https://example.com/metadata.xml&quot;

  • Update the SSO configuration with a new metadata document.

    $ nextmv cloud sso update --metadata-document "<xml>...</xml>"

Usage:

$ cloud sso update [OPTIONS]

Options:

  • -u, --metadata-url METADATA_URL: The URL to the SSO metadata document to update.
  • -d, --metadata-document METADATA_DOCUMENT: The SSO metadata document as a string to update.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud sso domain

Manage SSO mapped domains for your Nextmv Cloud organization (account).

Mapped domains redirect additional domains to your IDP for federated authentication.

Please contact Nextmv support for assistance configuring SSO for your organization.

Usage:

$ cloud sso domain [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • delete: Delete a mapped domain from a Nextmv Cloud...
cloud sso domain delete

Delete a mapped domain from a Nextmv Cloud SSO configuration.

This action will prevent users from the deleted domain from accessing your account using SSO. Use the --yes flag to skip the confirmation prompt.

You can use the nextmv cloud sso get command to view all mapped domains in your SSO configuration.

Examples

  • Delete a mapped domain from the SSO configuration.

    $ nextmv cloud sso domain delete --domain "example.com"

Usage:

$ cloud sso domain delete [OPTIONS]

Options:

  • -d, --domain DOMAIN: The domain to delete from the SSO configuration. [required]
  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud switchback

Create and manage Nextmv Cloud switchback tests.

Usage:

$ cloud switchback [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • create: Create a new Nextmv Cloud switchback test...
  • delete: Deletes a Nextmv Cloud switchback test.
  • get: Get a Nextmv Cloud switchback test,...
  • list: List all Nextmv Cloud switchback tests for...
  • metadata: Get metadata for a Nextmv Cloud switchback...
  • start: Starts a Nextmv Cloud switchback test.
  • stop: Stops a Nextmv Cloud switchback test.
  • update: Update a Nextmv Cloud switchback test.

cloud switchback create

Create a new Nextmv Cloud switchback test in draft mode.

The test will alternate between the --baseline-instance-id and --candidate-instance-id over specified time intervals.

You may specify the --start option to make the switchback test start at a specific time. Alternatively, you may use the nextmv cloud switchback start command to start the test.

Use the nextmv cloud switchback stop command to stop the test.

Examples

  • Create a switchback test alternating between two bunny instances.

    $ nextmv cloud switchback create --app-id hare-app --baseline-instance-id fluffy-bunny-baseline \ --candidate-instance-id speedy-cottontail --unit-duration-minutes 15 --units 10

  • Create a switchback test with a scheduled start time.

    $ nextmv cloud switchback create --app-id hare-app --baseline-instance-id wise-old-rabbit \ --candidate-instance-id burrow-master --unit-duration-minutes 30 --units 8 \ --start '2026-01-23T10:00:00Z'

  • Create a switchback test with a description.

    $ nextmv cloud switchback create --app-id hare-app --baseline-instance-id fluffy-bunny-baseline \ --candidate-instance-id hopping-candidate-ears --unit-duration-minutes 20 --units 12 \ --description "Which bunny hops best for carrots?"

Usage:

$ cloud switchback create [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -b, --baseline-instance-id BASELINE_INSTANCE_ID: ID of the baseline instance for the switchback test. [required]
  • -c, --candidate-instance-id CANDIDATE_INSTANCE_ID: ID of the candidate instance for the switchback test. [required]
  • -u, --unit-duration-minutes UNIT_DURATION_MINUTES: Duration of each interval in minutes. [1<=x<=10080; required]
  • -t, --units UNITS: Total number of intervals in the switchback test. [1<=x<=1000; required]
  • -d, --description DESCRIPTION: Description of the switchback test.
  • -n, --name NAME: Optional name of the switchback test. If not provided, the ID will be used as the name.
  • -s, --switchback-test-id SWITCHBACK_TEST_ID: ID for the switchback test. Will be generated if not provided. [env var: NEXTMV_SWITCHBACK_TEST_ID]
  • -r, --start START: Scheduled time for switchback test start in RFC 3339 format. Object format: '2024-01-01T00:00:00Z'
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud switchback delete

Deletes a Nextmv Cloud switchback test.

This action is permanent and cannot be undone. The switchback test and all associated data, including runs, will be deleted. Use the --yes flag to skip the confirmation prompt.

Examples

  • Delete the switchback test with the ID hop-analysis from application hare-app.

    $ nextmv cloud switchback delete --app-id hare-app --switchback-test-id hop-analysis

  • Delete the switchback test without confirmation prompt.

    $ nextmv cloud switchback delete --app-id hare-app --switchback-test-id carrot-routes --yes

Usage:

$ cloud switchback delete [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -s, --switchback-test-id SWITCHBACK_TEST_ID: The Nextmv Cloud switchback test ID to use for this action. [env var: NEXTMV_SWITCHBACK_TEST_ID; required]
  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud switchback get

Get a Nextmv Cloud switchback test, including its runs.

Examples

  • Get the switchback test with ID carrot-optimization from application hare-app.

    $ nextmv cloud switchback get --app-id hare-app --switchback-test-id carrot-optimization

  • Get the switchback test using a specific profile.

    $ nextmv cloud switchback get --app-id hare-app --switchback-test-id lettuce-routes \ --profile prod

Usage:

$ cloud switchback get [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -s, --switchback-test-id SWITCHBACK_TEST_ID: The Nextmv Cloud switchback test ID to use for this action. [env var: NEXTMV_SWITCHBACK_TEST_ID; required]
  • -o, --output OUTPUT_PATH: Saves the results to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud switchback list

List all Nextmv Cloud switchback tests for an application.

This command retrieves all switchback tests associated with the specified application. By default this command paginates the list of tests, which means multiple API calls may be made to retrieve all tests. You may use the --no-pagination option to disable pagination.

Examples

  • List all switchback tests for application hare-app.

    $ nextmv cloud switchback list --app-id hare-app

  • List all switchback tests and save to a file.

    $ nextmv cloud switchback list --app-id hare-app --output tests.json

  • List all switchback tests using a specific profile.

    $ nextmv cloud switchback list --app-id hare-app --profile prod

  • List all switchback tests without pagination.

    $ nextmv cloud switchback list --app-id hare-app --no-pagination

Usage:

$ cloud switchback list [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • --no-pagination: Whether to disable pagination when listing this type of entity.
  • -o, --output OUTPUT_PATH: Saves the list of switchback tests to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud switchback metadata

Get metadata for a Nextmv Cloud switchback test.

This command retrieves metadata for a specific switchback test, including status, creation date, and other high-level information without the full run details.

Examples

  • Get metadata for switchback test bunny-warren-optimization from application hare-app.

    $ nextmv cloud switchback metadata --app-id hare-app \ --switchback-test-id bunny-warren-optimization

  • Get metadata and save to a file.

    $ nextmv cloud switchback metadata --app-id hare-app --switchback-test-id lettuce-delivery \ --output metadata.json

  • Get metadata using a specific profile.

    $ nextmv cloud switchback metadata --app-id hare-app --switchback-test-id hop-schedule \ --profile prod

Usage:

$ cloud switchback metadata [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -s, --switchback-test-id SWITCHBACK_TEST_ID: The Nextmv Cloud switchback test ID to use for this action. [env var: NEXTMV_SWITCHBACK_TEST_ID; required]
  • -o, --output OUTPUT_PATH: Saves the switchback test metadata to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud switchback start

Starts a Nextmv Cloud switchback test.

Before starting a switchback test, it must be created in draft state. You may use the nextmv cloud switchback create command to create a new switchback test. Alternatively, define a --start when using the nextmv cloud switchback create command to have the switchback test start automatically at a specific time.

Examples

  • Start the switchback test with the ID hop-analysis from application hare-app.

    $ nextmv cloud switchback start --app-id hare-app --switchback-test-id hop-analysis

Usage:

$ cloud switchback start [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -s, --switchback-test-id SWITCHBACK_TEST_ID: The Nextmv Cloud switchback test ID to use for this action. [env var: NEXTMV_SWITCHBACK_TEST_ID; required]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud switchback stop

Stops a Nextmv Cloud switchback test.

Before stopping a switchback test, it must be in a started state. Experiments in a draft state, that haven't started, can be deleted with the nextmv cloud switchback delete command.

Examples

  • Stop the switchback test with the ID hop-analysis from application hare-app.

    $ nextmv cloud switchback stop --app-id hare-app --switchback-test-id hop-analysis

Usage:

$ cloud switchback stop [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -i, --intent INTENT: Intent for stopping the switchback test. Allowed values are: complete and cancel. [required]
  • -s, --switchback-test-id SWITCHBACK_TEST_ID: The Nextmv Cloud switchback test ID to use for this action. [env var: NEXTMV_SWITCHBACK_TEST_ID; required]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud switchback update

Update a Nextmv Cloud switchback test.

Update the name and/or description of a switchback test. Any fields not specified will remain unchanged.

Examples

  • Update the name of a switchback test.

    $ nextmv cloud switchback update --app-id hare-app --switchback-test-id carrot-feast \ --name "Spring Carrot Harvest"

  • Update the description of a switchback test.

    $ nextmv cloud switchback update --app-id hare-app --switchback-test-id bunny-hop-routes \ --description "Optimizing hop paths through the meadow"

  • Update both name and description and save the result.

    $ nextmv cloud switchback update --app-id hare-app --switchback-test-id lettuce-delivery \ --name "Warren Lettuce Express" --description "Fast lettuce delivery to all burrows" \ --output updated-switchback-test.json

Usage:

$ cloud switchback update [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -s, --switchback-test-id SWITCHBACK_TEST_ID: The Nextmv Cloud switchback test ID to use for this action. [env var: NEXTMV_SWITCHBACK_TEST_ID; required]
  • -d, --description DESCRIPTION: Updated description of the switchback test.
  • -n, --name NAME: Updated name of the switchback test.
  • -o, --output OUTPUT_PATH: Saves the updated switchback test information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud upload

Create temporary upload URLs for Nextmv Cloud applications.

When data is too large, or you are working with multiple files, you can use upload URLs to upload data directly to Nextmv Cloud storage.

Usage:

$ cloud upload [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • create: Create a new Nextmv Cloud application...

cloud upload create

Create a new Nextmv Cloud application upload URL.

Examples

  • Create an upload URL for application hare-app.

    $ nextmv cloud upload create --app-id hare-app

  • Create an upload URL for application hare-app using profile hare.

    $ nextmv cloud upload create --app-id hare-app --profile hare

Usage:

$ cloud upload create [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud version

Create and manage Nextmv Cloud application versions.

A version represents a snapshot of an application's code at a specific point in time. Versions are used to track changes to the decision model. You can think of versions as Git tags for your Nextmv Cloud applications.

Usage:

$ cloud version [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • create: Create a new Nextmv Cloud application...
  • delete: Deletes a Nextmv Cloud application version.
  • exists: Check if a Nextmv Cloud application...
  • get: Get a Nextmv Cloud application version.
  • list: List all versions of a Nextmv Cloud...
  • update: Updates a Nextmv Cloud application version.

cloud version create

Create a new Nextmv Cloud application version.

Use the --exist-ok flag to avoid errors when creating a version with an ID that already exists. This is useful for scripts that need to ensure a version exists without worrying about whether it was created previously.

Examples

  • Create a version for application hare-app. A random ID will be generated.

    $ nextmv cloud version create --app-id hare-app

  • Create a version with a specific name.

    $ nextmv cloud version create --app-id hare-app --name "v1.0.0"

  • Create a version with a specific ID.

    $ nextmv cloud version create --app-id hare-app --version-id v1

  • Create a version with a name and description.

    $ nextmv cloud version create --app-id hare-app --name "v1.0.0" \ --description "Initial release with routing optimization"

  • Create a version, or get it if it already exists.

    $ nextmv cloud version create --app-id hare-app --version-id v1 --exist-ok

Usage:

$ cloud version create [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -d, --description DESCRIPTION: An optional description for the version.
  • -e, --exist-ok: If a version with the given ID already exists, do not raise an error, and simply return it.
  • -n, --name NAME: Optional name for the version. If a name is not provided, the version ID will be used as the name.
  • -v, --version-id VERSION_ID: The ID to assign to the new version. If not provided, a random ID will be generated. [env var: NEXTMV_VERSION_ID]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud version delete

Deletes a Nextmv Cloud application version.

This action is permanent and cannot be undone. Use the --yes flag to skip the confirmation prompt.

Examples

  • Delete the version with the ID v1 from application hare-app.

    $ nextmv cloud version delete --app-id hare-app --version-id v1

  • Delete the version without confirmation prompt.

    $ nextmv cloud version delete --app-id hare-app --version-id v1 --yes

Usage:

$ cloud version delete [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -v, --version-id VERSION_ID: The Nextmv Cloud version ID to use for this action. [env var: NEXTMV_VERSION_ID; required]
  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud version exists

Check if a Nextmv Cloud application version exists.

This command is useful in scripting applications to verify the existence of a Nextmv Cloud application version by its ID.

Examples

  • Check if the version with the ID v1 exists in application hare-app.

    $ nextmv cloud version exists --app-id hare-app --version-id v1

  • Check if the version exists using the profile named hare.

    $ nextmv cloud version exists --app-id hare-app --version-id v1 --profile hare

Usage:

$ cloud version exists [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -v, --version-id VERSION_ID: The Nextmv Cloud version ID to use for this action. [env var: NEXTMV_VERSION_ID; required]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud version get

Get a Nextmv Cloud application version.

This command is useful to get the attributes of an existing Nextmv Cloud application version by its ID.

Examples

  • Get the version with the ID v1 from application hare-app.

    $ nextmv cloud version get --app-id hare-app --version-id v1

  • Get the version with the ID v1 and save the information to a version.json file.

    $ nextmv cloud version get --app-id hare-app --version-id v1 --output version.json

Usage:

$ cloud version get [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -v, --version-id VERSION_ID: The Nextmv Cloud version ID to use for this action. [env var: NEXTMV_VERSION_ID; required]
  • -o, --output OUTPUT_PATH: Saves the version information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud version list

List all versions of a Nextmv Cloud application.

By default this command paginates the list of versions, which means multiple API calls may be made to retrieve all versions. You may use the --no-pagination option to disable pagination.

Examples

  • List all versions of application hare-app.

    $ nextmv cloud version list --app-id hare-app

  • List all versions using the profile named hare.

    $ nextmv cloud version list --app-id hare-app --profile hare

  • List all versions and save the information to a versions.json file.

    $ nextmv cloud version list --app-id hare-app --output versions.json

  • List all versions without pagination.

    $ nextmv cloud version list --app-id hare-app --no-pagination

Usage:

$ cloud version list [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • --no-pagination: Whether to disable pagination when listing this type of entity.
  • -o, --output OUTPUT_PATH: Saves the version list information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

cloud version update

Updates a Nextmv Cloud application version.

Examples

  • Update a version's name.

    $ nextmv cloud version update --app-id hare-app --version-id v1 --name "Version 1.0"

  • Update a version's description.

    $ nextmv cloud version update --app-id hare-app --version-id v1 \ --description "Initial stable release"

  • Update a version's name and description at once.

    $ nextmv cloud version update --app-id hare-app --version-id v1 \ --name "Version 1.0" --description "Initial stable release"

  • Update a version and save the updated information to a updated_version.json file.

    $ nextmv cloud version update --app-id hare-app --version-id v1 \ --name "Version 1.0" --output updated_version.json

Usage:

$ cloud version update [OPTIONS]

Options:

  • -a, --app-id APP_ID: The Nextmv Cloud application ID to use for this action. [env var: NEXTMV_APP_ID; required]
  • -v, --version-id VERSION_ID: The Nextmv Cloud version ID to use for this action. [env var: NEXTMV_VERSION_ID; required]
  • -d, --description DESCRIPTION: A new description for the version.
  • -n, --name NAME: A new name for the version.
  • -o, --output OUTPUT_PATH: Saves the updated version information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

community

Interact with community apps, which are pre-built decision models.

Community apps are maintained in the following GitHub repository: nextmv-io/community-apps.

Usage:

$ community [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • clone: Clone a community app locally.
  • list: List the available community apps

community clone

Clone a community app locally.

By default, the latest version will be used. You can specify a version with the --version flag, and customize the output directory with the --directory flag. If you want to list the available apps, use the nextmv community list command. When an app is cloned, it is automatically registered locally, so you can run it with the nextmv local run command using the generated app ID.

Examples

  • Clone the go-nextroute community app (under the "go-nextroute" directory), using the latest version.

    $ nextmv community clone --app go-nextroute

  • Clone the go-nextroute community app under the "~/sample/my_app" directory, using the latest version.

    $ nextmv community clone --app go-nextroute --directory ~/sample/my_app

  • Clone the go-nextroute community app (under the "go-nextroute" directory), using version v1.2.0.

    $ nextmv community clone --app go-nextroute --version v1.2.0

  • Clone the go-nextroute community app (under the "go-nextroute" directory), using the latest version and a profile named hare.

    $ nextmv community clone --app go-nextroute --profile hare

Usage:

$ community clone [OPTIONS]

Options:

  • -a, --app COMMUNITY_APP: The name of the community app to clone. [required]
  • -d, --directory DIRECTORY: The directory in which to clone the app. Default is the name of the app at current directory.
  • -v, --version VERSION: The version of the community app to clone. [default: latest]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

community list

List the available community apps

Use the --app flag to list that app's versions. Use the --flat flag to flatten the list of names/versions. If you want to clone a community app locally, use the nextmv community clone command.

Examples

  • List the available community apps.

    $ nextmv community list

  • List the available versions of the go-nextroute community app.

    $ nextmv community list --app go-nextroute

  • List the names of the available community apps as a flat list.

    $ nextmv community list --flat

  • List the available versions of the go-nextroute community app as a flat list.

    $ nextmv community list --app go-nextroute --flat

  • List the available community apps using a profile named hare.

    $ nextmv community list --profile hare

Usage:

$ community list [OPTIONS]

Options:

  • -a, --app COMMUNITY_APP: The community app to list versions for.
  • -f, --flat: Flatten the list output.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

configuration

Configure the CLI and manage profiles.

Usage:

$ configuration [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • create: Create a new configuration or update an...
  • delete: Delete a profile from the configuration.
  • list: List the current configuration and all...

configuration create

Create a new configuration or update an existing one.

pkce profiles require a separate login step via nextmv auth login before they can be used.

Multiple pkce profiles can share a single browser login by referencing the same --auth-session name, automatically done by default auth-session 'default' if not specified.

Examples

  • Default configuration (prompts for type and API key or opens browser).

    $ nextmv configuration create

  • Default API key configuration without prompting.

    $ nextmv configuration create --api-key NEXTMV_API_KEY

  • Configure an api_key profile named hare.

    $ nextmv configuration create --api-key NEXTMV_API_KEY --profile hare

  • Configure a named pkce profile.

    $ nextmv configuration create --profile hare --auth-type pkce

  • Configure two pkce profiles that share a single login session.

    $ nextmv configuration create --profile dev --auth-type pkce --auth-session my-work

    $ nextmv configuration create --profile staging --auth-type pkce --auth-session my-work

Usage:

$ configuration create [OPTIONS]

Options:

  • -a, --api-key NEXTMV_API_KEY: A valid Nextmv Cloud API key. Get one from https://cloud.nextmv.io. Setting this flag automatically selects the api_key auth type. [env var: NEXTMV_API_KEY]
  • -s, --auth-session SESSION_NAME: Named auth session to share tokens across profiles. Only applies to pkce profiles. [default: default]
  • -t, --auth-type AUTH_TYPE: The authentication type for this profile. Allowed values are: api_key and pkce. Ignored when --api-key is provided. [default: (api_key)]
  • -p, --profile PROFILE_NAME: Profile name to save the configuration under. [env var: NEXTMV_PROFILE]
  • --email EMAIL: Your login email to detect a third-party SSO provider. Only the domain part is stored.
  • --system-certs: Use the operating system certificate store for TLS connections.
  • --team TEAM_NAME: Team name to associate with this pkce profile.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

configuration delete

Delete a profile from the configuration.

Use the --yes flag to skip the confirmation prompt.

Examples

  • Delete a profile named hare.

    $ nextmv configuration delete --profile hare

  • Delete a profile named hare without confirmation prompt.

    $ nextmv configuration delete --profile hare --yes

Usage:

$ configuration delete [OPTIONS]

Options:

  • -p, --profile PROFILE_NAME: Profile name to delete. [env var: NEXTMV_PROFILE; required]
  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

configuration list

List the current configuration and all profiles.

Examples

  • Show current configuration and all profiles.

    $ nextmv configuration list

Usage:

$ configuration list [OPTIONS]

Options:

  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

init

Get started with the Nextmv CLI.

Examples

  • Start the tutorial.

    $ nextmv init

Usage:

$ init [OPTIONS]

Options:

  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

local

Interact with local Nextmv apps and make runs.

Usage:

$ local [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • app: Manage and sync local Nextmv applications.
  • run: Create and manage Nextmv local application...

local app

Manage and sync local Nextmv applications.

A Nextmv application is an entity that contains a decision model as executable code. An application can make a run by taking an input, executing the decision model, and producing an output.

Usage:

$ local app [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • delete: Deletes a Nextmv application from the...
  • get: Get a registered local Nextmv application.
  • list: List all local registered Nextmv...
  • register: Register a local Nextmv application.
  • registered: Check if a Nextmv application is...
  • sync: Sync a local Nextmv application to the...
  • update: Update a registered local Nextmv application.

local app delete

Deletes a Nextmv application from the local registry.

You may identify the app by using --app-src or --app-id. This action is permanent and cannot be undone. Use the --yes flag to skip the confirmation prompt.

Examples

  • Delete the application with the ID hare-app.

    $ nextmv local app delete --app-id hare-app

  • Delete the application with the ID hare-app without confirmation prompt.

    $ nextmv local app delete --app-id hare-app --yes

Usage:

$ local app delete [OPTIONS]

Options:

  • -a, --app-id APP_ID: The local Nextmv application ID to use for this action. [env var: NEXTMV_APP_ID]
  • -s, --app-src APP_SRC: The source (filesystem path) of the local Nextmv application to use for this action. Defaults to the current working directory. [env var: NEXTMV_APP_SRC]
  • -y, --yes: Agree to deletion confirmation prompt. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

local app get

Get a registered local Nextmv application.

You may identify the app by using --app-src or --app-id.

Examples

  • Get the application with the ID hare-app.

    $ nextmv local app get --app-id hare-app

  • Get the application with the ID hare-app and save the information to an app.json file.

    $ nextmv local app get --app-id hare-app --output app.json

Usage:

$ local app get [OPTIONS]

Options:

  • -a, --app-id APP_ID: The local Nextmv application ID to use for this action. [env var: NEXTMV_APP_ID]
  • -s, --app-src APP_SRC: The source (filesystem path) of the local Nextmv application to use for this action. Defaults to the current working directory. [env var: NEXTMV_APP_SRC]
  • -o, --output OUTPUT_PATH: Saves the app information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

local app list

List all local registered Nextmv applications.

Examples

  • List all registered applications.

    $ nextmv local app list

  • List all registered applications and save the information to an apps.json file.

    $ nextmv local app list --output apps.json

Usage:

$ local app list [OPTIONS]

Options:

  • -o, --output OUTPUT_PATH: Saves the app list information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

local app register

Register a local Nextmv application.

After an application is registered, you may use the resulting app ID to interact with the application from different locations on your machine without needing to specify the source path. You may also use the app ID to refer to the application in other Nextmv CLI commands. If an app ID is not provided, the CLI will generate one for you. The source path must be a local path on your machine that contains a Nextmv application manifest file (app.yaml).

Examples

  • Register a local application with the source path ./my-app.

    $ nextmv local app register --app-src ./my-app

  • Register a local application with the source path ./my-app and save the information to an app.json file.

    $ nextmv local app register --app-src ./my-app --output app.json

Usage:

$ local app register [OPTIONS]

Options:

  • -a, --app-id APP_ID: The local Nextmv application ID to use for this action. [env var: NEXTMV_APP_ID]
  • -s, --app-src APP_SRC: The source (filesystem path) of the local Nextmv application to use for this action. Defaults to the current working directory. [env var: NEXTMV_APP_SRC]
  • -d, --description DESCRIPTION: An optional description for the application.
  • -o, --output OUTPUT_PATH: Saves the app information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

local app registered

Check if a Nextmv application is registered locally.

You may identify the app by using --app-src or --app-id. This command is useful in scripting applications to verify the existence of a local application.

Examples

  • Check if the application with the ID hare-app is registered.

    $ nextmv local app registered --app-id hare-app

  • Check if the application with source path ./hare-app/ is registered.

    $ nextmv local app registered --app-src ./hare-app/

Usage:

$ local app registered [OPTIONS]

Options:

  • -a, --app-id APP_ID: The local Nextmv application ID to use for this action. [env var: NEXTMV_APP_ID]
  • -s, --app-src APP_SRC: The source (filesystem path) of the local Nextmv application to use for this action. Defaults to the current working directory. [env var: NEXTMV_APP_SRC]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

local app sync

Sync a local Nextmv application to the Nextmv Cloud.

You may identify the app by using --app-src, or --app-id if it has been registered. If the app is not already registered, this command will register it. Using the --run-ids option allows you to specify a subset of runs to sync. By default, all runs are synced. You can also specify an --instance-id to associate the synced runs with a specific Cloud instance.

Examples

  • Sync the registered local application with the ID hare-app to the Cloud application with the ID hare-cloud-app, syncing all runs.

    $ nextmv local app sync --target-app-id hare-cloud-app --app-id hare-app

  • Sync the local application at source path ./hare_app to the Cloud application with the ID hare-cloud-app, syncing only runs run1, run2.

    $ nextmv local app sync --target-app-id hare-cloud-app --app-src ./hare_app \ --run-ids run1 --run-ids run2

  • Sync the registered local application with the ID hare-app to the Cloud application with the ID hare-cloud-app, linking runs to instance fluffy-inst.

    $ nextmv local app sync --target-app-id hare-cloud-app --app-id hare-app --instance-id fluffy-inst

  • Sync local applications using the profile named hare.

    $ nextmv local app sync --target-app-id hare-cloud-app --app-id hare-app --profile hare

Usage:

$ local app sync [OPTIONS]

Options:

  • -t, --target-app-id TARGET_APP_ID: The target Nextmv Cloud application ID to sync to. [env var: NEXTMV_TARGET_APP_ID; required]
  • -a, --app-id APP_ID: The local Nextmv application ID to use for this action. [env var: NEXTMV_APP_ID]
  • -s, --app-src APP_SRC: The source (filesystem path) of the local Nextmv application to use for this action. Defaults to the current working directory. [env var: NEXTMV_APP_SRC]
  • -i, --instance-id INSTANCE_ID: Optional Cloud instance ID if you want to associate the runs with a specific instance.
  • -r, --run-ids RUN_IDS: List of run IDs to sync. All are used if not specified. Pass multiple run IDs by repeating the flag.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • -p, --profile PROFILE_NAME: Profile to use for this action. Use nextmv configuration to manage profiles. [env var: NEXTMV_PROFILE]
  • --help: Show this message and exit.

local app update

Update a registered local Nextmv application.

You may identify the app by using --app-src, or --app-id if it has been registered. If the app is not already registered, this command will register it. You can update the app's ID through the --new-app-id option.

Examples

  • Update the application with the ID hare-app.

    $ nextmv local app update --app-id hare-app --description "New description"

  • Update the application with the ID hare-app and save the information to an app.json file.

    $ nextmv local app update --app-id hare-app --description "New description" --output app.json

  • Update the ID of the application located at ./my-app to hare-app.

    $ nextmv local app update --app-src ./my-app --new-app-id hare-app --description "New description"

Usage:

$ local app update [OPTIONS]

Options:

  • -d, --description DESCRIPTION: A new description for the application. [required]
  • -a, --app-id APP_ID: The local Nextmv application ID to use for this action. [env var: NEXTMV_APP_ID]
  • -s, --app-src APP_SRC: The source (filesystem path) of the local Nextmv application to use for this action. Defaults to the current working directory. [env var: NEXTMV_APP_SRC]
  • -n, --new-app-id NEW_APP_ID: A new ID for the local Nextmv application.
  • -o, --output OUTPUT_PATH: Saves the app information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

local run

Create and manage Nextmv local application runs.

A run represents the execution of a decision model within a Nextmv local application. Each run takes an input, processes it using the decision model, and produces an output.

Usage:

$ local run [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • clone: Clone an existing local application run.
  • compare: Compare multiple Nextmv local application...
  • create: Create a new local application run.
  • get: Get the result (output) of a Nextmv local...
  • information: Get the information of a Nextmv local...
  • input: Get the input of a local application run.
  • list: Get the list of runs for a Nextmv local...
  • logs: Get the logs of a local application run.
  • metadata: This command is deprecated, use... (DEPRECATED)
  • visuals: Get the visuals of a Nextmv local...

local run clone

Clone an existing local application run.

All information of the original (cloned) run will be reused. You may override any information you wish, such as the input, content format, or options, for example. All the options for creating the new run work the same way as in the nextmv local run create command. You may inspect the documentation of that command for more details on what each option does.

Examples

  • Clone run run-123 from an app in the current directory.

    $ nextmv local run clone --cloned-run-id run-123

  • Clone a json input via stdin, from an input.json file, and create a run for an app in the current directory. $ cat input.json | nextmv local run clone --cloned-run-id run-123

  • Clone a json input from an input.json file, and create a run for an app with ID hare-app.

    $ nextmv local run clone --cloned-run-id run-123 --app-id hare-app --input input.json

  • Clone a json input from an input.json file, and create a run for an app at path ./my-app. Wait for the run to complete and print the result to stdout.

    $ nextmv local run clone --cloned-run-id run-123 --app-src ./my-app --input input.json --wait

  • Clone a json input from an input.json file, and create a run for an app at path ./my-app. Tail the run's logs, streaming to stderr.

    $ nextmv local run clone --cloned-run-id run-123 --app-src ./my-app --input input.json --tail

  • Clone a json input from an input.json file, and create a run for an app with ID hare-app. Wait for the run to complete and write the result to an output.json file.

    $ nextmv local run clone --cloned-run-id run-123 --app-id hare-app --input input.json \ --output output.json

  • Clone a json input from an input.json file, and create a run for an app with ID hare-app. Wait for the run to complete, and write the logs to a logs.log file.

    $ nextmv local run clone --cloned-run-id run-123 --app-id hare-app --input input.json --logs logs.log

  • Clone a json input from an input.json file, and create a run for an app at path ./my-app. Wait for the run to complete. Tail the run's logs, streaming to stderr. Write the logs to a logs.log file. Write the result to an output.json file.

    $ nextmv local run clone --cloned-run-id run-123 --app-src ./my-app --input input.json --tail \ --logs logs.log --output output.json

  • Clone a multi-file input from an inputs directory, and create a run for an app at path ./my-app.

    $ nextmv local run clone --cloned-run-id run-123 --app-src ./my-app --input inputs \ --content-format multi-file

  • Clone a multi-file input from an inputs directory, and create a run for an app with ID hare-app. Wait for the run to complete and save the result files to an outputs directory.

    $ nextmv local run clone --cloned-run-id run-123 --app-id hare-app --input inputs --output outputs

  • Clone a run with custom options for an app at path ./my-app.

    $ nextmv local run clone --cloned-run-id run-123 --app-src ./my-app --input input.json \ --options duration=10s --options verbose=true

Usage:

$ local run clone [OPTIONS]

Options:

  • -r, --cloned-run-id CLONED_RUN_ID: The original Nextmv run ID that you want to clone. [env var: NEXTMV_CLONED_RUN_ID; required]
  • -a, --app-id APP_ID: The local Nextmv application ID to use for this action. [env var: NEXTMV_APP_ID]
  • -s, --app-src APP_SRC: The source (filesystem path) of the local Nextmv application to use for this action. Defaults to the current working directory. [env var: NEXTMV_APP_SRC; default: .]
  • -i, --input INPUT_PATH: The input path to use. File or directory depending on content format. Uses stdin if not defined. Can be a .tar.gz file for multi-file content format.
  • -l, --logs LOGS_PATH: Waits for the run to complete and saves the logs to this location.
  • -u, --output OUTPUT_PATH: Waits for the run to complete and save the output to this location. A file or directory will be created depending on content format.
  • -t, --tail: Tail the logs until the run completes. Logs are streamed to stderr. Specify log output location with --logs.
  • -w, --wait: Wait for the run to complete. Run result is printed to stdout for json, to a dir for multi-file. Specify output location with --output.
  • -c, --content-format CONTENT_FORMAT: The content format of the run to create. Allowed values are: json and multi-file.
  • --description DESCRIPTION: An optional description for the new run.
  • -n, --name NAME: An optional name for the new run.
  • -o, --options KEY=VALUE: Options passed to the run. Format: key=value. Pass multiple options by repeating the flag, or separating with commas.
  • --timeout TIMEOUT_SECONDS: The maximum time in seconds to wait for results when polling. Poll indefinitely if not set. [default: -1]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

local run compare

Compare multiple Nextmv local application runs.

By default this command prints a human-readable table to stdout. You may use the --flat option to print the comparison result to stdout as json instead. When the --output option is used, the --flat flag is automatically activated and the result is saved as json.

Examples

  • Compare two runs belonging to an app with ID hare-app repeating the --run-ids flag.

    $ nextmv local run compare --app-id hare-app --run-ids fluff --run-ids white

  • Compare three runs belonging to an app with ID hare-app separating the run IDs with commas.

    $ nextmv local run compare --app-id hare-app --run-ids fluff,white,thumper

  • Compare two runs and print the result as json.

    $ nextmv local run compare --app-id hare-app --run-ids fluff,white --flat

  • Compare two runs and save the result to a file named comparison.json.

    $ nextmv local run compare --app-id hare-app --run-ids fluff,white --output comparison.json

Usage:

$ local run compare [OPTIONS]

Options:

  • -r, --run-ids RUN_IDS: List of run IDs to compare. Pass multiple run IDs by repeating the flag, or separating with commas. [required]
  • -a, --app-id APP_ID: The local Nextmv application ID to use for this action. [env var: NEXTMV_APP_ID]
  • -s, --app-src APP_SRC: The source (filesystem path) of the local Nextmv application to use for this action. Defaults to the current working directory. [env var: NEXTMV_APP_SRC; default: .]
  • -f, --flat: Print the comparison result as json, instead of a table.
  • -o, --output OUTPUT_PATH: Saves the comparison result to this location. Activates the --flat option.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

local run create

Create a new local application run.

You may identify the app by using --app-src, or --app-id if it has been registered. If the app is not already registered, this command will register it. Input for the run should be given through stdin or the --input flag. When using the --input flag, the value can be one of the following:

  • <FILE_PATH>: path to a file containing the input data. Use with the json content format.
  • <DIR_PATH>: path to a directory containing the input data files. Use with the multi-file content format.

The CLI determines how to send the input to the application based on the value.

Use the --wait flag to wait for the run to complete, polling for results. Using the --output flag will also activate waiting, and allows you to specify a destination (file or dir) for the output, depending on the content type.

Use the --tail flag to stream logs to stderr until the run completes. Using the --logs flag will also activate waiting, and allows you to specify a file to write the logs to.

Examples

  • Read a json input via stdin, from an input.json file, and create a run for an app at the current directory. $ cat input.json | nextmv local run create

  • Read a json input from an input.json file, and create a run for an app with ID hare-app.

    $ nextmv local run create --app-id hare-app --input input.json

  • Read a json input from an input.json file, and create a run for an app at path ./my-app. Wait for the run to complete and print the result to stdout.

    $ nextmv local run create --app-src ./my-app --input input.json --wait

  • Read a json input from an input.json file, and create a run for an app at path ./my-app. Tail the run's logs, streaming to stderr.

    $ nextmv local run create --app-src ./my-app --input input.json --tail

  • Read a json input from an input.json file, and create a run for an app with ID hare-app. Wait for the run to complete and write the result to an output.json file.

    $ nextmv local run create --app-id hare-app --input input.json --output output.json

  • Read a json input from an input.json file, and create a run for an app with ID hare-app. Wait for the run to complete, and write the logs to a logs.log file.

    $ nextmv local run create --app-id hare-app --input input.json --logs logs.log

  • Read a json input from an input.json file, and create a run for an app at path ./my-app. Wait for the run to complete. Tail the run's logs, streaming to stderr. Write the logs to a logs.log file. Write the result to an output.json file.

    $ nextmv local run create --app-src ./my-app --input input.json --tail --logs logs.log \ --output output.json

  • Read a multi-file input from an inputs directory, and create a run for an app at path ./my-app.

    $ nextmv local run create --app-src ./my-app --input inputs --content-format multi-file

  • Read a multi-file input from an inputs directory, and create a run for an app with ID hare-app. Wait for the run to complete and save the result files to an outputs directory.

    $ nextmv local run create --app-id hare-app --input inputs --output outputs

  • Create a run with custom options for an app at path ./my-app.

    $ nextmv local run create --app-src ./my-app --input input.json \ --options duration=10s --options verbose=true

Usage:

$ local run create [OPTIONS]

Options:

  • -a, --app-id APP_ID: The local Nextmv application ID to use for this action. [env var: NEXTMV_APP_ID]
  • -s, --app-src APP_SRC: The source (filesystem path) of the local Nextmv application to use for this action. Defaults to the current working directory. [env var: NEXTMV_APP_SRC; default: .]
  • -i, --input INPUT_PATH: The input path to use. File or directory depending on content format. Uses stdin if not defined. Can be a .tar.gz file for multi-file content format.
  • -l, --logs LOGS_PATH: Waits for the run to complete and saves the logs to this location.
  • -u, --output OUTPUT_PATH: Waits for the run to complete and save the output to this location. A file or directory will be created depending on content format.
  • -t, --tail: Tail the logs until the run completes. Logs are streamed to stderr. Specify log output location with --logs.
  • -w, --wait: Wait for the run to complete. Run result is printed to stdout for json, to a dir for multi-file. Specify output location with --output.
  • -c, --content-format CONTENT_FORMAT: The content format of the run to create. Allowed values are: json and multi-file.
  • --description DESCRIPTION: An optional description for the new run.
  • -n, --name NAME: An optional name for the new run.
  • -o, --options KEY=VALUE: Options passed to the run. Format: key=value. Pass multiple options by repeating the flag, or separating with commas.
  • --timeout TIMEOUT_SECONDS: The maximum time in seconds to wait for results when polling. Poll indefinitely if not set. [default: -1]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

local run get

Get the result (output) of a Nextmv local application run.

You may identify the app by using --app-src, or --app-id if it has been registered. If the app is not already registered, this command will register it. Use the --wait flag to wait for the run to complete, polling for results. Using the --output flag will also activate waiting, and allows you to specify a destination (file or dir) for the output, depending on the content type.

Examples

  • Get the results of a run with ID burrow-123, belonging to an app with ID hare-app.

    $ nextmv local run get --app-id hare-app --run-id burrow-123

  • Get the results of a run with ID burrow-123, belonging to an app with ID hare-app. Wait for the run to complete if necessary.

    $ nextmv local run get --app-id hare-app --run-id burrow-123 --wait

  • Get the results of a run with ID burrow-123, belonging to an app with ID hare-app. The app is a json app. Save the results to a results.json file.

    $ nextmv local run get --app-id hare-app --run-id burrow-123 --output results.json

  • Get the results of a run with ID burrow-123, belonging to an app with ID hare-app. The app is a multi-file app. Save the results to the results dir.

    $ nextmv local run get --app-id hare-app --run-id burrow-123 --output results

  • Get the results of a run with ID burrow-123, belonging to an app with ID hare-app. Use the profile named hare.

    $ nextmv local run get --app-id hare-app --run-id burrow-123 --profile hare

Usage:

$ local run get [OPTIONS]

Options:

  • -r, --run-id RUN_ID: The Nextmv run ID to use for this action. [env var: NEXTMV_RUN_ID; required]
  • -a, --app-id APP_ID: The local Nextmv application ID to use for this action. [env var: NEXTMV_APP_ID]
  • -s, --app-src APP_SRC: The source (filesystem path) of the local Nextmv application to use for this action. Defaults to the current working directory. [env var: NEXTMV_APP_SRC; default: .]
  • -o, --output OUTPUT_PATH: Waits for the run to complete and save the output to this location. A file or directory will be created depending on content format.
  • --timeout TIMEOUT_SECONDS: The maximum time in seconds to wait for results when polling. Poll indefinitely if not set. [default: -1]
  • -w, --wait: Wait for the run to complete. Run result is printed to stdout for json, to a dir for multi-file. Specify output location with --output.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

local run information

Get the information of a Nextmv local application run.

You may identify the app by using --app-src, or --app-id if it has been registered. If the app is not already registered, this command will register it. By default, the information (including metadata) is fetched and printed to stdout. Use the --output flag to save the information to a file.

Examples

  • Get the information of a run with ID burrow-123, belonging to an app with ID hare-app. Information is printed to stdout.

    $ nextmv local run information --app-id hare-app --run-id burrow-123

  • Get the information of a run with ID burrow-123, belonging to an app with ID hare-app. Save the information to a information.json file.

    $ nextmv local run information --app-id hare-app --run-id burrow-123 --output information.json

  • Get the information of a run with ID burrow-123, belonging to an app with ID hare-app. Use the profile named hare.

    $ nextmv local run information --app-id hare-app --run-id burrow-123 --profile hare

Usage:

$ local run information [OPTIONS]

Options:

  • -r, --run-id RUN_ID: The Nextmv run ID to use for this action. [env var: NEXTMV_RUN_ID; required]
  • -a, --app-id APP_ID: The local Nextmv application ID to use for this action. [env var: NEXTMV_APP_ID]
  • -s, --app-src APP_SRC: The source (filesystem path) of the local Nextmv application to use for this action. Defaults to the current working directory. [env var: NEXTMV_APP_SRC; default: .]
  • -o, --output OUTPUT_PATH: Saves the information to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

local run input

Get the input of a local application run.

You may identify the app by using --app-src, or --app-id if it has been registered. If the app is not already registered, this command will register it. By default, the input is fetched and printed to stdout. Use the --output flag to save the input to a file.

Examples

  • Get the input of a run with ID burrow-123, belonging to an app with ID hare-app. Input is printed to stdout.

    $ nextmv local run input --app-id hare-app --run-id burrow-123

  • Get the input of a run with ID burrow-123, belonging to an app with ID hare-app. Save the input to a input.json file.

    $ nextmv local run input --app-id hare-app --run-id burrow-123 --output input.json

  • Get the input of a run with ID burrow-123, belonging to an app with ID hare-app. Use the profile named hare.

    $ nextmv local run input --app-id hare-app --run-id burrow-123 --profile hare

Usage:

$ local run input [OPTIONS]

Options:

  • -r, --run-id RUN_ID: The Nextmv run ID to use for this action. [env var: NEXTMV_RUN_ID; required]
  • -a, --app-id APP_ID: The local Nextmv application ID to use for this action. [env var: NEXTMV_APP_ID]
  • -s, --app-src APP_SRC: The source (filesystem path) of the local Nextmv application to use for this action. Defaults to the current working directory. [env var: NEXTMV_APP_SRC; default: .]
  • -o, --output OUTPUT_PATH: Saves the input to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

local run list

Get the list of runs for a Nextmv local application.

You may identify the app by using --app-src, or --app-id if it has been registered. If the app is not already registered, this command will register it. By default, the list of runs is fetched and printed to stdout. Use the --output flag to save the list to a file. You can use the optional --status flag to filter runs by their status.

Examples

  • Get the list of runs for an app with ID hare-app. List is printed to stdout.

    $ nextmv local run list --app-id hare-app

  • Get the list of runs for an app with ID hare-app. Save the list to a runs.json file.

    $ nextmv local run list --app-id hare-app --output runs.json

  • Get the list of runs for an app with ID hare-app. Use the profile named hare.

    $ nextmv local run list --app-id hare-app --profile hare

  • Get the list of queued runs for an app with ID hare-app.

    $ nextmv local run list --app-id hare-app --status queued

Usage:

$ local run list [OPTIONS]

Options:

  • -a, --app-id APP_ID: The local Nextmv application ID to use for this action. [env var: NEXTMV_APP_ID]
  • -s, --app-src APP_SRC: The source (filesystem path) of the local Nextmv application to use for this action. Defaults to the current working directory. [env var: NEXTMV_APP_SRC; default: .]
  • -o, --output OUTPUT_PATH: Saves the list of runs to this location.
  • -t, --status STATUS: Filter runs by their status. Allowed values are: canceled, failed, none, queued, running, and succeeded.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

local run logs

Get the logs of a local application run.

You may identify the app by using --app-src, or --app-id if it has been registered. If the app is not already registered, this command will register it.

By default, the logs are fetched and printed to stderr. Use the --tail flag to stream logs to stderr until the run completes. Using the --output flag will also activate waiting, and allows you to specify a file to write the logs to.

Examples

  • Get the logs of a run with ID burrow-123, belonging to an app with ID hare-app. Logs are printed to stderr.

    $ nextmv local run logs --app-id hare-app --run-id burrow-123

  • Get the logs of a run with ID burrow-123, belonging to an app with ID hare-app. Tail the logs until the run completes.

    $ nextmv local run logs --app-id hare-app --run-id burrow-123 --tail

  • Get the logs of a run with ID burrow-123, belonging to an app with ID hare-app. Save the logs to a logs.log file.

    $ nextmv local run logs --app-id hare-app --run-id burrow-123 --output logs.log

  • Get the logs of a run with ID burrow-123, belonging to an app with ID hare-app. Tail the logs and save them to a logs.log file.

    $ nextmv local run logs --app-id hare-app --run-id burrow-123 --tail --output logs.log

  • Get the logs of a run with ID burrow-123, belonging to an app with source path ./my-app.

    $ nextmv local run logs --app-src ./my-app --run-id burrow-123

  • Get the logs of a run with ID burrow-123, belonging to an app with source path ./my-app. Set a timeout of 60 seconds.

    $ nextmv local run logs --app-src ./my-app --run-id burrow-123 --timeout 60

Usage:

$ local run logs [OPTIONS]

Options:

  • -r, --run-id RUN_ID: The Nextmv run ID to use for this action. [env var: NEXTMV_RUN_ID; required]
  • -a, --app-id APP_ID: The local Nextmv application ID to use for this action. [env var: NEXTMV_APP_ID]
  • -s, --app-src APP_SRC: The source (filesystem path) of the local Nextmv application to use for this action. Defaults to the current working directory. [env var: NEXTMV_APP_SRC; default: .]
  • -o, --output OUTPUT_PATH: Waits for the run to complete and saves the logs to this location.
  • -t, --tail: Tail the logs until the run completes. Logs are streamed to stderr. Specify log output location with --output.
  • --timeout TIMEOUT_SECONDS: The maximum time in seconds to wait for results when polling. Poll indefinitely if not set. [default: -1]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

local run metadata

This command is deprecated, use nextmv local run information instead.

Get the metadata of a Nextmv local application run.

You may identify the app by using --app-src, or --app-id if it has been registered. If the app is not already registered, this command will register it. By default, the metadata is fetched and printed to stdout. Use the --output flag to save the metadata to a file.

Examples

  • Get the metadata of a run with ID burrow-123, belonging to an app with ID hare-app. Metadata is printed to stdout.

    $ nextmv local run metadata --app-id hare-app --run-id burrow-123

  • Get the metadata of a run with ID burrow-123, belonging to an app with ID hare-app. Save the metadata to a metadata.json file.

    $ nextmv local run metadata --app-id hare-app --run-id burrow-123 --output metadata.json

  • Get the metadata of a run with ID burrow-123, belonging to an app with ID hare-app. Use the profile named hare.

    $ nextmv local run metadata --app-id hare-app --run-id burrow-123 --profile hare

Usage:

$ local run metadata [OPTIONS]

Options:

  • -r, --run-id RUN_ID: The Nextmv run ID to use for this action. [env var: NEXTMV_RUN_ID; required]
  • -a, --app-id APP_ID: The local Nextmv application ID to use for this action. [env var: NEXTMV_APP_ID]
  • -s, --app-src APP_SRC: The source (filesystem path) of the local Nextmv application to use for this action. Defaults to the current working directory. [env var: NEXTMV_APP_SRC; default: .]
  • -o, --output OUTPUT_PATH: Saves the metadata to this location.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

local run visuals

Get the visuals of a Nextmv local application run.

You may identify the app by using --app-src, or --app-id if it has been registered. If the app is not already registered, this command will register it.

Examples

  • Get the visuals of a run with ID burrow-123, belonging to an app with ID hare-app. Visuals are opened in a web browser.

    $ nextmv local run visuals --app-id hare-app --run-id burrow-123

  • Get the visuals of a run with ID burrow-123, belonging to an app with source path ./my-app.

    $ nextmv local run visuals --app-src ./my-app --run-id burrow-123

Usage:

$ local run visuals [OPTIONS]

Options:

  • -r, --run-id RUN_ID: The Nextmv run ID to use for this action. [env var: NEXTMV_RUN_ID; required]
  • -a, --app-id APP_ID: The local Nextmv application ID to use for this action. [env var: NEXTMV_APP_ID]
  • -s, --app-src APP_SRC: The source (filesystem path) of the local Nextmv application to use for this action. Defaults to the current working directory. [env var: NEXTMV_APP_SRC; default: .]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

manifest

Manage app.yaml (app manifest/config) files.

Usage:

$ manifest [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • init: Initialize an app.yaml...
  • validate: Validate an app.yaml...

manifest init

Initialize an app.yaml (app manifest) file.

Creates a sample app.yaml manifest file by prompting the user to provide certain information. You can use --content-format, --dirpath, --type, --options-yes, and --options-no to skip the prompts. If the directory does not exist, it will be created. If a manifest file already exists in the directory, it will be overwritten.

Examples

  • Initialize a Python manifest in the current directory.

    $ nextmv manifest init

  • Initialize a json Go manifest in the ./my-app directory.

    $ nextmv manifest init --type go --content-format json --dirpath ./my-app

  • Initialize a multi-file Java manifest in the ./my-app directory.

    $ nextmv manifest init --type java --content-format multi-file --dirpath ./my-app

Usage:

$ manifest init [OPTIONS]

Options:

  • -c, --content-format CONTENT_FORMAT: The content format of the manifest. Allowed values are: json and multi-file. Useful for non-interactive sessions.
  • -d, --dirpath DIRPATH: The directory path where the manifest file will be initialized. Useful for non-interactive sessions.
  • -t, --type TYPE: The type of manifest to initialize. Allowed values are: python, go, java, and binary. Useful for non-interactive sessions.
  • -y, --options-yes: Add options (parameters) to the manifest. Useful for non-interactive sessions.
  • -n, --options-no: Do not add options (parameters) to the manifest. Useful for non-interactive sessions.
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

manifest validate

Validate an app.yaml (app manifest) file.

Loads the app.yaml manifest from the given directory and validates it. If no directory is provided, the current directory is used.

Examples

  • Validate the manifest in the current directory.

    $ nextmv manifest validate

  • Validate the manifest in the ./my-app directory.

    $ nextmv manifest validate --dirpath ./my-app

Usage:

$ manifest validate [OPTIONS]

Options:

  • -d, --dirpath DIRPATH: The directory path where the manifest file is located. Defaults to the current directory. [default: .]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

version

Show the current version of the Nextmv CLI.

Examples

  • Show the version.

    $ nextmv version

Usage:

$ version [OPTIONS]

Options:

  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.

mcp

Model Context Protocol (MCP) server for LLM integrations.

Start an MCP server so that any MCP-compatible client (Claude Code, Cursor, VS Code, etc.) can interact with Nextmv Cloud through natural language.

Quick start

  • Register with Claude Code. $ claude mcp add nextmv -- nextmv mcp serve

Usage:

$ mcp [OPTIONS] COMMAND [ARGS]...

Options:

  • --help: Show this message and exit.

Commands:

  • serve: Start the Nextmv MCP server.

mcp serve

Start the Nextmv MCP server.

The MCP server exposes Nextmv Cloud functionality as tools that any MCP-compatible client can use. The default transport is stdio, which is what Claude Code, Cursor, and most local clients expect.

Examples

  • Start the MCP server with stdio transport (default).

    $ nextmv mcp serve

  • Start the MCP server with HTTP transport on port 9090.

    $ nextmv mcp serve --transport streamable-http --port 9090

  • Register with Claude Code. $ claude mcp add nextmv -- nextmv mcp serve

Usage:

$ mcp serve [OPTIONS]

Options:

  • --port PORT: Port for the HTTP transport. [default: 8080]
  • -t, --transport TRANSPORT: Transport protocol. Allowed values: stdio, streamable-http. [default: stdio]
  • --debug: Enable debug mode, which will print out the full traceback in case of errors.
  • --help: Show this message and exit.