TaskGroup

Struct TaskGroup 

Source
pub struct TaskGroup {
Show 15 fields pub constraints: Vec<Constraint>, pub affinities: Vec<Affinity>, pub spreads: Vec<Spread>, pub count: u32, pub meta: Option<HashMap<String, String>>, pub migrate: MigrateStrategy, pub name: String, pub restart_policy: Option<RestartPolicy>, pub reschedule_policy: Option<ReschedulePolicy>, pub scaling: Option<Scaling>, pub ephemeral_disk: EphemeralDisk, pub update: UpdateStrategy, pub tasks: Vec<Task>, pub networks: Vec<NetworkConfig>, pub services: Vec<Service>,
}
Expand description

The task groups defined for a particular job.

Fields§

§constraints: Vec<Constraint>

The placement constraints for this job. See also Constraint

§affinities: Vec<Affinity>

A list to define placement preferences on nodes where a job can be run. See also Affinity

§spreads: Vec<Spread>

A list to define allocation spread across attributes. See also Spread

§count: u32

Specifies the number of the task groups that should be running. Must be non-negative, defaults to one.

§meta: Option<HashMap<String, String>>

A key-value map that annotates the task group with metadata opaque to nomad.

§migrate: MigrateStrategy

Specifies a migration strategy to be applied during node drains. See also MigrateStrategy

§name: String

The name of the task group. Must be specified.

§restart_policy: Option<RestartPolicy>

Specifies the restart policy to be applied to tasks in this group. If omitted, a default policy for batch and non-batch jobs is used based on the job type. See also RestartPolicy

§reschedule_policy: Option<ReschedulePolicy>

Specifies the reschedule policy to be applied to tasks in this group. If omitted, a default policy is used for batch and service jobs. System jobs are not eligible for rescheduling. See also ReschedulePolicy

§scaling: Option<Scaling>

Specifies the autoscaling policy for the task group. This is primarily for supporting external autoscalers. See also Scaling

§ephemeral_disk: EphemeralDisk

Specifies the group’s ephemeral disk requirements. See also EphemeralDisk

§update: UpdateStrategy

Specifies an update strategy to be applied to all task groups within the job. When specified both at the job level and the task group level, the update blocks are merged with the task group’s taking precedence. See also UpdateStrategy

§tasks: Vec<Task>

A list of Task object that are part of the task group. See also Task

§networks: Vec<NetworkConfig>

A list of network objects.

§services: Vec<Service>

A Service object represents a routable and discoverable service on the network. Nomad integrates with Consul for service discovery and it automatically registers when a task is started and de-registers it when the task transitions to the dead state. See also Service Note that this is deprecated and replaced by the services stanza at the task group level.

Trait Implementations§

Source§

impl Clone for TaskGroup

Source§

fn clone(&self) -> TaskGroup

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for TaskGroup

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for TaskGroup

Source§

fn default() -> Self

Return TaskGroup { constraints: Default::default(), affinities: Default::default(), spreads: Default::default(), count: 1, meta: Default::default(), migrate: Default::default(), name: Default::default(), restart_policy: Default::default(), reschedule_policy: Default::default(), scaling: Default::default(), ephemeral_disk: Default::default(), update: Default::default(), tasks: Default::default(), networks: Default::default(), services: Default::default() }

Source§

impl<'de> Deserialize<'de> for TaskGroup

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl PartialEq for TaskGroup

Source§

fn eq(&self, other: &TaskGroup) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for TaskGroup

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl StructuralPartialEq for TaskGroup

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

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