@@ -10,6 +10,7 @@ import (
10
10
"strings"
11
11
"sync"
12
12
13
+ "github.com/lima-vm/lima/pkg/networks"
13
14
"github.com/lima-vm/lima/pkg/store"
14
15
"github.com/lima-vm/lima/pkg/store/dirnames"
15
16
"github.com/sirupsen/logrus"
@@ -19,7 +20,7 @@ func Reconcile(ctx context.Context, newInst string) error {
19
20
if runtime .GOOS != "darwin" {
20
21
return nil
21
22
}
22
- config , err := Config ()
23
+ config , err := networks . Config ()
23
24
if err != nil {
24
25
return err
25
26
}
@@ -53,9 +54,9 @@ func Reconcile(ctx context.Context, newInst string) error {
53
54
for name := range config .Networks {
54
55
var err error
55
56
if activeNetwork [name ] {
56
- err = config . startNetwork (ctx , name )
57
+ err = startNetwork (& config , ctx , name )
57
58
} else {
58
- err = config . stopNetwork (name )
59
+ err = stopNetwork (& config , name )
59
60
}
60
61
if err != nil {
61
62
return err
@@ -79,7 +80,7 @@ func sudo(user, group, command string) error {
79
80
return nil
80
81
}
81
82
82
- func (config * NetworksConfig ) startDaemon ( ctx context.Context , name , daemon string ) error {
83
+ func startDaemon (config * networks. NetworksConfig , ctx context.Context , name , daemon string ) error {
83
84
err := sudo ("root" , "wheel" , config .MkdirCmd ())
84
85
if err != nil {
85
86
return err
@@ -126,39 +127,39 @@ var sudoersCheck struct {
126
127
err error
127
128
}
128
129
129
- func (config * NetworksConfig ) checkSudoers ( ) error {
130
+ func checkSudoers (config * networks. NetworksConfig ) error {
130
131
sudoersCheck .Do (func () {
131
132
if config .Paths .Sudoers != "" {
132
- sudoersCheck .err = CheckSudoers (config .Paths .Sudoers )
133
+ sudoersCheck .err = networks . CheckSudoers (config .Paths .Sudoers )
133
134
}
134
135
})
135
136
return sudoersCheck .err
136
137
}
137
138
138
- func (config * NetworksConfig ) startNetwork ( ctx context.Context , name string ) error {
139
+ func startNetwork (config * networks. NetworksConfig , ctx context.Context , name string ) error {
139
140
logrus .Debugf ("Make sure %q network is running" , name )
140
- for _ , daemon := range []string {Switch , VMNet } {
141
+ for _ , daemon := range []string {networks . Switch , networks . VMNet } {
141
142
pid , _ := store .ReadPIDFile (config .PIDFile (name , daemon ))
142
143
if pid == 0 {
143
144
logrus .Infof ("Starting %s daemon for %q network" , daemon , name )
144
- if err := config . checkSudoers (); err != nil {
145
+ if err := checkSudoers (config ); err != nil {
145
146
return err
146
147
}
147
- if err := config . startDaemon (ctx , name , daemon ); err != nil {
148
+ if err := startDaemon (config , ctx , name , daemon ); err != nil {
148
149
return err
149
150
}
150
151
}
151
152
}
152
153
return nil
153
154
}
154
155
155
- func (config * NetworksConfig ) stopNetwork ( name string ) error {
156
+ func stopNetwork (config * networks. NetworksConfig , name string ) error {
156
157
logrus .Debugf ("Make sure %q network is stopped" , name )
157
- for _ , daemon := range []string {VMNet , Switch } {
158
+ for _ , daemon := range []string {networks . VMNet , networks . Switch } {
158
159
pid , _ := store .ReadPIDFile (config .PIDFile (name , daemon ))
159
160
if pid != 0 {
160
161
logrus .Infof ("Stopping %s daemon for %q network" , daemon , name )
161
- if err := config . checkSudoers (); err != nil {
162
+ if err := checkSudoers (config ); err != nil {
162
163
return err
163
164
}
164
165
err := sudo (config .DaemonUser (daemon ), config .DaemonGroup (daemon ), config .StopCmd (name , daemon ))
0 commit comments