Skip to content

Commit

Permalink
Merge pull request #102 from carmark/version
Browse files Browse the repository at this point in the history
add version
  • Loading branch information
carmark committed Jul 14, 2020
2 parents db3093d + 2e5cea1 commit f4d57be
Show file tree
Hide file tree
Showing 3 changed files with 48 additions and 6 deletions.
14 changes: 12 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,15 +1,25 @@
BIN_DIR=_output/cmd/bin
REPO_PATH="github.com/gostor/gotgt"
REL_OSARCH="linux/amd64"
GitSHA=`git rev-parse HEAD`
Date=`date "+%Y-%m-%d %H:%M:%S"`
RELEASE_VERSION=$(shell git describe --tags --always --dirty)
IMG_BUILDER=docker
LD_FLAGS=" \
-X '${REPO_PATH}/pkg/version.GitSHA=${GitSHA}' \
-X '${REPO_PATH}/pkg/version.Built=${Date}' \
-X '${REPO_PATH}/pkg/version.Version=${RELEASE_VERSION}'"

all: init build

deps:
go mod download

build: init
go build -o ${BIN_DIR}/gotgt gotgt.go
go build -ldflags ${LD_FLAGS} -o ${BIN_DIR}/gotgt gotgt.go

build-nocgo: init
CGO_ENABLED=0 go build -o ${BIN_DIR}/gotgt gotgt.go
CGO_ENABLED=0 go build -ldflags ${LD_FLAGS} -o ${BIN_DIR}/gotgt gotgt.go

verify:
hack/verify-gofmt.sh
Expand Down
5 changes: 2 additions & 3 deletions cmd/version.go
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
package cmd

import (
"fmt"
"github.com/spf13/cobra"

"github.com/gostor/gotgt/pkg/api/client"
"github.com/gostor/gotgt/pkg/version"
"github.com/spf13/cobra"
)

func newVersionCommand(cli *client.Client) *cobra.Command {
Expand All @@ -14,7 +13,7 @@ func newVersionCommand(cli *client.Client) *cobra.Command {
Short: "Print the version number of gotgt",
Long: `All software has versions. This is Gotgt 's`,
Run: func(cmd *cobra.Command, args []string) {
fmt.Printf("Gotgt %s -- HEAD\n", version.Version)
version.PrintVersionAndExit()
},
}
return cmd
Expand Down
35 changes: 34 additions & 1 deletion pkg/version/version.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,41 @@ limitations under the License.
// Package version provides the Version information.
package version

import (
"fmt"
"os"
"runtime"
)

const (
Version = "0.1"
// Version shows the version of gotgt.
Version = "Not provided."
// SCSI version string MUST be shorter than 4 characters
SCSIVersion = "0.1"
// GitSHA shoows the git commit id of volcano.
GitSHA = "Not provided."
// Built shows the built time of the binary.
Built = "Not provided."

apiVersion = "v1alpha1"
)

// PrintVersionAndExit prints versions from the array returned by Info() and exit
func PrintVersionAndExit() {
for _, i := range Info(apiVersion) {
fmt.Printf("%v\n", i)
}
os.Exit(0)
}

// Info returns an array of various service versions
func Info(apiVersion string) []string {
return []string{
fmt.Sprintf("API Version: %s", apiVersion),
fmt.Sprintf("Version: %s", Version),
fmt.Sprintf("Git SHA: %s", GitSHA),
fmt.Sprintf("Built At: %s", Built),
fmt.Sprintf("Go Version: %s", runtime.Version()),
fmt.Sprintf("Go OS/Arch: %s/%s", runtime.GOOS, runtime.GOARCH),
}
}

0 comments on commit f4d57be

Please sign in to comment.