Added bbolt command line version flag to get runtime information.

Signed-off-by: Ishan Tyagi <ishantyagi25@gmail.com>
pull/552/head
Ishan Tyagi 2023-08-11 18:16:31 +05:30 committed by ishan16696
parent b7798fd9c1
commit a05608cf29
5 changed files with 48 additions and 0 deletions

View File

@ -40,6 +40,7 @@
The commands are:
version prints the current version of bbolt
bench run synthetic benchmark against bbolt
buckets print a list of buckets
check verifies integrity of bbolt database
@ -60,6 +61,21 @@
## Analyse bbolt database with bbolt command line
### version
- `version` print the current version information of bbolt command-line.
- usage:
`bbolt version`
Example:
```bash
$bbolt version
bbolt version: 1.3.7
Go Version: go1.20.7
Go OS/Arch: darwin/arm64
```
### info
- `info` print the basic information about the given Bbolt database.

View File

@ -17,6 +17,7 @@ func NewRootCommand() *cobra.Command {
}
rootCmd.AddCommand(
newVersionCobraCommand(),
newSurgeryCobraCommand(),
)

View File

@ -0,0 +1,24 @@
package main
import (
"fmt"
"runtime"
"github.com/spf13/cobra"
"go.etcd.io/bbolt/version"
)
func newVersionCobraCommand() *cobra.Command {
versionCmd := &cobra.Command{
Use: "version",
Short: "print the current version of bbolt",
Long: "print the current version of bbolt",
Run: func(cmd *cobra.Command, args []string) {
fmt.Printf("bbolt Version: %s\n", version.Version)
fmt.Printf("Go Version: %s\n", runtime.Version())
fmt.Printf("Go OS/Arch: %s/%s\n", runtime.GOOS, runtime.GOARCH)
},
}
return versionCmd
}

View File

@ -156,6 +156,7 @@ Usage:
The commands are:
version print the current version of bbolt
bench run synthetic benchmark against bbolt
buckets print a list of buckets
check verifies integrity of bbolt database

6
version/version.go Normal file
View File

@ -0,0 +1,6 @@
package version
var (
// Version shows the last bbolt binary version released.
Version = "1.3.7"
)