pub struct Config {
pub http: HttpConfig,
pub workflow: WorkflowConfig,
pub task: TaskConfig,
pub backend: Option<String>,
pub backends: IndexMap<String, BackendConfig>,
pub storage: StorageConfig,
pub suppress_env_specific_output: bool,
pub experimental_features_enabled: bool,
pub failure_mode: FailureMode,
}Expand description
Represents WDL evaluation configuration.
By default, serialization of Config will redact the values of secrets.
Use the Config::unredact method before serialization to prevent the
secrets from being redacted.
Fields§
§http: HttpConfigHTTP configuration.
workflow: WorkflowConfigWorkflow evaluation configuration.
task: TaskConfigTask evaluation configuration.
backend: Option<String>The name of the backend to use.
If not specified and backends has multiple entries, it will use a name
of default.
backends: IndexMap<String, BackendConfig>Task execution backends configuration.
If the collection is empty and backend is not specified, the engine
default backend is used.
If the collection has exactly one entry and backend is not specified,
the singular entry will be used.
storage: StorageConfigStorage configuration.
suppress_env_specific_output: bool(Experimental) Avoid environment-specific output; default is false.
If this option is true, selected error messages and log output will
avoid emitting environment-specific output such as absolute paths
and system resource counts.
This is largely meant to support “golden testing” where a test’s success depends on matching an expected set of outputs exactly. Cues that help users overcome errors, such as the path to a temporary directory or the number of CPUs available to the system, confound this style of testing. This flag is a best-effort experimental attempt to reduce the impact of these differences in order to allow a wider range of golden tests to be written.
experimental_features_enabled: bool(Experimental) Whether experimental features are enabled; default is
false.
Experimental features are provided to users with heavy caveats about their stability and rough edges. Use at your own risk, but feedback is quite welcome.
failure_mode: FailureModeThe failure mode for workflow or task evaluation.
A value of FailureMode::Slow will result in evaluation waiting for
executing tasks to complete upon error or interruption.
A value of FailureMode::Fast will immediately attempt to cancel
executing tasks upon error or interruption.
Implementations§
Source§impl Config
impl Config
Sourcepub fn redact(&mut self)
pub fn redact(&mut self)
Redacts the secrets contained in the configuration.
By default, secrets are redacted for serialization.
Sourcepub fn unredact(&mut self)
pub fn unredact(&mut self)
Unredacts the secrets contained in the configuration.
Calling this method will expose secrets for serialization.
Sourcepub fn backend(&self) -> Result<Cow<'_, BackendConfig>>
pub fn backend(&self) -> Result<Cow<'_, BackendConfig>>
Gets the backend configuration.
Returns an error if the configuration specifies a named backend that isn’t present in the configuration.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Config
impl<'de> Deserialize<'de> for Config
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for Config
impl RefUnwindSafe for Config
impl Send for Config
impl Sync for Config
impl Unpin for Config
impl UnsafeUnpin for Config
impl UnwindSafe for Config
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