CLI
The e2engine CLI provides a command-line interface to E2Engine resources and executions.
Use it to validate and manage Environments, Tests, and TestSuites, run tests, inspect execution results, and integrate E2Engine into scripts and development workflows.
e2engine --helpManage and run end-to-end tests
Usage: e2engine [command]
Available Commands: check Wait for an execution to complete and check its result completion Generate the autocompletion script for the specified shell create Create a new resource delete Delete a resource get Display one or more resources help Help about any command run Run a test or test suite against an environment validate Validate a resource specification version Show e2engine tool versionCommand model
Section titled “Command model”Commands follow a consistent structure:
e2engine <action> <entity> <arguments> [flags]For example:
e2engine create environment environment.yamle2engine get test payment-teste2engine run test payment-test paymentThe CLI commands fall into two main groups.
Resource commands operate on E2Engine resources:
Environment ─┐Test ────────┼──▶ validateTestSuite ───┘ create get deleteExecution commands run those resources and inspect the resulting executions:
Environment + Test │ ▼ run │ ▼ TestExecution │ ▼ getand:
Environment + TestSuite │ ▼ run │ ▼TestSuiteExecution │ ▼ getThis follows the same distinction used by the E2Engine model: resources describe what should be tested, while executions record what happened when those resources were run.
Managing resources
Section titled “Managing resources”The CLI provides common operations for Environments, Tests, and TestSuites.
Validate
Section titled “Validate”Use validate to check a resource specification without creating it:
e2engine validate environment environment.yamlValidation checks the resource against the E2Engine model and its validation rules.
This is useful while authoring specifications and before using them in automated workflows.
Create
Section titled “Create”Use create to create a resource from a specification:
e2engine create environment environment.yamlThe entity identifies the resource kind, while the specification contains the resource definition:
kind: Environmentversion: 1.0.0name: paymentspec: # ...The same action follows the same structure for other E2Engine resource kinds.
Use get to retrieve resources and execution results.
For example:
e2engine get environment paymentThe reference can be a resource name or an ID prefix accepted by the corresponding command.
List commands can be used to inspect the available resources of a particular kind.
See the resource-specific CLI pages for the complete command forms and available options.
Delete
Section titled “Delete”Use delete to remove resources:
e2engine delete environment paymentDeletion applies to persistent E2Engine resources such as Environments, Tests, and TestSuites.
Running tests
Section titled “Running tests”Use run to execute a Test or TestSuite against an Environment.
Conceptually:
Environment + Test │ ▼ e2engine run │ ▼ TestExecutionor:
Environment + TestSuite │ ▼ e2engine run │ ▼TestSuiteExecutionA Test run takes the Test reference followed by the Environment reference:
e2engine run test <test-ref> <env-ref>For example:
e2engine run test payment-test paymentThe command resolves the referenced resources, starts the execution, and produces an execution record that can subsequently be inspected.
The details of the execution lifecycle are described in Running a test and Running a test suite.
Output formats
Section titled “Output formats”The CLI supports three output formats:
tablejsonyamlSelect the format with --output or -o:
e2engine get environment payment --output yamle2engine get environment payment -o jsonTable output
Section titled “Table output”table is the default format for commands intended for interactive use.
It provides a compact human-readable representation of resources and executions.
Use --no-headers when table output should omit column headings:
e2engine get environments --no-headersJSON and YAML
Section titled “JSON and YAML”JSON and YAML output expose structured E2Engine data and are better suited to scripts, automation, and cases where the complete resource or execution representation is needed.
e2engine get environment payment -o jsonThis separation allows the CLI to provide concise interactive output without changing the underlying E2Engine models.
Quiet and verbose modes
Section titled “Quiet and verbose modes”Use --quiet or -q to suppress non-error output:
e2engine create environment environment.yaml --quietThis is useful in scripts where command success is determined from the exit status rather than normal CLI output.
Use --verbose or -v when additional execution information is useful:
e2engine run test payment-test payment -vQuiet and verbose modes control CLI presentation and diagnostics; they do not change the E2Engine resource or execution model.
Configuration
Section titled “Configuration”The CLI can be configured independently from the resources it manages.
CLI configuration │ ├── repository ├── execution infrastructure └── runtime settings
Resource specifications │ ├── Environment ├── Test └── TestSuiteThis keeps operational configuration separate from portable test definitions.
See Configuration for the available settings and configuration sources.
Getting command help
Section titled “Getting command help”Every command provides built-in help:
e2engine create --helpFor commands with subcommands, continue through the hierarchy to inspect the available arguments and flags:
e2engine get --helpThe root command lists the global flags:
Flags: -h, --help help for e2engine --no-headers Omit headers in table output -o, --output string Output format (available: table, json, yaml) -q, --quiet Suppress non-error output -v, --verbose Enable verbose outputCLI reference
Section titled “CLI reference”The following pages describe the CLI in more detail:
- Configuration — configure the CLI and its components.
- Environment commands — validate, create, inspect, and delete Environments.
- Test commands — validate, create, inspect, and delete Tests.
- Test suite commands — manage TestSuites.
- Execution commands — run tests and suites and inspect their executions.
For installation instructions, see Installation.

