Skip to content

Commit 52d094a

Browse files
committed
finalize progress bar
1 parent 0680a91 commit 52d094a

File tree

4 files changed

+8
-12
lines changed

4 files changed

+8
-12
lines changed

internal/update/apt/service.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -78,12 +78,12 @@ func (s *Service) UpgradePackages(ctx context.Context, names []string) (<-chan u
7878
return nil, update.ErrOperationAlreadyInProgress
7979
}
8080
eventsCh := make(chan update.Event, 100)
81-
8281
go func() {
8382
defer s.lock.Unlock()
8483
defer close(eventsCh)
8584

8685
eventsCh <- update.NewDataEvent(update.StartEvent, "Upgrade is starting")
86+
eventsCh <- update.NewProgressEvent(0.0)
8787
stream := runUpgradeCommand(ctx, names)
8888
for line, err := range stream {
8989
if err != nil {
@@ -92,14 +92,14 @@ func (s *Service) UpgradePackages(ctx context.Context, names []string) (<-chan u
9292
}
9393
eventsCh <- update.NewDataEvent(update.UpgradeLineEvent, line)
9494
}
95-
9695
eventsCh <- update.NewDataEvent(update.StartEvent, "apt cleaning cache is starting")
9796
eventsCh <- update.NewProgressEvent(80.0)
9897
for line, err := range runAptCleanCommand(ctx) {
9998
if err != nil {
10099
eventsCh <- update.NewErrorEvent(fmt.Errorf("error running apt clean command: %w", err))
101100
return
102101
}
102+
103103
eventsCh <- update.NewDataEvent(update.UpgradeLineEvent, line)
104104
}
105105
eventsCh <- update.NewProgressEvent(85.0)
@@ -130,7 +130,7 @@ func (s *Service) UpgradePackages(ctx context.Context, names []string) (<-chan u
130130
eventsCh <- update.NewDataEvent(update.UpgradeLineEvent, line)
131131
}
132132
eventsCh <- update.NewDataEvent(update.RestartEvent, "Upgrade completed. Restarting ...")
133-
133+
eventsCh <- update.NewProgressEvent(100.0)
134134
err := restartServices(ctx)
135135
if err != nil {
136136
eventsCh <- update.NewErrorEvent(fmt.Errorf("error restarting services after upgrade: %w", err))

internal/update/arduino/arduino.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,8 +135,8 @@ func (a *ArduinoPlatformUpdater) UpgradePackages(ctx context.Context, names []st
135135
defer a.lock.Unlock()
136136
defer close(eventsCh)
137137

138-
const indexWeight float32 = 30.0
139138
const indexBase float32 = 0.0
139+
const indexWeight float32 = 30.0
140140
const upgradeBase float32 = 30.0
141141
const upgradeWeight float32 = 60.0
142142

internal/update/event.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,8 +69,9 @@ func NewDataEvent(t EventType, data string) Event {
6969

7070
func NewProgressEvent(progress float32) Event {
7171
return Event{
72-
Type: ProgressEvent,
73-
data: fmt.Sprintf("%.2f", progress),
72+
Type: ProgressEvent,
73+
data: fmt.Sprintf("%.2f", progress),
74+
Progress: progress,
7475
}
7576
}
7677

internal/update/update.go

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -148,14 +148,11 @@ func (m *Manager) UpgradePackages(ctx context.Context, pkgs []UpgradablePackage)
148148
for e := range arduinoEvents {
149149
if e.Type == ProgressEvent {
150150
globalProgress := (e.Progress / 100.0) * arduinoWeight
151-
fmt.Println("++++++++++++++++++++++++ globalProgress arduinoEvents:", globalProgress)
152-
slog.Debug("Arduino upgrade progress", slog.Float64("globalProgress", float64(globalProgress)))
153151
m.broadcast(NewProgressEvent(globalProgress))
154152
} else {
155153
m.broadcast(e)
156154
}
157155
}
158-
159156
aptEvents, err := m.debUpdateService.UpgradePackages(ctx, debPkgs)
160157
if err != nil {
161158
m.broadcast(NewErrorEvent(fmt.Errorf("failed to upgrade APT packages: %w", err)))
@@ -164,14 +161,12 @@ func (m *Manager) UpgradePackages(ctx context.Context, pkgs []UpgradablePackage)
164161
for e := range aptEvents {
165162
if e.Type == ProgressEvent {
166163
globalProgress := arduinoWeight + (e.Progress/100.0)*aptWeight
167-
fmt.Println("++++++++++++++++++++++++ globalProgress APT:", globalProgress)
168-
slog.Debug("APT upgrade progress", slog.Float64("globalProgress", float64(globalProgress)))
169164
m.broadcast(NewProgressEvent(globalProgress))
170165
} else {
171166
m.broadcast(e)
172167
}
173168
}
174-
169+
m.broadcast(NewProgressEvent(100.0))
175170
m.broadcast(NewDataEvent(DoneEvent, "Update completed"))
176171
}()
177172
return nil

0 commit comments

Comments
 (0)