svc_runtime

package
v0.4.1-beta.12 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 25, 2025 License: MIT Imports: 10 Imported by: 0

Documentation

Overview

Package svc_runtime provides cross-platform abstractions for managing system services (such as systemd on Linux, launchd on macOS, and NSSM on Windows) used to run and control background application processes. It defines core service management interfaces and lifecycle operations, with concrete platform-specific implementations located in the internal/svc_runtime package.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetSvcMgrName

func GetSvcMgrName() string

Types

type LaunchdManager

type LaunchdManager struct{}

func (*LaunchdManager) Install

func (l *LaunchdManager) Install(name, desc, runCmd, workDir string, envVars map[string]string) error

func (*LaunchdManager) Remove

func (l *LaunchdManager) Remove(name string) error

func (*LaunchdManager) Start

func (l *LaunchdManager) Start(name string) error

func (*LaunchdManager) Status

func (l *LaunchdManager) Status(name string) (string, error)

func (*LaunchdManager) Stop

func (l *LaunchdManager) Stop(name string) error

type NSSMManager

type NSSMManager struct{}

func (*NSSMManager) Install

func (n *NSSMManager) Install(name, desc, runCmd, workDir string, envVars map[string]string) error

func (*NSSMManager) Remove

func (n *NSSMManager) Remove(name string) error

func (*NSSMManager) Start

func (n *NSSMManager) Start(name string) error

func (*NSSMManager) Status

func (n *NSSMManager) Status(name string) (string, error)

func (*NSSMManager) Stop

func (n *NSSMManager) Stop(name string) error

type ServiceManager

type ServiceManager interface {
	Status(name string) (string, error)
	Install(name, desc, runCmd, workDir string, envVars map[string]string) error
	Start(name string) error
	Stop(name string) error
	Remove(name string) error
}

ServiceManager defines the interface for service management across platforms

func SvcRuntime

func SvcRuntime() (ServiceManager, error)

type SystemdManager

type SystemdManager struct{}

func (*SystemdManager) Install

func (s *SystemdManager) Install(name, desc, runCmd, workDir string, envVars map[string]string) error

func (*SystemdManager) Remove

func (s *SystemdManager) Remove(name string) error

func (*SystemdManager) Start

func (s *SystemdManager) Start(name string) error

func (*SystemdManager) Status

func (s *SystemdManager) Status(name string) (string, error)

func (*SystemdManager) Stop

func (s *SystemdManager) Stop(name string) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL