platforms - Platform Management
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
Subcommands
platforms list - List Available Platforms
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 simpleplatforms status - Show Platform Status
Display detailed status information for platforms, including library versions and configuration.
Usage:
benchbox platforms status
benchbox platforms status duckdbbenchbox platforms status databricksplatforms enable - Enable a Platform
Enable 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 --forceplatforms disable - Disable a Platform
Disable a platform to prevent its use in benchmarks.
Usage:
benchbox platforms disable sqliteplatforms install - Installation Guide
Get 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-runplatforms check - Check Platform Availability
Check 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
platforms setup - Interactive Setup Wizard
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-interactiveCommon Workflows
First-Time Setup
benchbox platforms list
benchbox platforms status
benchbox platforms install clickhouse
benchbox platforms enable clickhousebenchbox 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.
Cloud Platform Setup
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.
Troubleshooting
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.
Platform Categories
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)
Configuration
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.
Notes
- 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.
Related
- Configuration - Environment variables and platform authentication
- Platform Documentation - Detailed platform-specific guides