14
Makefile
14
Makefile
@@ -1,4 +1,14 @@
|
|||||||
BIN_DIR=_output/cmd/bin
|
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
|
all: init build
|
||||||
|
|
||||||
@@ -6,10 +16,10 @@ deps:
|
|||||||
go mod download
|
go mod download
|
||||||
|
|
||||||
build: init
|
build: init
|
||||||
go build -o ${BIN_DIR}/gotgt gotgt.go
|
go build -ldflags ${LD_FLAGS} -o ${BIN_DIR}/gotgt gotgt.go
|
||||||
|
|
||||||
build-nocgo: init
|
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:
|
verify:
|
||||||
hack/verify-gofmt.sh
|
hack/verify-gofmt.sh
|
||||||
|
|||||||
@@ -1,11 +1,10 @@
|
|||||||
package cmd
|
package cmd
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"github.com/spf13/cobra"
|
||||||
|
|
||||||
"github.com/gostor/gotgt/pkg/api/client"
|
"github.com/gostor/gotgt/pkg/api/client"
|
||||||
"github.com/gostor/gotgt/pkg/version"
|
"github.com/gostor/gotgt/pkg/version"
|
||||||
"github.com/spf13/cobra"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func newVersionCommand(cli *client.Client) *cobra.Command {
|
func newVersionCommand(cli *client.Client) *cobra.Command {
|
||||||
@@ -14,7 +13,7 @@ func newVersionCommand(cli *client.Client) *cobra.Command {
|
|||||||
Short: "Print the version number of gotgt",
|
Short: "Print the version number of gotgt",
|
||||||
Long: `All software has versions. This is Gotgt 's`,
|
Long: `All software has versions. This is Gotgt 's`,
|
||||||
Run: func(cmd *cobra.Command, args []string) {
|
Run: func(cmd *cobra.Command, args []string) {
|
||||||
fmt.Printf("Gotgt %s -- HEAD\n", version.Version)
|
version.PrintVersionAndExit()
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
return cmd
|
return cmd
|
||||||
|
|||||||
@@ -17,8 +17,41 @@ limitations under the License.
|
|||||||
// Package version provides the Version information.
|
// Package version provides the Version information.
|
||||||
package version
|
package version
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"os"
|
||||||
|
"runtime"
|
||||||
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
Version = "0.1"
|
// Version shows the version of gotgt.
|
||||||
|
Version = "Not provided."
|
||||||
// SCSI version string MUST be shorter than 4 characters
|
// SCSI version string MUST be shorter than 4 characters
|
||||||
SCSIVersion = "0.1"
|
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),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user