Skip to main content
ingestion/src/ingest.py is the single entry point for pulling data into Bronze. It takes a season range (or a single season shorthand), an optional round and session filter, and a handful of behaviour flags.

Season selection

A season range is the one required argument, and it comes in two mutually exclusive forms.
int
First season to ingest. Must be paired with --end-season.
int
Last season to ingest, inclusive. Required alongside --start-season; ignored if you used -s/--season instead.
int
Shorthand for a single season equivalent to passing the same year to both --start-season and --end-season.
--start-season/-s are mutually exclusive the parser rejects a command that passes both. If --start-season is after --end-season, or --round is combined with a season range spanning more than one year, ingest.py exits immediately with an error before touching the network.

Scope and behaviour flags

int
default:"None"
Ingest only this round number. Requires a single season combine with -s/--season, not a multi-year range.
'R' | 'Q' | 'both'
default:"both"
Which session types to pull. R for race only, Q for qualifying only, both for everything.
boolean
default:"false"
Skip the telemetry writer entirely. Useful for fast dry-runs or qualifying-only pulls where telemetry isn’t needed.
boolean
default:"false"
Also ingest full-channel car data (Speed, Throttle, Brake, nGear, RPM, DRS) and car-position data, beyond the default telemetry write. Substantially larger and slower see Architecture for what each telemetry writer captures.
boolean
default:"false"
Overwrite existing Parquet files instead of skipping sessions already on disk. Without it, ingest.py is idempotent re-running the same command after a crash resumes from the gap rather than re-pulling everything.
boolean
default:"false"
Print what would be fetched race count and an estimated size without making any network calls or writing anything.
string
default:"INFO"
Logging verbosity: DEBUG, INFO, WARNING, or ERROR.

Canonical invocations

--dry-run estimates size from races × 0.15 GB a single round is reported as ~0.2 GB; a season range multiplies by the round count. It’s a quick sanity check before committing to a multi-hour backfill.
See the generated flag dump for the raw argparse help text, including the exact usage: line.