Documentation ¶
Index ¶
Constants ¶
const ( JobStateInactive = JobState("inactive") JobStateLoaded = JobState("loaded") JobStateLaunched = JobState("launched") )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Job ¶
type Job struct { Name string State *JobState TargetState JobState TargetMachineID string Unit unit.UnitFile }
Job is a legacy construct encapsulating a scheduled unit in fleet
func NewJob ¶
NewJob creates a new Job based on the given name and Unit. The returned Job has a populated UnitHash and empty JobState. nil is returned on failure.
func (*Job) Conflicts ¶
Conflicts returns a list of Job names that cannot be scheduled to the same machine as this Job.
func (*Job) Peers ¶
Peers returns a list of Job names that must be scheduled to the same machine as this Job.
func (*Job) RequiredTarget ¶
RequiredTarget determines whether or not this Job must be scheduled to a specific machine. If such a requirement exists, the first value returned represents the ID of such a machine, while the second value will be a bool true. If no requirement exists, an empty string along with a bool false will be returned.
func (*Job) RequiredTargetMetadata ¶
RequiredTargetMetadata return all machine-related metadata from a Job's requirements. Valid metadata fields are strings of the form `key=value`, where both key and value are not the empty string.
func (*Job) ValidateRequirements ¶
ValidateRequirements ensures that all options in the [X-Fleet] section of the job's associated unit file are known keys. If not, an error is returned.
type ScheduledUnit ¶
ScheduledUnit represents a Unit known by fleet and encapsulates its current scheduling state. This does not include Global units.
type Unit ¶
Unit represents a Unit that has been submitted to fleet (list-unit-files)
func (*Unit) Conflicts ¶
The following helper functions are to facilitate the transition from Job --> Unit