Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ErrUnknownRestartCondition = errors.New("invalid restart condition")
ErrUnknownRestartCondition is returned when trying to unmarshal an unknown restart condition
var JournalctlCmd = jctl
JournalctlCmd is called from Logs to run journalctl; exported for testing.
var SystemctlCmd = run
SystemctlCmd is called from the commands to actually call out to systemctl. It's exported so it can be overridden by testing.
Functions ¶
func EscapeUnitNamePath ¶
EscapeUnitNamePath works like systemd-escape --path FIXME: we could use github.com/coreos/go-systemd/unit/escape.go
and EscapePath from it. But thats not in the archive and it won't work with go1.3
func MountUnitPath ¶
MountUnitPath returns the path of a {,auto}mount unit
Types ¶
type Error ¶
type Error struct {
// contains filtered or unexported fields
}
Error is returned if the systemd action failed
type Log ¶
type Log map[string]interface{}
A Log is a single entry in the systemd journal
type RestartCondition ¶
type RestartCondition string
RestartCondition encapsulates the different systemd 'restart' options
const ( RestartNever RestartCondition = "never" RestartOnSuccess RestartCondition = "on-success" RestartOnFailure RestartCondition = "on-failure" RestartOnAbnormal RestartCondition = "on-abnormal" RestartOnAbort RestartCondition = "on-abort" RestartAlways RestartCondition = "always" )
These are the supported restart conditions
func (RestartCondition) String ¶
func (rc RestartCondition) String() string
func (*RestartCondition) UnmarshalYAML ¶
func (rc *RestartCondition) UnmarshalYAML(unmarshal func(interface{}) error) error
UnmarshalYAML so RestartCondition implements yaml's Unmarshaler interface
type ServiceDescription ¶
type ServiceDescription struct { AppName string ServiceName string Version string Description string AppPath string Start string Stop string PostStop string StopTimeout time.Duration Restart RestartCondition Type string AaProfile string IsFramework bool IsNetworked bool BusName string UdevAppName string Socket bool SocketFileName string ListenStream string SocketMode string SocketUser string SocketGroup string ServiceFileName string }
ServiceDescription describes a snappy systemd service
type ServiceStatus ¶
type ServiceStatus struct { ServiceFileName string `json:"service_file_name"` LoadState string `json:"load_state"` ActiveState string `json:"active_state"` SubState string `json:"sub_state"` UnitFileState string `json:"unit_file_state"` }
A ServiceStatus holds structured service status information.
type Systemd ¶
type Systemd interface { DaemonReload() error Enable(service string) error Disable(service string) error Start(service string) error Stop(service string, timeout time.Duration) error Kill(service, signal string) error Restart(service string, timeout time.Duration) error GenServiceFile(desc *ServiceDescription) string GenSocketFile(desc *ServiceDescription) string Status(service string) (string, error) ServiceStatus(service string) (*ServiceStatus, error) Logs(services []string) ([]Log, error) WriteMountUnitFile(name, what, where string) (string, error) }
Systemd exposes a minimal interface to manage systemd via the systemctl command.