diff --git a/internal/core/machine.go b/internal/core/machine.go index e88a35795..bbce82a70 100644 --- a/internal/core/machine.go +++ b/internal/core/machine.go @@ -29,15 +29,6 @@ func (m *Machine) Close() (err error) { // ID implements core.Machine func (m *Machine) ID() (id string, err error) { - // Sometimes the machine id does not get set, so set it here. - // TODO: This is maybe a symptom of a different problem - if m.target.Uuid != m.machine.Id { - m.machine.Id = m.target.Uuid - err = m.SaveMachine() - if err != nil { - return "", err - } - } return m.machine.Id, nil } diff --git a/internal/server/singleprocess/state/target.go b/internal/server/singleprocess/state/target.go index 74a0dafdf..d23958d90 100644 --- a/internal/server/singleprocess/state/target.go +++ b/internal/server/singleprocess/state/target.go @@ -194,6 +194,8 @@ func (s *State) targetPut( return erro } if foundTarget != nil { + // Merge found target with provided target + proto.Merge(value, foundTarget) value.ResourceId = foundTarget.ResourceId value.Uuid = foundTarget.Uuid } else {