Documentation ¶
Index ¶
- func DefaultUnitType(name string) string
- func RecognizedUnitType(name string) bool
- type FakeUnitManager
- func (fum *FakeUnitManager) GetUnitState(name string) (us *UnitState, err error)
- func (fum *FakeUnitManager) GetUnitStates(filter pkg.Set) (map[string]*UnitState, error)
- func (fum *FakeUnitManager) Load(name string, u UnitFile) error
- func (fum *FakeUnitManager) MarshalJSON() ([]byte, error)
- func (fum *FakeUnitManager) Start(string)
- func (fum *FakeUnitManager) Stop(string)
- func (fum *FakeUnitManager) Units() ([]string, error)
- func (fum *FakeUnitManager) Unload(name string)
- type Hash
- type UnitFile
- type UnitManager
- type UnitNameInfo
- type UnitState
- type UnitStateGenerator
- type UnitStateHeartbeat
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DefaultUnitType ¶ added in v0.3.1
DefaultUnitType appends the default unit type to a given unit name, ignoring any file extensions that already exist.
func RecognizedUnitType ¶ added in v0.3.1
RecognizedUnitType determines whether or not the given unit name represents a recognized unit type.
Types ¶
type FakeUnitManager ¶ added in v0.4.0
func NewFakeUnitManager ¶ added in v0.4.0
func NewFakeUnitManager() *FakeUnitManager
func (*FakeUnitManager) GetUnitState ¶ added in v0.4.0
func (fum *FakeUnitManager) GetUnitState(name string) (us *UnitState, err error)
func (*FakeUnitManager) GetUnitStates ¶ added in v0.6.0
func (*FakeUnitManager) Load ¶ added in v0.4.0
func (fum *FakeUnitManager) Load(name string, u UnitFile) error
func (*FakeUnitManager) MarshalJSON ¶ added in v0.4.0
func (fum *FakeUnitManager) MarshalJSON() ([]byte, error)
func (*FakeUnitManager) Start ¶ added in v0.4.0
func (fum *FakeUnitManager) Start(string)
func (*FakeUnitManager) Stop ¶ added in v0.4.0
func (fum *FakeUnitManager) Stop(string)
func (*FakeUnitManager) Units ¶ added in v0.4.0
func (fum *FakeUnitManager) Units() ([]string, error)
func (*FakeUnitManager) Unload ¶ added in v0.4.0
func (fum *FakeUnitManager) Unload(name string)
type UnitFile ¶ added in v0.7.0
type UnitFile struct { // Contents represents the parsed unit file. // This field must be considered readonly. Contents map[string]map[string][]string Options []*unit.UnitOption }
A UnitFile represents a systemd configuration which encodes information about any of the unit types that fleet supports (as defined in SupportedUnitTypes()). UnitFiles are linked to Units by the Hash of their contents. Similar to systemd, a UnitFile configuration has no inherent name, but is rather named through the reference to it; in the case of systemd, the reference is the filename, and in the case of fleet, the reference is the name of the Unit that references this UnitFile.
func NewUnitFile ¶ added in v0.7.0
func NewUnitFromLegacyContents ¶ added in v0.3.0
NewUnitFromLegacyContents creates a Unit object from an obsolete unit file datastructure. This should only be used to remain backwards-compatible where necessary.
func NewUnitFromOptions ¶ added in v0.7.0
func NewUnitFromOptions(opts []*unit.UnitOption) *UnitFile
func (*UnitFile) Description ¶ added in v0.7.0
Description returns the first Description option found in the [Unit] section. If the option is not defined, an empty string is returned.
type UnitManager ¶ added in v0.4.0
type UnitNameInfo ¶ added in v0.5.0
type UnitNameInfo struct { FullName string // Original complete name of the unit (e.g. foo.socket, foo@bar.service) Name string // Name of the unit without suffix (e.g. foo, foo@bar) Prefix string // Prefix of the template unit (e.g. foo) // If the unit represents an instance or a template, the following values are set Template string // Name of the canonical template unit (e.g. foo@.service) Instance string // Instance name (e.g. bar) }
UnitNameInfo exposes certain interesting items about a Unit based on its name. For example, a unit with the name "foo@.service" constitutes a template unit, and a unit named "foo@1.service" would represent an instance unit of that template.
func NewUnitNameInfo ¶ added in v0.5.0
func NewUnitNameInfo(un string) *UnitNameInfo
NewUnitNameInfo generates a UnitNameInfo from the given name. If the given string is not a correct unit name, nil is returned.
func (UnitNameInfo) IsInstance ¶ added in v0.5.0
func (nu UnitNameInfo) IsInstance() bool
IsInstance returns a boolean indicating whether the UnitNameInfo appears to be an Instance of a Template unit
type UnitState ¶ added in v0.3.0
type UnitState struct { LoadState string ActiveState string SubState string MachineID string UnitHash string UnitName string }
UnitState encodes the current state of a unit loaded into a fleet agent
func NewUnitState ¶ added in v0.3.0
type UnitStateGenerator ¶ added in v0.6.0
type UnitStateGenerator struct {
// contains filtered or unexported fields
}
func NewUnitStateGenerator ¶ added in v0.6.0
func NewUnitStateGenerator(mgr UnitManager) *UnitStateGenerator
func (*UnitStateGenerator) Generate ¶ added in v0.6.0
func (g *UnitStateGenerator) Generate() (<-chan *UnitStateHeartbeat, error)
Generate returns and fills a channel with *UnitStateHeartbeat objects. Objects will only be returned for units to which this generator is currently subscribed.
func (*UnitStateGenerator) Run ¶ added in v0.6.0
func (g *UnitStateGenerator) Run(receiver chan<- *UnitStateHeartbeat, stop chan bool)
Run periodically calls Generate and sends received *UnitStateHeartbeat objects to the provided channel.
func (*UnitStateGenerator) Subscribe ¶ added in v0.6.0
func (g *UnitStateGenerator) Subscribe(name string)
Subscribe adds a unit to the internal state filter
func (*UnitStateGenerator) Unsubscribe ¶ added in v0.6.0
func (g *UnitStateGenerator) Unsubscribe(name string)
Unsubscribe removes a unit from the internal state filter