pub struct WrkObjDir {
pub tmpfs: Option<PathBuf>,
pub disk: Option<PathBuf>,
pub threshold: Option<u64>,
pub failed_threshold: Option<u64>,
pub always_disk: Vec<String>,
}Expand description
WRKOBJDIR routing configuration.
When both tmpfs and disk are set with a threshold, packages
whose historical disk usage exceeds threshold build in disk
and everything else builds in tmpfs. When only one path is set,
all builds use that path.
Fields§
§tmpfs: Option<PathBuf>Fast (tmpfs) WRKOBJDIR for builds under threshold.
disk: Option<PathBuf>Disk-backed WRKOBJDIR for large builds.
threshold: Option<u64>Size threshold in bytes for routing between tmpfs and disk.
failed_threshold: Option<u64>Size threshold in bytes for routing failed builds. When set,
a previously-failed package whose recorded disk usage is at or
below this value is routed to tmpfs; above it (or with no
history) goes to disk. Should be well below threshold to
account for temporary build artifacts not captured by du.
When None, all failed builds default to disk.
always_disk: Vec<String>Pkgpaths whose builds must always use the disk WRKOBJDIR,
regardless of historical disk usage. Escape hatch for
packages whose true peak disk usage is much larger than the
post-build measurement (e.g. wheel builds that materialize
the install tree twice before deleting one copy). Exact
match against the package’s pkgpath (e.g. sysutils/ansible).
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for WrkObjDir
impl RefUnwindSafe for WrkObjDir
impl Send for WrkObjDir
impl Sync for WrkObjDir
impl Unpin for WrkObjDir
impl UnsafeUnpin for WrkObjDir
impl UnwindSafe for WrkObjDir
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more