提交 285a2764 作者: Steven Allen

wait for daemon to completely stop, even on error

License: MIT
Signed-off-by: 's avatarSteven Allen <steven@stebalien.com>
上级 a44f0d25
...@@ -24,6 +24,7 @@ import ( ...@@ -24,6 +24,7 @@ import (
fsrepo "github.com/ipfs/go-ipfs/repo/fsrepo" fsrepo "github.com/ipfs/go-ipfs/repo/fsrepo"
migrate "github.com/ipfs/go-ipfs/repo/fsrepo/migrations" migrate "github.com/ipfs/go-ipfs/repo/fsrepo/migrations"
"github.com/hashicorp/go-multierror"
"github.com/ipfs/go-ipfs-cmdkit" "github.com/ipfs/go-ipfs-cmdkit"
cmds "github.com/ipfs/go-ipfs-cmds" cmds "github.com/ipfs/go-ipfs-cmds"
mprome "github.com/ipfs/go-metrics-prometheus" mprome "github.com/ipfs/go-metrics-prometheus"
...@@ -421,13 +422,14 @@ func daemonFunc(req *cmds.Request, re cmds.ResponseEmitter, env cmds.Environment ...@@ -421,13 +422,14 @@ func daemonFunc(req *cmds.Request, re cmds.ResponseEmitter, env cmds.Environment
// collect long-running errors and block for shutdown // collect long-running errors and block for shutdown
// TODO(cryptix): our fuse currently doesnt follow this pattern for graceful shutdown // TODO(cryptix): our fuse currently doesnt follow this pattern for graceful shutdown
var errs error
for err := range merge(apiErrc, gwErrc, gcErrc) { for err := range merge(apiErrc, gwErrc, gcErrc) {
if err != nil { if err != nil {
return err errs = multierror.Append(errs, err)
} }
} }
return nil return errs
} }
// serveHTTPApi collects options, creates listener, prints status message and starts serving requests // serveHTTPApi collects options, creates listener, prints status message and starts serving requests
......
...@@ -12,6 +12,7 @@ require ( ...@@ -12,6 +12,7 @@ require (
github.com/fatih/color v1.7.0 // indirect github.com/fatih/color v1.7.0 // indirect
github.com/fsnotify/fsnotify v1.4.7 github.com/fsnotify/fsnotify v1.4.7
github.com/gogo/protobuf v1.2.1 github.com/gogo/protobuf v1.2.1
github.com/hashicorp/go-multierror v1.0.0
github.com/hashicorp/golang-lru v0.5.1 github.com/hashicorp/golang-lru v0.5.1
github.com/hsanjuan/go-libp2p-http v0.0.2 github.com/hsanjuan/go-libp2p-http v0.0.2
github.com/ipfs/dir-index-html v1.0.3 github.com/ipfs/dir-index-html v1.0.3
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论