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.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
argparse help text, including the exact usage: line.