Skip to main content

CLI Commands

The executable is testbench-requirement-service. All commands support --help for detailed usage.

testbench-requirement-service [COMMAND] [OPTIONS]

Commands overview

CommandDescription
initInteractive wizard to create a new configuration file from scratch.
configureCreate or update an existing configuration interactively.
set-credentialsSet the service username and password.
startStart the requirement service.

init

Create a new configuration file with an interactive wizard.

The wizard guides you through:

  1. Service settings (host, port)
  2. Credential setup (username, password)
  3. Reader selection (JSONL, Excel, Jira, or Custom)
  4. Reader-specific configuration
testbench-requirement-service init [--path PATH]

Options

OptionDescriptionDefault
--path PATHPath to the configuration file to createconfig.toml

Examples

# Create config.toml in the current directory
testbench-requirement-service init

# Create config at a custom path
testbench-requirement-service init --path /etc/requirement-service/config.toml

configure

Update an existing configuration file interactively.

testbench-requirement-service configure [OPTIONS]

Options

OptionDescription
--path PATHPath to the app configuration file (default: config.toml)
--fullRun the full configuration wizard (skip the menu)
--service-onlyConfigure service settings only (host, port, debug)
--credentials-onlyConfigure credentials only (username, password)
--reader-onlyConfigure reader settings only
--viewView the current configuration

Examples

# Interactive menu (default)
testbench-requirement-service configure

# Update only service settings
testbench-requirement-service configure --service-only

# View current configuration
testbench-requirement-service configure --view

set-credentials

Set or update the HTTP Basic Auth credentials used to protect API endpoints. This command generates a secure password hash and salt and stores them in your configuration file.

testbench-requirement-service set-credentials [OPTIONS]

Options

OptionDescription
--path PATHPath to the app configuration file (default: config.toml)
--username TEXTUsername (prompts interactively if not provided)
--password TEXTPassword (prompts interactively if not provided)

Examples

# Interactive (prompts for credentials)
testbench-requirement-service set-credentials

# Non-interactive
testbench-requirement-service set-credentials --username admin --password mypassword

start

Start the TestBench Requirement Service.

testbench-requirement-service start [OPTIONS]

Options

OptionDescriptionDefault
--config PATHPath to the app configuration fileconfig.toml
--reader-class TEXTReader class name or module path (overrides config)from config
--reader-config PATHPath to reader configuration file (overrides config)from config
--host HOSTHost to bind to127.0.0.1
--port PORTPort to listen on8020
--devRun in development mode (debug + auto reload)off
--ssl-cert PATHPath to SSL certificate file for HTTPS
--ssl-key PATHPath to SSL private key file for HTTPS
--ssl-ca-cert PATHPath to CA certificate file for client verification (mTLS)

Command-line arguments take precedence over configuration file settings.

Built-in reader class names

When using --reader-class, you can specify:

  • JsonlRequirementReader — for JSONL files
  • ExcelRequirementReader — for Excel/CSV files
  • JiraRequirementReader — for Jira API

Or provide a custom reader (e.g. custom_reader.py or custom_reader.CustomClass).

Examples

# Start with defaults
testbench-requirement-service start

# Development mode
testbench-requirement-service start --dev

# Override host and port
testbench-requirement-service start --host 0.0.0.0 --port 9000

# Use a different reader
testbench-requirement-service start --reader-class JiraRequirementReader --reader-config jira_config.toml

# Use a custom reader class
testbench-requirement-service start --reader-class custom_reader.CustomRequirementReader

# Start with HTTPS
testbench-requirement-service start --ssl-cert certs/server.crt --ssl-key certs/server.key

# Start with mutual TLS (mTLS)
testbench-requirement-service start --ssl-cert certs/server.crt --ssl-key certs/server.key --ssl-ca-cert certs/ca.crt

Getting help

# General help
testbench-requirement-service --help

# Help for a specific command
testbench-requirement-service start --help
testbench-requirement-service configure --help