Skip to content

Commit 442b3e6

Browse files
committed
refactor(wsl): improve wsl check env code
Signed-off-by: Kevin Cui <bh@bugs.cc>
1 parent e1d6856 commit 442b3e6

File tree

2 files changed

+18
-21
lines changed

2 files changed

+18
-21
lines changed

pkg/cli/init.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ func (c *InitContext) Start() error {
8989
return util.WaitBindPID(ctx, c.Logger, c.BindPID)
9090
})
9191

92-
wsl.Check(&c.InitOpt)
92+
wsl.CheckEnv(&c.InitOpt)
9393

9494
select {
9595
case <-ctx.Done():

pkg/wsl/check.go

Lines changed: 17 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ var (
2424
_isFeatureEnabled bool
2525
)
2626

27-
func Check(opt *types.InitOpt) {
27+
func CheckEnv(opt *types.InitOpt) {
2828
log := opt.Logger
2929

3030
if isEnabled := isFeatureEnabled(log); !isEnabled {
@@ -36,21 +36,14 @@ func Check(opt *types.InitOpt) {
3636

3737
log.Info("WSL2 feature is already enabled")
3838

39-
shouldUpdate, err := shouldUpdateWSL(log)
40-
if err == nil && !shouldUpdate {
41-
log.Info("WSL2 is up to date")
42-
channel.NotifyWSLEnvReady()
39+
if shouldUpdateWSL(log) {
40+
event.NotifyInit(event.NeedUpdateWSL)
41+
opt.CanUpdateWSL = true
4342
return
4443
}
4544

46-
if err != nil {
47-
log.Warnf("Failed to check if WSL2 needs to be updated: %v", err)
48-
} else {
49-
log.Info("WSL2 needs to be updated")
50-
}
51-
52-
event.NotifyInit(event.NeedUpdateWSL)
53-
opt.CanUpdateWSL = true
45+
log.Info("WSL2 is up to date")
46+
channel.NotifyWSLEnvReady()
5447
return
5548
}
5649

@@ -232,31 +225,35 @@ func wslVersion(log *logger.Context) (string, error) {
232225

233226
const minVersion = "2.1.5"
234227

235-
func shouldUpdateWSL(log *logger.Context) (bool, error) {
228+
func shouldUpdateWSL(log *logger.Context) bool {
236229
if isInstalled := isInstalled(log); !isInstalled {
237230
log.Info("WSL2 is not updated, ready to update")
238-
return true, nil
231+
return true
239232
}
240233

241234
v, err := wslVersion(log)
242235
if err != nil {
243-
return false, fmt.Errorf("failed to get WSL2 version: %w", err)
236+
log.Warnf("Failed to get WSL2 version: %v", err)
237+
return true
244238
}
245239

246240
log.Infof("Current WSL2 version: %s", v)
247241
currentVersion, err := version.NewVersion(v)
248242
if err != nil {
249-
return false, fmt.Errorf("failed to parse current WSL2 version: %w", err)
243+
log.Warnf("Failed to parse current WSL2 version: %v", err)
244+
return true
250245
}
251246

252247
minVersion, err := version.NewVersion(minVersion)
253248
if err != nil {
254-
return false, fmt.Errorf("failed to parse min WSL2 version: %w", err)
249+
log.Warnf("Failed to parse min WSL2 version: %v", err)
250+
return true
255251
}
256252

257253
if currentVersion.LessThan(minVersion) {
258-
return true, nil
254+
log.Infof("Current WSL2 version is less than min version: %s < %s", currentVersion, minVersion)
255+
return true
259256
}
260257

261-
return false, nil
258+
return false
262259
}

0 commit comments

Comments
 (0)