Skip to content

Commit f7f7a90

Browse files
committed
fix(update): always try to restart the app-cli daemon
1 parent eb79b70 commit f7f7a90

File tree

1 file changed

+11
-7
lines changed

1 file changed

+11
-7
lines changed

internal/update/apt/service.go

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,17 @@ func (s *Service) UpgradePackages(ctx context.Context, names []string) (<-chan u
8383
defer s.lock.Unlock()
8484
defer close(eventsCh)
8585

86+
// We try anyway to restart the service.
87+
defer func() {
88+
eventsCh <- update.NewDataEvent(update.RestartEvent, "Upgrade completed. Restarting ...")
89+
90+
err := restartServices(ctx)
91+
if err != nil {
92+
eventsCh <- update.NewErrorEvent(fmt.Errorf("error restarting services after upgrade: %w", err))
93+
return
94+
}
95+
}()
96+
8697
eventsCh <- update.NewDataEvent(update.StartEvent, "Upgrade is starting")
8798
stream := runUpgradeCommand(ctx, names)
8899
for line, err := range stream {
@@ -127,13 +138,6 @@ func (s *Service) UpgradePackages(ctx context.Context, names []string) (<-chan u
127138
}
128139
eventsCh <- update.NewDataEvent(update.UpgradeLineEvent, line)
129140
}
130-
eventsCh <- update.NewDataEvent(update.RestartEvent, "Upgrade completed. Restarting ...")
131-
132-
err := restartServices(ctx)
133-
if err != nil {
134-
eventsCh <- update.NewErrorEvent(fmt.Errorf("error restarting services after upgrade: %w", err))
135-
return
136-
}
137141
}()
138142

139143
return eventsCh, nil

0 commit comments

Comments
 (0)