Reference
stormforge
Release with Confidence
Synopsis
Command line interface for the StormForge products.
Options
--sfconfig file configuration file to use
-h, --help help for stormforge
SEE ALSO
- stormforge apply - Apply one or more recommendations
- stormforge auth - Manage authorizations
- stormforge check - Validate StormForge components
- stormforge completion - Generate the autocompletion script for the specified shell
- stormforge config - Show the CLI configuration
- stormforge create - Create a resource
- stormforge delete - Delete one or more resources
- stormforge edit - Edit a resource
- stormforge get - Display one or more resources
- stormforge login - Create an authorization
- stormforge logout - Revoke an authorization
- stormforge patch - Deploy patches to a cluster or source
- stormforge ping - Connect to the StormForge server (also see ‘check connect’)
- stormforge version - Show the version information
stormforge apply
Apply one or more recommendations
Synopsis
Apply recommendations.
Applies the latest available recommendation for each workload. If SCHEDULE is specified, the latest recommendation will only be applied if it was generated using that schedule.
stormforge apply [flags]
Options
-l, --selector query selector (label query) to filter on
--state value state values to filter on; any of: Generated|Applied
--cluster name cluster name to filter on
--resource type workload resource type to filter on
--namespace namespace workload namespace to filter on
--name name workload name to filter on
--recommendation name workload recommendation name to filter on
--force do not skip preliminary recommendations
-h, --help help for apply
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge - Release with Confidence
stormforge auth
Manage authorizations
Synopsis
Manage your StormForge authorizations.
stormforge auth
Options
-h, --help help for auth
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge - Release with Confidence
- stormforge auth create - Create an authorization
- stormforge auth list - List authorizations
- stormforge auth revoke - Revoke authorizations
stormforge auth create
Create an authorization
Synopsis
Create a new StormForge authorization.
stormforge auth create NAME [flags]
Examples
# Create a values.yaml file for installing a StormForge product with Helm
stormforge auth create my-token-name > stormforge-values.yaml
# Create an organization wide secret with a StormForge token for GitHub Actions
gh secret set --org myOrg STORMFORGE_TOKEN <(stormforge auth create -o token github-actions)
Options
-o, --output format output format; one of: yaml|json|token (default "yaml")
-h, --help help for auth create
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge auth - Manage authorizations
stormforge auth list
List authorizations
Synopsis
List StormForge authorizations.
stormforge auth list [flags]
Options
-o, --output format output format; one of: json|yaml|name|wide|csv|custom-columns|go-template
--no-headers don't print headers
--template go-template template string to use for '-o go-template'
-h, --help help for auth list
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge auth - Manage authorizations
stormforge auth revoke
Revoke authorizations
Synopsis
Revokes a StormForge authorization.
stormforge auth revoke AUTHORIZATION... [flags]
Options
-h, --help help for auth revoke
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge auth - Manage authorizations
stormforge check
Validate StormForge components
Synopsis
Validates components of the StormForge system.
stormforge check
Options
-h, --help help for check
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge - Release with Confidence
- stormforge check connect - Check server connections
- stormforge check nfr - Checks a test run result for non-functional requirements
- stormforge check version - Check the CLI version
stormforge check connect
Check server connections
Synopsis
Test the connection to StormForge servers.
stormforge check connect api|auth|in|registry|app|docs|downloads|localhost ... [flags]
Examples
# Check connectivity from inside a cluster
kubectl run stormforge-check-connect --attach --rm --restart Never --quiet \
--image registry.stormforge.io/library/stormforge-cli -- check connect
Options
-o, --output format output format; one of: json|yaml|name|wide|csv|custom-columns|go-template
--no-headers don't print headers
--template go-template template string to use for '-o go-template'
-h, --help help for check connect
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge check - Validate StormForge components
stormforge check nfr
Checks a test run result for non-functional requirements
Synopsis
Checks a test run result for non-functional requirements.
Specify the test run to check with –test-run TESTRUN. TESTRUN can be either the path (e.g. “blackfriday-2022/47”) or its UID reference (e.g. “uid:654321”). The path consists of the test case name and a sequential number and may change, if the test case is renamed.
See https://docs.stormforge.io/perftest/reference/nfr/ for our reference documentation for NFR files.
stormforge check nfr --test-run TESTRUN --from-file FILE [flags]
Examples
# Check the 2nd test run of test case "blackfriday2022"
stormforge check nfr --test-run "blackfriday2022/2" --from-file ./loadtest/nfr.yaml
Options
--test-run reference reference to the test run to check (name or UID)
--from-file file file with the NFR definition
-o, --output format output format; one of: json|yaml
-h, --help help for check nfr
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge check - Validate StormForge components
stormforge check version
Check the CLI version
Synopsis
Check the current CLI version.
stormforge check version [flags]
Options
-h, --help help for check version
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge check - Validate StormForge components
stormforge completion
Generate the autocompletion script for the specified shell
Synopsis
Generate the autocompletion script for stormforge for the specified shell. See each sub-command’s help for details on how to use the generated script.
stormforge completion
Options
-h, --help help for completion
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge - Release with Confidence
- stormforge completion bash - Generate the autocompletion script for bash
- stormforge completion fish - Generate the autocompletion script for fish
- stormforge completion powershell - Generate the autocompletion script for powershell
- stormforge completion zsh - Generate the autocompletion script for zsh
stormforge completion bash
Generate the autocompletion script for bash
Synopsis
Generate the autocompletion script for the bash shell.
This script depends on the ‘bash-completion’ package. If it is not installed already, you can install it via your OS’s package manager.
To load completions in your current shell session:
source <(stormforge completion bash)
To load completions for every new session, execute once:
Linux:
stormforge completion bash > /etc/bash_completion.d/stormforge
macOS:
stormforge completion bash > $(brew --prefix)/etc/bash_completion.d/stormforge
You will need to start a new shell for this setup to take effect.
stormforge completion bash
Options
--no-descriptions disable completion descriptions
-h, --help help for completion bash
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge completion - Generate the autocompletion script for the specified shell
stormforge completion fish
Generate the autocompletion script for fish
Synopsis
Generate the autocompletion script for the fish shell.
To load completions in your current shell session:
stormforge completion fish | source
To load completions for every new session, execute once:
stormforge completion fish > ~/.config/fish/completions/stormforge.fish
You will need to start a new shell for this setup to take effect.
stormforge completion fish [flags]
Options
--no-descriptions disable completion descriptions
-h, --help help for completion fish
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge completion - Generate the autocompletion script for the specified shell
stormforge completion powershell
Generate the autocompletion script for powershell
Synopsis
Generate the autocompletion script for powershell.
To load completions in your current shell session:
stormforge completion powershell | Out-String | Invoke-Expression
To load completions for every new session, add the output of the above command to your powershell profile.
stormforge completion powershell [flags]
Options
--no-descriptions disable completion descriptions
-h, --help help for completion powershell
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge completion - Generate the autocompletion script for the specified shell
stormforge completion zsh
Generate the autocompletion script for zsh
Synopsis
Generate the autocompletion script for the zsh shell.
If shell completion is not already enabled in your environment you will need to enable it. You can execute the following once:
echo "autoload -U compinit; compinit" >> ~/.zshrc
To load completions in your current shell session:
source <(stormforge completion zsh)
To load completions for every new session, execute once:
Linux:
stormforge completion zsh > "${fpath[1]}/_stormforge"
macOS:
stormforge completion zsh > $(brew --prefix)/share/zsh/site-functions/_stormforge
You will need to start a new shell for this setup to take effect.
stormforge completion zsh [flags]
Options
--no-descriptions disable completion descriptions
-h, --help help for completion zsh
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge completion - Generate the autocompletion script for the specified shell
stormforge config
Show the CLI configuration
Synopsis
View StormForge CLI configuration.
The StormForge CLI loads configuration from command line flags, environment
variables, and a configuration file (in that order). The location of the file
is determined by the --sfconfig
flag or the STORMFORGE_CONFIG
environment
variable (collectively, “the sfconfig”). If the sfconfig DOES NOT contain a
file path separator (e.g. ‘config’, the default), the file is resolved relative
to the OS specific “user config” directory (’~/.config/stormforge’ on Linux).
If the sfconfig DOES contain a path separator (e.g. ‘./sfconfig’), the file is
resolved relative to current working directory.
The configuration file may contain sensitive information: for example, after logging in using ‘stormforge login’ the token used to access the StormForge API will be present in the configuration file.
stormforge config [flags]
Options
--raw display the raw configuration file
--redact redact credentials
-o, --output format output format; one of: yaml|json|go-template (default "yaml")
--template go-template template string to use for '-o go-template'
-h, --help help for config
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge - Release with Confidence
stormforge create
Create a resource
Synopsis
Creates new StormForge resources.
stormforge create
Options
-h, --help help for create
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge - Release with Confidence
- stormforge create cluster - Create a cluster
- stormforge create data-source - Creates or updates one or more datasources from files
- stormforge create recommendations - Create recommendations
- stormforge create test-case - Creates or updates a new test case for performance testing
- stormforge create test-run - Launches a new test run
- stormforge create test-run-share-url - Creates a shareable URL for a test run report
stormforge create cluster
Create a cluster
Synopsis
Creates a new StormForge cluster.
stormforge create cluster NAME [flags]
Options
--set-label key=value label key=value pairs to assign (default [])
-h, --help help for create cluster
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge create - Create a resource
stormforge create data-source
Creates or updates one or more datasources from files
Synopsis
Creates or updates (upsert operation) a datasource resource that can be referenced in a performance test by uploading one or more files.
stormforge create data-source --from-file=FILE... [flags]
Options
-f, --from-file filename filename of raw or structured data file(s) to upload (specify multiple times to upload multiple files)
-r, --raw enable to upload file as raw fixture
-n, --name name name for the file fixture
-p, --name-prefix-path prefix prefix for name for the file fixture
-d, --delimiter delimiter column delimiter (defaults to ',' for structured file fixtures)
--fields fields comma-separated list of fields
--auto-field-names enable to interpret first row as headers
-o, --output format output format; one of: json|yaml
-h, --help help for create data-source
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge create - Create a resource
stormforge create recommendations
Create recommendations
Synopsis
Creates new StormForge recommendations.
stormforge create recommendations [flags]
Options
--set-label key=value label key=value pairs to assign (default [])
--auto-deploy automatically deploy the recommendation
--wait wait for auto-deployed recommendations to be applied
--timeout dur duration to wait for recommendations to be applied (default 10m0s)
--chunk-size n fetch large lists in chunks rather then all at once (default 1000)
-l, --selector query selector (label query) to filter on
--state value state values to filter on; any of: Created|Inactive|all
--cluster name cluster name to filter on
--resource type workload resource type to filter on
--namespace namespace workload namespace to filter on
--name name workload name to filter on
-h, --help help for create recommendations
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge create - Create a resource
stormforge create test-case
Creates or updates a new test case for performance testing
Synopsis
Creates or updates (upserts) a new test case based on the provided name and javascript definition for performance testing.
Bundling
This command performs bundling on the javascript definition. See the bundling help page for more details.
Dry Run
This command supports a –dry-run= flag to perform a dry run of the create operation to validate aspects of the provided test case configuration. No changes will be committed during the dry run. The only currently supported type of dry run is ‘javascript’ (–dry-run=javascript), which will validate the syntax of the provided test case javascript file ONLY.
stormforge create test-case NAME --from-file FILE [flags]
Options
-f, --from-file file javascript file containing the test case definition
--define variable=value defines a list of variable=value while bundling the javascript definition e.g. debug=false
--dry-run type type must equal 'javascript' (--dry-run=javascript). Performs a dry run to validate javascript syntax only
--no-update causes the create option to be strict, failing if there is an existing test case with the same name or UID (insert only, not upsert)
-o, --output format output format; one of: json|yaml
-h, --help help for create test-case
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge create - Create a resource
stormforge create test-run
Launches a new test run
Synopsis
Launches a new test run based on a test case.
Metadata
You can provided additional metadata about the test run like which version of the test target is deployed with the –title, –notes and –label flags.
Validate
You can create a test run in validation mode with –validate. This will ignore defined arrival phases and only launch a single user for each defined session to help debug the test case definition.
It also enables a basic check of the test run report for some common problems like did all requests succeed or did any checks fail. You can overwrite this by providing your own NFR checks with –nfr-check-file.
Bundling
This command performs bundling on the javascript definition. See the bundling help page for more details.
Metrics Export
You can automatically export some basic statistics about your test run by setting the –metrics-output flag or the PUSHGATEAWY_URL environment variable. The destination can be either a filename or a URL. This implies –watch. The basic_statistics will be written or POSTed in the Prometheus text format to the destination.
stormforge create test-run --test-case TESTCASE [flags]
Examples
# Perform a validation run
stormforge create test-run --test-case blackfriday2022 --from-file ./loadtest.mjs --validate
# Perform a load test with some metadata from your environment
# and check NFR requirements afterwards
stormforge create test-run --test-case blackfriday2022 \
--title "${CI_JOB}" --label "git.commit=$(git describe --always)" \
--nfr-check-file "./nfr.yaml"
Options
--validate runs test case in validation mode and checks report for via NFR check (implies --watch)
--from-file file file with javascript definition to update the test case to before launching
--nfr-check-file file check test result against NFR definition from file (implies --watch)
--test-case reference test case reference that should be used to launch the test run (name or UID)
--pool pool overwrites the pool / region to launch the test run in
--sizing sizing overwrites the cluster sizing to launch the test run in
--watch enables watching the test run until it finishes or the timeout is reached
--watch-timeout seconds maximum duration in seconds to wait for the test case to finish
--skip-wait skips wait() calls during test run execution, if enabled
--title title title for the test run
--notes notes notes for the test run - markdown formatting supported
--label label=value adds a label to the test run (format: label=value)
--label-file file reads labels from a file
--metrics-output destination destination for metrics export after the test run finishes (implies --watch)
--define variable=value defines a list of variable=value while bundling the javascript definition e.g. debug=false
-o, --output format output format; one of: json|yaml
-h, --help help for create test-run
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge create - Create a resource
stormforge create test-run-share-url
Creates a shareable URL for a test run report
Synopsis
Creates a shareable URL for a Performance Testing test run report that can be accessed without a login.
stormforge create test-run-share-url TESTRUN [flags]
Options
--expire-duration lifetime lifetime for this token, e.g. 2s or 5m (default is determined by the API)
-o, --output format output format; one of: json|yaml
-h, --help help for create test-run-share-url
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge create - Create a resource
stormforge delete
Delete one or more resources
Synopsis
Deletes StormForge resources.
stormforge delete
Options
-h, --help help for delete
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge - Release with Confidence
- stormforge delete clusters - Delete one or more clusters
- stormforge delete data-source - Delete one or more datasources
- stormforge delete workloads - Delete one or more workloads
stormforge delete clusters
Delete one or more clusters
Synopsis
Deletes StormForge clusters.
stormforge delete clusters CLUSTER_NAME... [flags]
Options
-o, --output format output format; "name"
--ignore-not-found ignore not found errors
-h, --help help for delete clusters
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge delete - Delete one or more resources
stormforge delete data-source
Delete one or more datasources
Synopsis
Deletes the specified datasource resources including all versions.
REFERENCE can be either the data source name or its UID reference (e.g. “uid:123456”).
stormforge delete data-source REFERENCE [REFERENCE...] [flags]
Options
-o, --output format output format; one of: json|yaml
-h, --help help for delete data-source
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge delete - Delete one or more resources
stormforge delete workloads
Delete one or more workloads
Synopsis
Deletes StormForge workloads.
stormforge delete workloads [flags]
Options
-o, --output format output format; "name"
-l, --selector query selector (label query) to filter on
--state value state values to filter on; any of: Created|Inactive|all
--cluster name cluster name to filter on
--resource type workload resource type to filter on
--namespace namespace workload namespace to filter on
--name name workload name to filter on
-h, --help help for delete workloads
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge delete - Delete one or more resources
stormforge edit
Edit a resource
Synopsis
Updates information on a StormForge resource.
stormforge edit
Options
-h, --help help for edit
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge - Release with Confidence
- stormforge edit cluster - Edit a cluster
- stormforge edit test-case - Update test case with new javascript definition
- stormforge edit workloads - Edit one or more workloads
stormforge edit cluster
Edit a cluster
Synopsis
Updates information on a StormForge cluster.
stormforge edit cluster NAME [flags]
Examples
# Set the instance category label to "karpenter.k8s.aws/instance-category" with the possible values "c", "m", and "r"
# NOTE: when setting instance category values, you replace the configuration and must provide all possible values
stormforge edit cluster my-cluster \
--set-instance-category-key "karpenter.k8s.aws/instance-category" \
--set-instance-category "c,2,Compute Optimized" \
--set-instance-category "m,4,General Purpose" \
--set-instance-category "r,8,Memory Optimized"
# Reset the instance category configuration for this cluster back to the default values
stormforge edit cluster my-cluster \
--set-instance-category-key "-" \
--reset-instance-categories
Options
--dry-run mode dry run mode used to apply manifests; one of: none|server|client
-o, --output format output format; one of: json|yaml
--set-label key=value label key=value pairs to assign (default [])
--reset-uid reset the Kubernetes identifier associated with the cluster
--set-instance-category-key label set the instance category label key
--set-instance-category name,ratio,title set one of the instance categories as name,ratio,title
--reset-instance-categories reset the instance categories associated with the cluster
-h, --help help for edit cluster
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge edit - Edit a resource
stormforge edit test-case
Update test case with new javascript definition
Synopsis
Updates a test case given by REFERENCE with a new javascript definition after bundling it.
REFERENCE may either be the name of a test case or the uid of a test case prefixed by ‘uid:’, i.e. uid:XXXXXXXX
Bundling
This command performs bundling on the javascript definition. See the bundling help page for more details.
stormforge edit test-case REFERENCE --from-file FILE [flags]
Options
-f, --from-file file javascript file containing the test case definition
--define variable=value defines a list of variable=value while bundling the javascript definition e.g. debug=false
-o, --output format output format; one of: json|yaml
-h, --help help for edit test-case
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge edit - Edit a resource
stormforge edit workloads
Edit one or more workloads
Synopsis
Updates information on a StormForge workloads.
stormforge edit workloads [flags]
Options
--set-label key=value label key=value pairs to assign (default [])
-f, --filename name patch file name
--type type patch type; one of: json|strategic (default "strategic")
--dry-run mode dry run mode used to apply manifests; one of: none|server|client
-l, --selector query selector (label query) to filter on
--state value state values to filter on; any of: Created|Inactive|all
--cluster name cluster name to filter on
--resource type workload resource type to filter on
--namespace namespace workload namespace to filter on
--name name workload name to filter on
-o, --output format output format; one of: json|yaml
-h, --help help for edit workloads
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge edit - Edit a resource
- stormforge edit workloads container-resources - Edit the container resources of one or more workloads
- stormforge edit workloads handlers - Edit the handler configurations of one or more workloads
- stormforge edit workloads schedule - Edit the schedule of one or more workloads
- stormforge edit workloads scheduling-instance-categories - Edit the node instance categories of one or more workloads
stormforge edit workloads container-resources
Edit the container resources of one or more workloads
Synopsis
Updates workload container resource settings.
stormforge edit workloads container-resources [flags]
Options
--dry-run mode dry run mode used to apply manifests; one of: none|server|client
-l, --selector query selector (label query) to filter on
--state value state values to filter on; any of: Created|Inactive|all
--cluster name cluster name to filter on
--resource type workload resource type to filter on
--namespace namespace workload namespace to filter on
--name name workload name to filter on
-o, --output format output format; one of: json|yaml
--pod-name name pod name to update
--requests-only container container names to skip limit optimization
--requests-raise-limits-if-needed container container names to raise the limits on
--requests-and-limits container container names to set both requests and limits
--do-not-optimize container container names to omit from optimization
--cpu-optimization-goal container=goal container=goal mappings for CPU; goal is one of: savings|balanced|reliability (default [])
--cpu-optimization-policy container=policy container=policy mappings for CPU; policy is one of: DoNotOptimize|RequestsAndLimits|RequestsRaiseLimitsIfNeeded|RequestsOnly (default [])
--cpu-requests-min container=min container=min mappings for CPU (default [])
--cpu-requests-max container=max container=max mappings for CPU (default [])
--cpu-limits-min container=min container=min mappings for CPU (default [])
--cpu-limits-max container=max container=max mappings for CPU (default [])
--cpu-limit-request-ratio container=ratio container=ratio mappings for CPU (default [])
--memory-optimization-goal container=goal container=goal mappings for memory; goal is one of: savings|balanced|reliability (default [])
--memory-optimization-policy container=policy container=policy mapping for memory; policy is one of: DoNotOptimize|RequestsAndLimits|RequestsRaiseLimitsIfNeeded|RequestsOnly (default [])
--memory-requests-min container=min container=min mappings for memory (default [])
--memory-requests-max container=max container=max mappings for memory (default [])
--memory-limits-min container=min container=min mappings for memory (default [])
--memory-limits-max container=max container=max mappings for memory (default [])
--memory-limit-request-ratio container=ratio container=ratio mappings for memory (default [])
-h, --help help for container-resources
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge edit workloads - Edit one or more workloads
stormforge edit workloads handlers
Edit the handler configurations of one or more workloads
Synopsis
Updates workload recommendation handler settings.
stormforge edit workloads handlers [flags]
Options
--dry-run mode dry run mode used to apply manifests; one of: none|server|client
-l, --selector query selector (label query) to filter on
--state value state values to filter on; any of: Created|Inactive|all
--cluster name cluster name to filter on
--resource type workload resource type to filter on
--namespace namespace workload namespace to filter on
--name name workload name to filter on
-o, --output format output format; one of: json|yaml
--auto-deploy enable an automatic deployment
--auto-deploy-thresholds-min-unit-change-cpu value minimum CPU value change
--auto-deploy-thresholds-min-percent-change-cpu percent minimum CPU percent change
--auto-deploy-thresholds-min-unit-change-memory value minimum memory value change
--auto-deploy-thresholds-min-percent-change-memory percent minimum memory percent change
-h, --help help for handlers
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge edit workloads - Edit one or more workloads
stormforge edit workloads schedule
Edit the schedule of one or more workloads
Synopsis
Updates workload recommendation schedule settings.
stormforge edit workloads schedule [flags]
Options
--dry-run mode dry run mode used to apply manifests; one of: none|server|client
-l, --selector query selector (label query) to filter on
--state value state values to filter on; any of: Created|Inactive|all
--cluster name cluster name to filter on
--resource type workload resource type to filter on
--namespace namespace workload namespace to filter on
--name name workload name to filter on
-o, --output format output format; one of: json|yaml
--default reset to the default schedule
--daily schedule daily recommendations
--weekly schedule weekly recommendations
--monthly schedule monthly recommendations
--never do not create regularly scheduled recommendations
--cron expression schedule recommendations using a cron expression
--every duration schedule recommendations every duration
-h, --help help for schedule
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge edit workloads - Edit one or more workloads
stormforge edit workloads scheduling-instance-categories
Edit the node instance categories of one or more workloads
Synopsis
Updates workload node instance category settings.
stormforge edit workloads scheduling-instance-categories [flags]
Options
--pod-name name pod name to update
--reset reset to defaults
--node-affinity-type type node affinity type to use; one of: soft|hard (default "soft")
--node-affinity-weight 1-100 preferred node affinity weight (1-100)
--do-not-optimize do not optimize node instance categories
--dry-run mode dry run mode used to apply manifests; one of: none|server|client
-l, --selector query selector (label query) to filter on
--state value state values to filter on; any of: Created|Inactive|all
--cluster name cluster name to filter on
--resource type workload resource type to filter on
--namespace namespace workload namespace to filter on
--name name workload name to filter on
-o, --output format output format; one of: json|yaml
-h, --help help for scheduling-instance-categories
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge edit workloads - Edit one or more workloads
stormforge get
Display one or more resources
Synopsis
Formats information for StormForge resources.
stormforge get
Options
-h, --help help for get
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge - Release with Confidence
- stormforge get clusters - Display one or more clusters
- stormforge get data-sources - Lists all available data sources
- stormforge get recommendations - Display one or more recommendations
- stormforge get test-cases - Returns a test case or its javascript definition
- stormforge get test-runs - Returns a test run
- stormforge get workloads - Display one or more workloads
stormforge get clusters
Display one or more clusters
Synopsis
Formats information for StormForge clusters.
stormforge get clusters CLUSTER_NAME... [flags]
Options
-o, --output format output format; one of: json|yaml|name|wide|csv|custom-columns|go-template
--no-headers don't print headers
--show-labels when printing, show all labels as the last column
--template go-template template string to use for '-o go-template'
--sort-by column sort using column name; one of: name|optimize_live_version|kubernetes_version|agent_version|applier_version|status|age
--field-selector selector field selector to perform client side filtering with, supports sort-by fields
--chunk-size n fetch large lists in chunks rather then all at once (default 1000)
-l, --selector query selector (label query) to filter on
--state value state values to filter on; any of: Created|Inactive|all
--show-node-labels show node labels
-h, --help help for get clusters
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge get - Display one or more resources
stormforge get data-sources
Lists all available data sources
Synopsis
Lists all available data sources for performance testing.
stormforge get data-sources [flags]
Options
--only filter filter for datasources (structured, raw)
-o, --output format output format; one of: json|yaml|name|wide|csv|custom-columns|go-template
--no-headers don't print headers
--template go-template template string to use for '-o go-template'
-h, --help help for get data-sources
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge get - Display one or more resources
stormforge get recommendations
Display one or more recommendations
Synopsis
Formats information for StormForge recommendations.
stormforge get recommendations [flags]
Options
-o, --output format output format; one of: json|yaml|name|wide|csv|custom-columns|go-template
--no-headers don't print headers
--show-labels when printing, show all labels as the last column
--template go-template template string to use for '-o go-template'
--sort-by column sort using column name; one of: cluster|namespace|type|name|timestamp|status
--field-selector selector field selector to perform client side filtering with, supports sort-by fields
--chunk-size n fetch large lists in chunks rather then all at once (default 1000)
-l, --selector query selector (label query) to filter on
--state value state values to filter on; any of: Requested|Generated|FailedToGenerate|Ready|Applied|FailedToApply|Inactive|all (default [Generated,FailedToGenerate,Ready,Applied,FailedToApply])
--cluster name cluster name to filter on
--resource type workload resource type to filter on
--namespace namespace workload namespace to filter on
--name name workload name to filter on
--patches show the recommendation patches instead
-h, --help help for get recommendations
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge get - Display one or more resources
stormforge get test-cases
Returns a test case or its javascript definition
Synopsis
Prints one or more test cases or their javascript definition.
stormforge get test-cases [test case identifier ...] [flags]
Options
--only filter filter for test cases (all, archived)
--javascript download JavaScript definition for specified test case
-o, --output format output format; one of: json|yaml|name|wide|csv|custom-columns|go-template
--no-headers don't print headers
--template go-template template string to use for '-o go-template'
-h, --help help for get test-cases
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge get - Display one or more resources
stormforge get test-runs
Returns a test run
Synopsis
Prints a list of test runs for a single test case (with –test-case) or all. Alternatively, you can specify a single test run.
To print the test runs for a specific test case, you have to specify that test case with –test-case TESTCASE. TESTCASE can be either the test case name (e.g. “blackfriday-2022”) or its UID reference (e.g. “uid:123456”).
To print a single test run, pass it as an argument. This can be either the path (e.g. “blackfriday-2022/47”) or its UID reference (e.g. “uid:654321”). The path consists of the test case name and a sequential number and may change, if the test case is renamed.
Use the –only filter to only show test runs with specific conditions, e.g. archived or in-progress test runs.
Metrics Export
You can automatically export some basic statistics about your test run by setting the –metrics-output flag or the PUSHGATEAWY_URL environment variable. The destination can be either a filename or a URL. This implies –watch. The basic_statistics will be written or POSTed in the Prometheus text format to the destination.
stormforge get test-runs [--test-case=TESTCASE | TESTRUN] [flags]
Options
--test-case reference test case reference that should be used to launch the test run (name or UID)
--only filter filter test runs to only show 'archived', 'in-progress' or 'all' test runs
--watch watches test run until it reaches a terminal state - prints progress updates
--watch-timeout seconds maximum duration in seconds to wait for the test case to finish
--metrics-output destination destination for metrics export after the test run finishes (implies --watch)
-o, --output format output format; one of: json|yaml|name|wide|csv|custom-columns|go-template
--no-headers don't print headers
--template go-template template string to use for '-o go-template'
-h, --help help for get test-runs
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge get - Display one or more resources
stormforge get workloads
Display one or more workloads
Synopsis
Formats information for StormForge workloads.
stormforge get workloads [flags]
Options
-o, --output format output format; one of: json|yaml|name|wide|csv|custom-columns|go-template
--no-headers don't print headers
--show-labels when printing, show all labels as the last column
--template go-template template string to use for '-o go-template'
--full-fetch force full fetches (e.g. to populate 'UNAVAILABLE' fields)
--show-impact include impact details in output, if available
--impact-total only fetch aggregated impact data
--impact over|under show only over|under-provisioned workloads; one of: over|under
--sort-by column sort using column name; one of: cluster|namespace|type|name|efficiency|impact|status|reason|message|age
--field-selector selector field selector to perform client side filtering with, supports sort-by fields
--chunk-size n fetch large lists in chunks rather then all at once (default 1000)
-l, --selector query selector (label query) to filter on
--state value state values to filter on; any of: Created|Inactive|all
--cluster name cluster name to filter on
--resource type workload resource type to filter on
--namespace namespace workload namespace to filter on
--name name workload name to filter on
-h, --help help for get workloads
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge get - Display one or more resources
stormforge login
Create an authorization
Synopsis
Log into your StormForge account.
stormforge login [SERVER] [flags]
Examples
# Login using your workstation's default web browser.
stormforge login
# If a web browser is not locally available, or if the workstation is
# restricted from listening on port 8085, it may be necessary to perform the
# authorization from another device. Use the "--url" flag to get a URL that
# can entered into a web browser manually.
stormforge login --url
# If you are having problems logging in, try using `stormforge check connect`
# to troubleshoot any connection issues.
Options
--url display the URL instead of opening a browser
--qr display a QR code instead of opening a browser
-h, --help help for login
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge - Release with Confidence
stormforge logout
Revoke an authorization
Synopsis
Log out of your StormForge Account.
stormforge logout [flags]
Options
-h, --help help for logout
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge - Release with Confidence
stormforge patch
Deploy patches to a cluster or source
Synopsis
Patch Kubernetes manifests using StormForge recommendations.
Downloads the selected recommendation as patches and applies them, either to a Kubernetes cluster or to local manifest files.
Using this command is roughly equivalent to first downloading StormForge
patches, then using the patches with kubectl patch
or kustomize build
.
stormforge patch [FILE...] [flags]
Examples
# Download and apply recommendation patches for a single workload. Patches
# will be applied directly to resources on a cluster
stormforge patch --cluster=CLUSTER --namespace=NS \
--resource=RSRC --name=NAME --recommendation=RECOMMENDATION_ID
# Download and apply recommendation patches for a single workload. Patches
# will be applied to a local yaml manifest, the result printed to stdout
stormforge patch --cluster=CLUSTER --namespace=NS \
--resource=RSRC --name=NAME --recommendation=RECOMMENDATION_ID \
/path/to/manifest.yaml
# Download and apply recommendation patches for a single workload. Patches
# will be applied to a local yaml manifest, the result saved in-place
stormforge patch --cluster=CLUSTER --namespace=NS \
--resource=RSRC --name=NAME --recommendation=RECOMMENDATION_ID \
--in-place /path/to/manifest.yaml
Options
-d, --directory dir directory to write patches to (instead of applying them)
--filename-pattern pattern filename pattern to write patches to (default "{Kind}_{Name}.json")
-l, --selector query selector (label query) to filter on
--state value state values to filter on; any of: Generated|Ready|Applied|Inactive
--cluster name cluster name to filter on
--resource type workload resource type to filter on
--namespace namespace workload namespace to filter on
--name name workload name to filter on
--recommendation name workload recommendation name to filter on
--in-place patch file system resource in-place WITHOUT backups
--skip-apply do mark the recommendation as 'Applied' when patching cluster resources
--dry-run mode dry run mode used to apply manifests; one of: none|server|client
--kubeconfig file path to the kubeconfig file to use for CLI requests
--context name the name of the kubeconfig context to use
--cluster-context cluster=context a cluster=context mapping of cluster name to kubeconfig context name to use (default [])
--cluster-kubeconfig cluster=kubeconfig a cluster=kubeconfig mapping of cluster name to kubeconfig file to use (default [])
-o, --output format output format; one of: json|yaml
-h, --help help for patch
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge - Release with Confidence
stormforge ping
Connect to the StormForge server (also see ‘check connect’)
Synopsis
Check basic connectivity to the configured StormForge API server.
stormforge ping [flags]
Options
-h, --help help for ping
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge - Release with Confidence
stormforge version
Show the version information
Synopsis
Display the full version information for the application.
stormforge version [flags]
Options
-h, --help help for version
-o, --output format output format
--template go-template template string to use for '-o go-template'
Options inherited from parent commands
--sfconfig file configuration file to use
SEE ALSO
- stormforge - Release with Confidence