pub struct Project {Show 29 fields
pub name: String,
pub root: PathBuf,
pub target_dir: PathBuf,
pub target_source: Source,
pub default_profile: Option<String>,
pub default_set: Option<String>,
pub vars: Map<String, Value>,
pub run_query_max_rows: u64,
pub format_options: BTreeMap<String, Map<String, Value>>,
pub reports: Vec<Report>,
pub sets: BTreeMap<String, SetDef>,
pub plugins: Vec<PluginRequirement>,
pub plugin_uses: Vec<PluginUse>,
pub plugins_incomplete: bool,
pub schedules: Vec<ScheduleEntry>,
pub timings: BTreeMap<String, Timing>,
pub macros: Vec<PathBuf>,
pub packages: Vec<Package>,
pub mask_secrets: bool,
pub timezone: Option<String>,
pub week_start: WeekStart,
pub week_numbering: WeekNumbering,
pub dispatch: DispatchOrder,
pub sql: BTreeMap<String, PathBuf>,
pub lookups: BTreeMap<String, Lookup>,
pub lookup_inline_max_rows: u64,
pub folders: Vec<Vec<String>>,
pub sources: Vec<PathBuf>,
pub profiles: Profiles,
}Fields§
§name: String§root: PathBuf§target_dir: PathBufThe folder DRE writes its generated files to (compiled SQL, run outputs, schema
snapshots, run_results.json, the manifest): target/ in the root by default.
target_source: SourceWhere the target path was set, for messages.
default_profile: Option<String>§default_set: Option<String>§vars: Map<String, Value>§run_query_max_rows: u64§format_options: BTreeMap<String, Map<String, Value>>format_options:: per format, defaults under every output of that format.
reports: Vec<Report>§sets: BTreeMap<String, SetDef>§plugins: Vec<PluginRequirement>The declared plugin packages.
plugin_uses: Vec<PluginUse>Every plugin the project uses, checked against the declared packages once they’re
installed (crate::plugins::check_uses).
plugins_incomplete: boolSome package’s declarations conflict, so it’s missing from plugins.
schedules: Vec<ScheduleEntry>§timings: BTreeMap<String, Timing>Named timings from timings.yml, which schedules use with timing:.
macros: Vec<PathBuf>Macro files under macros/, relative to the root.
packages: Vec<Package>Macro packages, each called through its name ({{ dre_utils.x() }}).
mask_secrets: boolMask DRE_SECRET_* values in logs and records (default true).
timezone: Option<String>The project’s default timezone: (IANA name); runs default to UTC without one.
week_start: WeekStartweek_start: and week_numbering:, for the calendar functions.
week_numbering: WeekNumbering§dispatch: DispatchOrderdispatch: search orders, by macro namespace.
sql: BTreeMap<String, PathBuf>Every uniquely named .sql file under reports/, by basename: what ref() resolves.
lookups: BTreeMap<String, Lookup>Lookups under lookups/, which ref() also resolves.
lookup_inline_max_rows: u64A lookup with more rows than this is loaded into a temp table rather than inlined.
folders: Vec<Vec<String>>Every folder under reports/, as path segments.
sources: Vec<PathBuf>The project’s own source files, relative to the root with forward slashes, sorted:
every YAML file (not a root profiles.yml) and everything under reports/, macros/
and lookups/.
profiles: Profiles