Remove rendundant instance prefix from status

This commit is contained in:
2025-10-16 19:40:03 +02:00
parent 80ca0cbd4f
commit e0ec00d141
6 changed files with 27 additions and 27 deletions

View File

@@ -22,8 +22,8 @@ type Instance struct {
globalBackendSettings *config.BackendConfig globalBackendSettings *config.BackendConfig
// Status // Status
Status InstanceStatus `json:"status"` Status Status `json:"status"`
onStatusChange func(oldStatus, newStatus InstanceStatus) onStatusChange func(oldStatus, newStatus Status)
// Creation time // Creation time
Created int64 `json:"created,omitempty"` // Unix timestamp when the instance was created Created int64 `json:"created,omitempty"` // Unix timestamp when the instance was created
@@ -49,7 +49,7 @@ type Instance struct {
} }
// NewInstance creates a new instance with the given name, log path, and options // NewInstance creates a new instance with the given name, log path, and options
func NewInstance(name string, globalBackendSettings *config.BackendConfig, globalInstanceSettings *config.InstancesConfig, options *CreateInstanceOptions, onStatusChange func(oldStatus, newStatus InstanceStatus)) *Instance { func NewInstance(name string, globalBackendSettings *config.BackendConfig, globalInstanceSettings *config.InstancesConfig, options *CreateInstanceOptions, onStatusChange func(oldStatus, newStatus Status)) *Instance {
// Validate and copy options // Validate and copy options
options.ValidateAndApplyDefaults(name, globalInstanceSettings) options.ValidateAndApplyDefaults(name, globalInstanceSettings)

View File

@@ -42,7 +42,7 @@ func TestNewInstance(t *testing.T) {
} }
// Mock onStatusChange function // Mock onStatusChange function
mockOnStatusChange := func(oldStatus, newStatus instance.InstanceStatus) {} mockOnStatusChange := func(oldStatus, newStatus instance.Status) {}
inst := instance.NewInstance("test-instance", backendConfig, globalSettings, options, mockOnStatusChange) inst := instance.NewInstance("test-instance", backendConfig, globalSettings, options, mockOnStatusChange)
@@ -113,7 +113,7 @@ func TestNewInstance_WithRestartOptions(t *testing.T) {
} }
// Mock onStatusChange function // Mock onStatusChange function
mockOnStatusChange := func(oldStatus, newStatus instance.InstanceStatus) {} mockOnStatusChange := func(oldStatus, newStatus instance.Status) {}
instance := instance.NewInstance("test-instance", backendConfig, globalSettings, options, mockOnStatusChange) instance := instance.NewInstance("test-instance", backendConfig, globalSettings, options, mockOnStatusChange)
opts := instance.GetOptions() opts := instance.GetOptions()
@@ -162,7 +162,7 @@ func TestSetOptions(t *testing.T) {
} }
// Mock onStatusChange function // Mock onStatusChange function
mockOnStatusChange := func(oldStatus, newStatus instance.InstanceStatus) {} mockOnStatusChange := func(oldStatus, newStatus instance.Status) {}
inst := instance.NewInstance("test-instance", backendConfig, globalSettings, initialOptions, mockOnStatusChange) inst := instance.NewInstance("test-instance", backendConfig, globalSettings, initialOptions, mockOnStatusChange)
@@ -220,7 +220,7 @@ func TestGetProxy(t *testing.T) {
} }
// Mock onStatusChange function // Mock onStatusChange function
mockOnStatusChange := func(oldStatus, newStatus instance.InstanceStatus) {} mockOnStatusChange := func(oldStatus, newStatus instance.Status) {}
inst := instance.NewInstance("test-instance", backendConfig, globalSettings, options, mockOnStatusChange) inst := instance.NewInstance("test-instance", backendConfig, globalSettings, options, mockOnStatusChange)
@@ -275,7 +275,7 @@ func TestMarshalJSON(t *testing.T) {
} }
// Mock onStatusChange function // Mock onStatusChange function
mockOnStatusChange := func(oldStatus, newStatus instance.InstanceStatus) {} mockOnStatusChange := func(oldStatus, newStatus instance.Status) {}
instance := instance.NewInstance("test-instance", backendConfig, globalSettings, options, mockOnStatusChange) instance := instance.NewInstance("test-instance", backendConfig, globalSettings, options, mockOnStatusChange)
@@ -444,7 +444,7 @@ func TestCreateInstanceOptionsValidation(t *testing.T) {
} }
// Mock onStatusChange function // Mock onStatusChange function
mockOnStatusChange := func(oldStatus, newStatus instance.InstanceStatus) {} mockOnStatusChange := func(oldStatus, newStatus instance.Status) {}
instance := instance.NewInstance("test", backendConfig, globalSettings, options, mockOnStatusChange) instance := instance.NewInstance("test", backendConfig, globalSettings, options, mockOnStatusChange)
opts := instance.GetOptions() opts := instance.GetOptions()

