File tree Expand file tree Collapse file tree 1 file changed +13
-8
lines changed Expand file tree Collapse file tree 1 file changed +13
-8
lines changed Original file line number Diff line number Diff line change @@ -201,19 +201,24 @@ func runFuseManager(ctx context.Context) error {
201
201
202
202
pb .RegisterStargzFuseManagerServiceServer (server , fm )
203
203
204
- sigCh := make (chan os.Signal , 1 )
205
- signal .Notify (sigCh , unix .SIGINT , unix .SIGTERM )
204
+ errCh := make (chan error , 1 )
206
205
go func () {
207
- sig := <- sigCh
208
- log .G (ctx ).Infof ("Got %v" , sig )
209
- fm .server .Stop ()
210
- os .Remove (address )
206
+ if err := server .Serve (l ); err != nil {
207
+ errCh <- fmt .Errorf ("error on serving via socket %q: %w" , address , err )
208
+ }
211
209
}()
212
210
213
- if err = server .Serve (l ); err != nil {
214
- return fmt .Errorf ("failed to serve fuse manager: %w" , err )
211
+ var s os.Signal
212
+ sigCh := make (chan os.Signal , 1 )
213
+ signal .Notify (sigCh , unix .SIGINT , unix .SIGTERM )
214
+ select {
215
+ case s = <- sigCh :
216
+ log .G (ctx ).Infof ("Got %v" , s )
217
+ case err := <- errCh :
218
+ log .G (ctx ).WithError (err ).Warnf ("error during running the server" )
215
219
}
216
220
221
+ server .Stop ()
217
222
if err = fm .Close (ctx ); err != nil {
218
223
return fmt .Errorf ("failed to close fuse manager: %w" , err )
219
224
}
You can’t perform that action at this time.
0 commit comments