(cli-platforms)=
Manage database platform adapters, check availability, and configure platforms for use with BenchBox.
The platforms command group provides tools for:
- Discovering available database platforms
- Enabling/disabling platforms for benchmark execution
- Checking platform dependencies and installation status
- Getting installation guidance for missing dependencies
- Interactive platform setup wizard
List all database platforms with their current status and availability.
Options:
--all: Show all platforms including those with missing dependencies--format [table|simple]: Output format (default: table)
Usage Examples:
benchbox platforms list
benchbox platforms list --all
benchbox platforms list --format simpleDisplay detailed status information for platforms, including library versions and configuration.
Usage:
benchbox platforms status
benchbox platforms status duckdb
benchbox platforms status databricksEnable a platform for use in benchmark execution.
Options:
--force: Enable platform even if dependencies are missing (not recommended)
Usage Examples:
benchbox platforms enable clickhouse
benchbox platforms enable snowflake --forceDisable a platform to prevent its use in benchmarks.
Usage:
benchbox platforms disable sqliteGet step-by-step installation guidance for platform dependencies.
Options:
--dry-run: Show installation commands without explaining
Usage Examples:
benchbox platforms install clickhouse
benchbox platforms install databricks --dry-runCheck platform availability and configuration status. Useful for CI/CD validation.
Options:
--enabled-only: Check only enabled platforms
Usage Examples:
benchbox platforms check
benchbox platforms check --enabled-only
benchbox platforms check duckdb databricks bigqueryExit Codes:
0: All checked platforms are ready1: One or more platforms have issues
Launch an interactive wizard to configure platforms. Guides you through enabling, disabling, and installing platforms.
Options:
--interactive/--non-interactive: Setup mode (default: interactive)
Usage Examples:
benchbox platforms setup
benchbox platforms setup --non-interactivebenchbox platforms list
benchbox platforms status
benchbox platforms install clickhouse
benchbox platforms enable clickhouse
benchbox platforms enable duckdb
benchbox platforms check --enabled-onlyIn order, these commands:
- Check what is available.
- Check detailed status.
- Install missing dependencies.
- Enable the platforms you want to use.
- Verify that everything is ready.
benchbox platforms enable databricks
benchbox setup --platform databricks
benchbox platforms status databricksIn order, these commands enable the cloud platform, configure credentials (a separate command) and verify availability.
benchbox platforms status <platform>
benchbox platforms install <platform>
benchbox platforms enable <platform>
benchbox platforms check <platform>In order, these commands check whether the platform dependencies are installed, get installation guidance, re-enable the platform after installing dependencies and verify that the platform works.
BenchBox supports platforms in several categories:
- Analytical: DuckDB, ClickHouse (columnar OLAP engines)
- Cloud: Databricks, Snowflake, BigQuery, Redshift (cloud warehouses)
- Embedded: SQLite (lightweight row-store database)
Platform configuration is stored in ~/.benchbox/platforms.yaml:
enabled:
- duckdb
- clickhouse
- databricksYou can manually edit this file, but it's recommended to use the platforms enable/disable commands.
- Credentials vs. Availability: The
platformscommands manage platform availability (dependencies installed). For cloud platforms, you also need to configure credentials usingbenchbox setup --platform <name>. - Dependency Management: Platform dependencies are installed via
piporuv. Theplatforms installcommand provides guidance but doesn't execute installations automatically. - Enabled by Default: Most platforms are enabled by default if their dependencies are detected. You only need to explicitly enable platforms if you've previously disabled them.
- Configuration - Environment variables and platform authentication
- Platform Documentation - Detailed platform-specific guides