[][src]Struct cli::types::Task

pub struct Task {
    pub clear: Option<bool>,
    pub description: Option<String>,
    pub category: Option<String>,
    pub disabled: Option<bool>,
    pub private: Option<bool>,
    pub extend: Option<String>,
    pub workspace: Option<bool>,
    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: 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>,
}

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

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)

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: 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)

Methods

impl Task[src]

pub fn new() -> Task[src]

Creates and returns a new instance.

pub fn apply(self: &mut Task, modify_config: &ModifyConfig)[src]

Apply modifications

pub fn extend(self: &mut Task, task: &Task)[src]

Copies values from the task into self.

Arguments

  • task - The task to copy from

pub fn should_ignore_errors(self: &Task) -> bool[src]

Returns true if the task ignore_errors attribute is defined and true

pub fn get_normalized_task(self: &mut Task) -> Task[src]

Returns a new task based on the override information and current platform.

pub fn get_alias(self: &Task) -> Option<String>[src]

Returns the alias value based on the current platform and task definition.

pub fn is_valid(self: &Task) -> bool[src]

Returns true if the task is valid

Trait Implementations

impl Clone for Task[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Debug for Task[src]

impl Serialize for Task[src]

impl<'de> Deserialize<'de> for Task[src]

Auto Trait Implementations

impl Send for Task

impl Sync for Task

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: Deserialize<'de>, 
[src]