From 0bcfc493c6a235170016e2807791d96e043fe236 Mon Sep 17 00:00:00 2001 From: Jakub Sztandera Date: Wed, 1 Jun 2016 22:43:49 +0200 Subject: [PATCH 1/3] Add version --all option License: MIT Signed-off-by: Jakub Sztandera --- core/commands/version.go | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/core/commands/version.go b/core/commands/version.go index 0f9a611eeb0..b53d36da78a 100644 --- a/core/commands/version.go +++ b/core/commands/version.go @@ -3,6 +3,7 @@ package commands import ( "fmt" "io" + "runtime" "strings" cmds "github.com/ipfs/go-ipfs/commands" @@ -14,6 +15,8 @@ type VersionOutput struct { Version string Commit string Repo string + System string + Golang string } var VersionCmd = &cmds.Command{ @@ -26,12 +29,15 @@ var VersionCmd = &cmds.Command{ cmds.BoolOption("number", "n", "Only show the version number.").Default(false), cmds.BoolOption("commit", "Show the commit hash.").Default(false), cmds.BoolOption("repo", "Show repo version.").Default(false), + cmds.BoolOption("all", "Show all version information").Default(false), }, Run: func(req cmds.Request, res cmds.Response) { res.SetOutput(&VersionOutput{ Version: config.CurrentVersionNumber, Commit: config.CurrentCommit, Repo: fsrepo.RepoVersion, + System: runtime.GOARCH + "/" + runtime.GOOS, //TODO: Precise version here + Golang: runtime.Version(), }) }, Marshalers: cmds.MarshalerMap{ @@ -64,6 +70,17 @@ var VersionCmd = &cmds.Command{ return strings.NewReader(fmt.Sprintln(v.Version + commitTxt)), nil } + all, _, err := res.Request().Option("all").Bool() + if err != nil { + return nil, err + } + if all { + out := fmt.Sprintf("go-ipfs version: %s-%s\n"+ + "Repo version: %s\nSystem version: %s\nGolang version: %s\n", + v.Version, v.Commit, v.Repo, v.System, v.Golang) + return strings.NewReader(out), nil + } + return strings.NewReader(fmt.Sprintf("ipfs version %s%s\n", v.Version, commitTxt)), nil }, }, From 01d596bc837f33cba15cea035d217ad4e2d2517b Mon Sep 17 00:00:00 2001 From: Jakub Sztandera Date: Thu, 2 Jun 2016 13:44:41 +0200 Subject: [PATCH 2/3] Add test for version --all License: MIT Signed-off-by: Jakub Sztandera --- test/sharness/t0010-basic-commands.sh | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/test/sharness/t0010-basic-commands.sh b/test/sharness/t0010-basic-commands.sh index 785e5f83140..69cccef6d32 100755 --- a/test/sharness/t0010-basic-commands.sh +++ b/test/sharness/t0010-basic-commands.sh @@ -21,6 +21,14 @@ test_expect_success "ipfs version output looks good" ' test_fsh cat version.txt ' +test_expect_success "ipfs version --all has all required fields" ' + ipfs version --all > version_all.txt && + grep "go-ipfs version" version_all.txt && + grep "Repo version" version_all.txt && + grep "System version" version_all.txt && + grep "Golang version" version_all.txt +' + test_expect_success "ipfs help succeeds" ' ipfs help >help.txt ' From c8c329df145bad5234ce95712448415de793c57b Mon Sep 17 00:00:00 2001 From: Jakub Sztandera Date: Thu, 2 Jun 2016 13:45:55 +0200 Subject: [PATCH 3/3] Move tests around as for #2774 License: MIT Signed-off-by: Jakub Sztandera --- test/sharness/t0500-issues-and-regressions-offline.sh | 2 +- ...essions-online.sh => t0600-issues-and-regressions-online.sh} | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) rename test/sharness/{t0501-issues-and-regressions-online.sh => t0600-issues-and-regressions-online.sh} (80%) diff --git a/test/sharness/t0500-issues-and-regressions-offline.sh b/test/sharness/t0500-issues-and-regressions-offline.sh index 596448d7211..866edba0c01 100755 --- a/test/sharness/t0500-issues-and-regressions-offline.sh +++ b/test/sharness/t0500-issues-and-regressions-offline.sh @@ -1,6 +1,6 @@ #!/bin/sh -test_description="Tests for various fxed issues and regressions." +test_description="Tests for various fixed issues and regressions." . lib/test-lib.sh diff --git a/test/sharness/t0501-issues-and-regressions-online.sh b/test/sharness/t0600-issues-and-regressions-online.sh similarity index 80% rename from test/sharness/t0501-issues-and-regressions-online.sh rename to test/sharness/t0600-issues-and-regressions-online.sh index 1b7471a6fb8..89e42e8567d 100755 --- a/test/sharness/t0501-issues-and-regressions-online.sh +++ b/test/sharness/t0600-issues-and-regressions-online.sh @@ -1,6 +1,6 @@ #!/bin/sh -test_description="Tests for various fxed issues and regressions." +test_description="Tests for various fixed issues and regressions." . lib/test-lib.sh