pub struct Task {Show 30 fields
pub clear: Option<bool>,
pub description: Option<String>,
pub category: Option<String>,
pub disabled: Option<bool>,
pub private: Option<bool>,
pub workspace: Option<bool>,
pub watch: Option<bool>,
pub condition: Option<TaskCondition>,
pub condition_script: Option<Vec<String>>,
pub force: Option<bool>,
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<Vec<String>>,
pub command: Option<String>,
pub args: Option<Vec<String>>,
pub script: Option<Vec<String>>,
pub script_runner: Option<String>,
pub script_extension: Option<String>,
pub run_task: Option<RunTaskInfo>,
pub dependencies: Option<Vec<String>>,
pub toolchain: Option<String>,
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
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)
watch: Option<bool>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
force: Option<bool>if true, any error while executing the task will be printed but will not break the build
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<Vec<String>>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<Vec<String>>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_extension: Option<String>The script file extension
run_task: Option<RunTaskInfo>The task name to execute
dependencies: Option<Vec<String>>A list of tasks to execute before this task
toolchain: Option<String>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§
source§impl Task
impl Task
sourcepub fn is_force(self: &Task) -> bool
pub fn is_force(self: &Task) -> bool
Returns true if the task force 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.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Task
impl<'de> Deserialize<'de> for Task
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 Task
impl RefUnwindSafe for Task
impl Send for Task
impl Sync for Task
impl Unpin for Task
impl UnwindSafe for Task
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§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)