mirror of
https://github.com/datarhei/core.git
synced 2025-10-11 19:00:13 +08:00
Retrieve current process from leader, clone metadata, introduce new state 'deploying'
This commit is contained in:
@@ -2,6 +2,7 @@ package store
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"maps"
|
||||
"time"
|
||||
|
||||
"github.com/datarhei/core/v16/restream/app"
|
||||
@@ -219,36 +220,32 @@ func (s *store) ProcessList() []Process {
|
||||
return processes
|
||||
}
|
||||
|
||||
func (s *store) ProcessGet(id app.ProcessID) (Process, error) {
|
||||
func (s *store) ProcessGet(id app.ProcessID) (Process, string, error) {
|
||||
s.lock.RLock()
|
||||
defer s.lock.RUnlock()
|
||||
|
||||
process, ok := s.data.Process[id.String()]
|
||||
if !ok {
|
||||
return Process{}, fmt.Errorf("not found%w", ErrNotFound)
|
||||
return Process{}, "", fmt.Errorf("not found%w", ErrNotFound)
|
||||
}
|
||||
|
||||
nodeid := s.data.ProcessNodeMap[id.String()]
|
||||
|
||||
return Process{
|
||||
CreatedAt: process.CreatedAt,
|
||||
UpdatedAt: process.UpdatedAt,
|
||||
Config: process.Config.Clone(),
|
||||
Order: process.Order,
|
||||
Metadata: process.Metadata,
|
||||
Metadata: maps.Clone(process.Metadata),
|
||||
Error: process.Error,
|
||||
}, nil
|
||||
}, nodeid, nil
|
||||
}
|
||||
|
||||
func (s *store) ProcessGetNodeMap() map[string]string {
|
||||
s.lock.RLock()
|
||||
defer s.lock.RUnlock()
|
||||
|
||||
m := map[string]string{}
|
||||
|
||||
for key, value := range s.data.ProcessNodeMap {
|
||||
m[key] = value
|
||||
}
|
||||
|
||||
return m
|
||||
return maps.Clone(s.data.ProcessNodeMap)
|
||||
}
|
||||
|
||||
func (s *store) ProcessGetNode(id app.ProcessID) (string, error) {
|
||||
|
Reference in New Issue
Block a user