From 15ad4921327190a49e982c2249d2693d37fde4b1 Mon Sep 17 00:00:00 2001 From: Franck Cuny Date: Mon, 22 Jan 2024 08:12:11 -0800 Subject: add build information to `flake-info` --- cmd/flakeinfo/main.go | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) (limited to 'cmd') diff --git a/cmd/flakeinfo/main.go b/cmd/flakeinfo/main.go index d41f321..8c1960c 100644 --- a/cmd/flakeinfo/main.go +++ b/cmd/flakeinfo/main.go @@ -7,16 +7,38 @@ import ( "os" "time" + "github.com/fcuny/world/internal/version" "github.com/fcuny/world/pkg/flake/lock" ) +const usage = `Usage: + flake-info [flake.lock] + +Options: + -v, --version Print version information + -h, --help Print this message +` + func main() { - var flakeLockPath string + flag.Usage = func() { fmt.Fprintf(os.Stderr, "%s\n", usage) } + + var ( + flakeLockPath string + versionFlag bool + ) flag.StringVar(&flakeLockPath, "flake-lock", "flake.lock", "path to the flake lock file") + flag.BoolVar(&versionFlag, "version", false, "Print version information") + flag.BoolVar(&versionFlag, "v", false, "Print version information") flag.Parse() + if versionFlag { + information := version.VersionAndBuildInfo() + fmt.Println(information) + return + } + if _, err := os.Stat(flakeLockPath); err != nil { if errors.Is(err, os.ErrNotExist) { fmt.Fprintf(os.Stderr, "%s does not exists\n", flakeLockPath) -- cgit 1.4.1