Merge pull request #1940 from ipfs/feat/version-repo

add option to version command to print repo version
This commit is contained in:
Juan Benet 2015-11-06 04:03:41 -08:00
commit 2c0fa4bc99

View File

@ -7,11 +7,13 @@ import (
cmds "github.com/ipfs/go-ipfs/commands"
config "github.com/ipfs/go-ipfs/repo/config"
fsrepo "github.com/ipfs/go-ipfs/repo/fsrepo"
)
type VersionOutput struct {
Version string
Commit string
Commit string
Repo string
}
var VersionCmd = &cmds.Command{
@ -23,17 +25,28 @@ var VersionCmd = &cmds.Command{
Options: []cmds.Option{
cmds.BoolOption("number", "n", "Only show the version number"),
cmds.BoolOption("commit", "Show the commit hash"),
cmds.BoolOption("repo", "Show repo version"),
},
Run: func(req cmds.Request, res cmds.Response) {
res.SetOutput(&VersionOutput{
Version: config.CurrentVersionNumber,
Commit: config.CurrentCommit,
Commit: config.CurrentCommit,
Repo: fsrepo.RepoVersion,
})
},
Marshalers: cmds.MarshalerMap{
cmds.Text: func(res cmds.Response) (io.Reader, error) {
v := res.Output().(*VersionOutput)
repo, _, err := res.Request().Option("repo").Bool()
if err != nil {
return nil, err
}
if repo {
return strings.NewReader(v.Repo + "\n"), nil
}
commit, found, err := res.Request().Option("commit").Bool()
commitTxt := ""
if err != nil {