View File

@@ -6,27 +6,27 @@ import (
) )
// Enum for instance status // Enum for instance status
type InstanceStatus int type Status int
const ( const (
Stopped InstanceStatus = iota Stopped Status = iota
Running Running
Failed Failed
) )
var nameToStatus = map[string]InstanceStatus{ var nameToStatus = map[string]Status{
"stopped": Stopped, "stopped": Stopped,
"running": Running, "running": Running,
"failed": Failed, "failed": Failed,
} }
var statusToName = map[InstanceStatus]string{ var statusToName = map[Status]string{
Stopped: "stopped", Stopped: "stopped",
Running: "running", Running: "running",
Failed: "failed", Failed: "failed",
} }
func (p *Instance) SetStatus(status InstanceStatus) { func (p *Instance) SetStatus(status Status) {
oldStatus := p.Status oldStatus := p.Status
p.Status = status p.Status = status
@@ -35,7 +35,7 @@ func (p *Instance) SetStatus(status InstanceStatus) {
} }
} }
func (p *Instance) GetStatus() InstanceStatus { func (p *Instance) GetStatus() Status {
return p.Status return p.Status
} }
@@ -44,7 +44,7 @@ func (p *Instance) IsRunning() bool {
return p.Status == Running return p.Status == Running
} }
func (s InstanceStatus) MarshalJSON() ([]byte, error) { func (s Status) MarshalJSON() ([]byte, error) {
name, ok := statusToName[s] name, ok := statusToName[s]
if !ok { if !ok {
name = "stopped" // Default to "stopped" for unknown status name = "stopped" // Default to "stopped" for unknown status
@@ -53,7 +53,7 @@ func (s InstanceStatus) MarshalJSON() ([]byte, error) {
} }
// UnmarshalJSON implements json.Unmarshaler // UnmarshalJSON implements json.Unmarshaler
func (s *InstanceStatus) UnmarshalJSON(data []byte) error { func (s *Status) UnmarshalJSON(data []byte) error {
var str string var str string
if err := json.Unmarshal(data, &str); err != nil { if err := json.Unmarshal(data, &str); err != nil {
return err return err

View File

@@ -54,7 +54,7 @@ func TestUpdateLastRequestTime(t *testing.T) {
} }
// Mock onStatusChange function // Mock onStatusChange function
mockOnStatusChange := func(oldStatus, newStatus instance.InstanceStatus) {} mockOnStatusChange := func(oldStatus, newStatus instance.Status) {}
inst := instance.NewInstance("test-instance", backendConfig, globalSettings, options, mockOnStatusChange) inst := instance.NewInstance("test-instance", backendConfig, globalSettings, options, mockOnStatusChange)
@@ -86,7 +86,7 @@ func TestShouldTimeout_NotRunning(t *testing.T) {
} }
// Mock onStatusChange function // Mock onStatusChange function
mockOnStatusChange := func(oldStatus, newStatus instance.InstanceStatus) {} mockOnStatusChange := func(oldStatus, newStatus instance.Status) {}
inst := instance.NewInstance("test-instance", backendConfig, globalSettings, options, mockOnStatusChange) inst := instance.NewInstance("test-instance", backendConfig, globalSettings, options, mockOnStatusChange)
@@ -122,7 +122,7 @@ func TestShouldTimeout_NoTimeoutConfigured(t *testing.T) {
for _, tt := range tests { for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) { t.Run(tt.name, func(t *testing.T) {
// Mock onStatusChange function // Mock onStatusChange function
mockOnStatusChange := func(oldStatus, newStatus instance.InstanceStatus) {} mockOnStatusChange := func(oldStatus, newStatus instance.Status) {}
options := &instance.CreateInstanceOptions{ options := &instance.CreateInstanceOptions{
IdleTimeout: tt.idleTimeout, IdleTimeout: tt.idleTimeout,
@@ -167,7 +167,7 @@ func TestShouldTimeout_WithinTimeLimit(t *testing.T) {
} }
// Mock onStatusChange function // Mock onStatusChange function
mockOnStatusChange := func(oldStatus, newStatus instance.InstanceStatus) {} mockOnStatusChange := func(oldStatus, newStatus instance.Status) {}
inst := instance.NewInstance("test-instance", backendConfig, globalSettings, options, mockOnStatusChange) inst := instance.NewInstance("test-instance", backendConfig, globalSettings, options, mockOnStatusChange)
inst.SetStatus(instance.Running) inst.SetStatus(instance.Running)
@@ -205,7 +205,7 @@ func TestShouldTimeout_ExceedsTimeLimit(t *testing.T) {
} }
// Mock onStatusChange function // Mock onStatusChange function
mockOnStatusChange := func(oldStatus, newStatus instance.InstanceStatus) {} mockOnStatusChange := func(oldStatus, newStatus instance.Status) {}
inst := instance.NewInstance("test-instance", backendConfig, globalSettings, options, mockOnStatusChange) inst := instance.NewInstance("test-instance", backendConfig, globalSettings, options, mockOnStatusChange)
inst.SetStatus(instance.Running) inst.SetStatus(instance.Running)
@@ -261,7 +261,7 @@ func TestTimeoutConfiguration_Validation(t *testing.T) {
} }
// Mock onStatusChange function // Mock onStatusChange function
mockOnStatusChange := func(oldStatus, newStatus instance.InstanceStatus) {} mockOnStatusChange := func(oldStatus, newStatus instance.Status) {}
inst := instance.NewInstance("test-instance", backendConfig, globalSettings, options, mockOnStatusChange) inst := instance.NewInstance("test-instance", backendConfig, globalSettings, options, mockOnStatusChange)
opts := inst.GetOptions() opts := inst.GetOptions()

View File

@@ -276,10 +276,10 @@ func (im *instanceManager) loadInstance(name, path string) error {
// Check if this is a remote instance // Check if this is a remote instance
isRemote := options != nil && len(options.Nodes) > 0 isRemote := options != nil && len(options.Nodes) > 0
var statusCallback func(oldStatus, newStatus instance.InstanceStatus) var statusCallback func(oldStatus, newStatus instance.Status)
if !isRemote { if !isRemote {
// Only set status callback for local instances // Only set status callback for local instances
statusCallback = func(oldStatus, newStatus instance.InstanceStatus) { statusCallback = func(oldStatus, newStatus instance.Status) {
im.onStatusChange(persistedInstance.Name, oldStatus, newStatus) im.onStatusChange(persistedInstance.Name, oldStatus, newStatus)
} }
} }
@@ -361,7 +361,7 @@ func (im *instanceManager) autoStartInstances() {
} }
} }
func (im *instanceManager) onStatusChange(name string, oldStatus, newStatus instance.InstanceStatus) { func (im *instanceManager) onStatusChange(name string, oldStatus, newStatus instance.Status) {
im.mu.Lock() im.mu.Lock()
defer im.mu.Unlock() defer im.mu.Unlock()

View File

@@ -148,7 +148,7 @@ func (im *instanceManager) CreateInstance(name string, options *instance.CreateI
return nil, err return nil, err
} }
statusCallback := func(oldStatus, newStatus instance.InstanceStatus) { statusCallback := func(oldStatus, newStatus instance.Status) {
im.onStatusChange(name, oldStatus, newStatus) im.onStatusChange(name, oldStatus, newStatus)
} }