Skip to content

Commit 6745549

Browse files
committed
Add version information
1 parent efd8b54 commit 6745549

File tree

5 files changed

+67
-3
lines changed

5 files changed

+67
-3
lines changed

.travis.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,14 @@ install:
1010

1111
script:
1212
- make test
13-
- make build
13+
- make all
1414

1515
deploy:
1616
provider: releases
1717
api_key:
1818
secure: kgl9dHs7SeJeenkOPIoZboFvO4iIxKyzY4dUndmQxkeN6NvTIE8mfV4TyMxk0tFW6m1nsljEhmAgLaiHfLBXCkkkEWwASfeyWZ7yhoB6S+btKoyuB/gJ1wYPShVXT2ybO89Vw85rZ7htbLlVPt0ZkIfagGaR08YonPc0sC76nx3QiRwgd3WyYUEVe1Yc/iw0i8J962Bkg7Xq5XWcNvPhZyzfqAuDrbI1DWo/NFCZ8I18DNtcFyKrymKm/D6cc5dxtcla4qTTtYVstjHqeWUlUxKVHgQ1sJoI6oCgmG8qwEBD7txWM65afPseBeg/SX1S3BI98sBUiDV4SplYVNwdgb/EW/M7EHVRzHGOgtuXPuHw/1qpj8Vz1XnYccblV9aKb2igPWsM9TsnajnRuTn0Rx46pdr40NTnRTdI8M7mlfYgwhZ3P/8EgvrvozKAEMVhBUb5yLlsJvQSpDuWH51Ey+uhiI9bqKLLy/hqjImBeNHYImRgwTBBnt/ELCg4tl8qNClVE/f3tbf09jLLpfKXkjjtkX9BFslQfEqAxVk0tTBPscDxX2d2iASjyt4Ks3IE9JVHbb0w8QDHRpootmU9nKjDKy8zq5DpfDFOPEdk+9T8XB4wVhLIHREr6Lbryj+YClEashB+tBbr0rizqx9uR3UzuXz7wBCpJghLyc7Q9gM=
19-
file: "./bin/lanes"
19+
file_glob: true
20+
file: ./bin/*
2021
skip_cleanup: true
2122
overwrite: true
2223
on:

Makefile

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,21 @@
1+
REPO ?= github.com/codekoala/go-aws-lanes
2+
TAG ?= dev
3+
BUILD_DATE := $(shell date +%FT%T%z)
4+
5+
all: linux osx checksums
6+
7+
linux:
8+
GOOS=linux GOARCH=amd64 $(MAKE) build
9+
10+
osx:
11+
GOOS=darwin GOARCH=amd64 $(MAKE) build
12+
113
build: bin
2-
go build -race -ldflags '-s' -o ./bin/lanes ./cmd/lanes
14+
$(eval SUFFIX=_$(GOOS)_$(GOARCH))
15+
go build -ldflags "-s -X $(REPO)/version.Tag=$(TAG) -X $(REPO)/version.BuildDate=$(BUILD_DATE)" -o ./bin/lanes$(SUFFIX) ./cmd/lanes
16+
17+
checksums:
18+
cd ./bin/; sha256sum lanes* > SHA256SUMS
319

420
compress:
521
@upx ./bin/lanes

cmd/root.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ func init() {
3333
RootCmd.AddCommand(shCmd)
3434
RootCmd.AddCommand(sshCmd)
3535
RootCmd.AddCommand(switchCmd)
36+
RootCmd.AddCommand(versionCmd)
3637

3738
shCmd.Flags().BoolP("confirm", "c", false, "Bypass manual confirmation step")
3839
filePushCmd.Flags().BoolP("confirm", "c", false, "Bypass manual confirmation step")

cmd/version.go

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
package cmd
2+
3+
import (
4+
"runtime"
5+
6+
"github.com/spf13/cobra"
7+
8+
"github.com/codekoala/go-aws-lanes/version"
9+
)
10+
11+
var versionCmd = &cobra.Command{
12+
Use: "version",
13+
Short: "Display Lanes version",
14+
15+
Run: func(cmd *cobra.Command, args []string) {
16+
cmd.Println("lanes", version.String())
17+
cmd.Println("Build date:", version.BuildDate)
18+
cmd.Println("Go:", runtime.Version())
19+
},
20+
}

version/version.go

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
package version
2+
3+
import (
4+
"fmt"
5+
"runtime"
6+
)
7+
8+
var (
9+
Version = "v0.1.0"
10+
Tag = "dev"
11+
BuildDate string
12+
)
13+
14+
func String() string {
15+
return fmt.Sprintf("%s-%s", Version, Tag)
16+
}
17+
18+
func Full() string {
19+
return fmt.Sprintf("%s; built: %s; %s", String(), BuildDate, runtime.Version())
20+
}
21+
22+
func init() {
23+
if BuildDate == "" {
24+
BuildDate = "unknown"
25+
}
26+
}

0 commit comments

Comments
 (0)