master
go 28 lines 590 Bytes
Raw
1 package commands
2
3 import (
4 cmds "github.com/ipfs/go-ipfs-cmds"
5 cmdenv "github.com/ipfs/kubo/core/commands/cmdenv"
6 )
7
8 var daemonShutdownCmd = &cmds.Command{
9 Helptext: cmds.HelpText{
10 Tagline: "Shut down the IPFS daemon.",
11 },
12 Run: func(req *cmds.Request, re cmds.ResponseEmitter, env cmds.Environment) error {
13 nd, err := cmdenv.GetNode(env)
14 if err != nil {
15 return err
16 }
17
18 if !nd.IsDaemon {
19 return cmds.Errorf(cmds.ErrClient, "daemon not running")
20 }
21
22 if err := nd.Close(); err != nil {
23 log.Error("error while shutting down ipfs daemon:", err)
24 }
25
26 return nil
27 },
28 }