34 lines
1.1 KiB
V
34 lines
1.1 KiB
V
module zinit
|
|
|
|
pub struct ServiceConfigResponse {
|
|
pub mut:
|
|
exec string // Command to run
|
|
oneshot bool // Whether the service should be restarted
|
|
after []string // Services that must be running before this one starts
|
|
log string // How to handle service output (null, ring, stdout)
|
|
env map[string]string // Environment variables for the service
|
|
shutdown_timeout int // Maximum time to wait for service to stop during shutdown
|
|
}
|
|
|
|
// Helper function to create a basic service configuration
|
|
pub fn new_service_config(exec string) ServiceConfig {
|
|
return ServiceConfig{
|
|
exec: exec
|
|
oneshot: false
|
|
log: log_stdout
|
|
env: map[string]string{}
|
|
shutdown_timeout: 30
|
|
}
|
|
}
|
|
|
|
// Helper function to create a oneshot service configuration
|
|
pub fn new_oneshot_service_config(exec string) ServiceConfig {
|
|
return ServiceConfig{
|
|
exec: exec
|
|
oneshot: true
|
|
log: log_stdout
|
|
env: map[string]string{}
|
|
shutdown_timeout: 30
|
|
}
|
|
}
|