pub struct Task {Show 36 fields
pub clear: Option<bool>,
pub description: Option<String>,
pub category: Option<String>,
pub disabled: Option<bool>,
pub private: Option<bool>,
pub deprecated: Option<DeprecationInfo>,
pub extend: Option<String>,
pub workspace: Option<bool>,
pub plugin: Option<String>,
pub watch: Option<TaskWatchOptions>,
pub condition: Option<TaskCondition>,
pub condition_script: Option<Vec<String>>,
pub ignore_errors: Option<bool>,
pub force: Option<bool>,
pub env_files: Option<Vec<EnvFile>>,
pub env: Option<IndexMap<String, EnvValue>>,
pub cwd: Option<String>,
pub alias: Option<String>,
pub linux_alias: Option<String>,
pub windows_alias: Option<String>,
pub mac_alias: Option<String>,
pub install_crate: Option<InstallCrate>,
pub install_crate_args: Option<Vec<String>>,
pub install_script: Option<ScriptValue>,
pub command: Option<String>,
pub args: Option<Vec<String>>,
pub script: Option<ScriptValue>,
pub script_runner: Option<String>,
pub script_runner_args: Option<Vec<String>>,
pub script_extension: Option<String>,
pub run_task: Option<RunTaskInfo>,
pub dependencies: Option<Vec<DependencyIdentifier>>,
pub toolchain: Option<ToolchainSpecifier>,
pub linux: Option<PlatformOverrideTask>,
pub windows: Option<PlatformOverrideTask>,
pub mac: Option<PlatformOverrideTask>,
}
Expand description
Holds a single task configuration such as command and dependencies list
Fields
clear: Option<bool>
if true, it should ignore all data in base task
description: Option<String>
Task description
category: Option<String>
Category name used to document the task
disabled: Option<bool>
if true, the command/script of this task will not be invoked, dependencies however will be
private: Option<bool>
if true, the task is hidden from the list of available tasks and also cannot be invoked directly from cli
deprecated: Option<DeprecationInfo>
if not false, this task is defined as deprecated
extend: Option<String>
Extend any task based on the defined name
workspace: Option<bool>
set to false to notify cargo-make that this is not a workspace and should not call task for every member (same as –no-workspace CLI flag)
plugin: Option<String>
Optional plugin used to execute the task
watch: Option<TaskWatchOptions>
set to true to watch for file changes and invoke the task operation
condition: Option<TaskCondition>
if provided all condition values must be met in order for the task to be invoked (will not stop dependencies)
condition_script: Option<Vec<String>>
if script exit code is not 0, the command/script of this task will not be invoked, dependencies however will be
ignore_errors: Option<bool>
if true, any error while executing the task will be printed but will not break the build
force: Option<bool>
DEPRECATED, replaced with ignore_errors
env_files: Option<Vec<EnvFile>>
The env files to setup before running the task commands
env: Option<IndexMap<String, EnvValue>>
The env vars to setup before running the task commands
cwd: Option<String>
The working directory for the task to execute its command/script
alias: Option<String>
if defined, task points to another task and all other properties are ignored
linux_alias: Option<String>
acts like alias if runtime OS is Linux (takes precedence over alias)
windows_alias: Option<String>
acts like alias if runtime OS is Windows (takes precedence over alias)
mac_alias: Option<String>
acts like alias if runtime OS is Mac (takes precedence over alias)
install_crate: Option<InstallCrate>
if defined, the provided crate will be installed (if needed) before running the task
install_crate_args: Option<Vec<String>>
additional cargo install arguments
install_script: Option<ScriptValue>
if defined, the provided script will be executed before running the task
command: Option<String>
The command to execute
args: Option<Vec<String>>
The command args
script: Option<ScriptValue>
If command is not defined, and script is defined, the provided script will be executed
script_runner: Option<String>
The script runner (defaults to cmd in windows and sh for other platforms)
script_runner_args: Option<Vec<String>>
The script runner arguments before the script file path
script_extension: Option<String>
The script file extension
run_task: Option<RunTaskInfo>
The task name to execute
dependencies: Option<Vec<DependencyIdentifier>>
A list of tasks to execute before this task
toolchain: Option<ToolchainSpecifier>
The rust toolchain used to invoke the command or install the needed crates/components
linux: Option<PlatformOverrideTask>
override task if runtime OS is Linux (takes precedence over alias)
windows: Option<PlatformOverrideTask>
override task if runtime OS is Windows (takes precedence over alias)
mac: Option<PlatformOverrideTask>
override task if runtime OS is Mac (takes precedence over alias)
Implementations
sourceimpl Task
impl Task
sourcepub fn apply(self: &mut Task, modify_config: &ModifyConfig)
pub fn apply(self: &mut Task, modify_config: &ModifyConfig)
Apply modifications
sourcepub fn should_ignore_errors(self: &Task) -> bool
pub fn should_ignore_errors(self: &Task) -> bool
Returns true if the task ignore_errors attribute is defined and true
sourcepub fn get_normalized_task(self: &mut Task) -> Task
pub fn get_normalized_task(self: &mut Task) -> Task
Returns a new task based on the override information and current platform.
sourcepub fn get_alias(self: &Task) -> Option<String>
pub fn get_alias(self: &Task) -> Option<String>
Returns the alias value based on the current platform and task definition.
sourcepub fn get_actions_count(self: &Task) -> u8
pub fn get_actions_count(self: &Task) -> u8
Returns the amount of actions defined on the task
sourcepub fn is_actionable(self: &Task) -> bool
pub fn is_actionable(self: &Task) -> bool
Returns true if the task has any actions on its own or if it modifies the environment in any way.
Trait Implementations
sourceimpl<'de> Deserialize<'de> for Task
impl<'de> Deserialize<'de> for Task
sourcefn 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>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations
impl RefUnwindSafe for Task
impl Send for Task
impl Sync for Task
impl Unpin for Task
impl UnwindSafe for Task
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more