Merge pull request #59 from safing/fix/version-info

Fix version flag and display
This commit is contained in:
Patrick Pacher 2020-05-28 13:07:09 +02:00 committed by GitHub
commit c7706857e8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 19 additions and 3 deletions

View file

@ -3,12 +3,13 @@ package base
import (
"errors"
"flag"
"github.com/safing/portbase/modules/subsystems"
"fmt"
"github.com/safing/portbase/api"
"github.com/safing/portbase/dataroot"
"github.com/safing/portbase/info"
"github.com/safing/portbase/modules"
"github.com/safing/portbase/modules/subsystems"
"github.com/safing/portbase/notifications"
)
@ -18,16 +19,31 @@ var (
dataDir string
databaseDir string
showVersion bool
)
func init() {
flag.StringVar(&dataDir, "data", "", "set data directory")
flag.StringVar(&databaseDir, "db", "", "alias to --data (deprecated)")
flag.BoolVar(&showVersion, "version", false, "show version and exit")
modules.SetGlobalPrepFn(globalPrep)
}
func globalPrep() error {
// check if meta info is ok
err := info.CheckVersion()
if err != nil {
return errors.New("compile error: please compile using the provided build script")
}
// print version
if showVersion {
fmt.Println(info.FullVersion())
return modules.ErrCleanExit
}
// check data root
if dataroot.Root() == nil {
// initialize data dir

View file

@ -71,7 +71,7 @@ func init() {
func main() {
// set meta info
info.Set("Portmaster Control", "0.3.3", "AGPLv3", true)
info.Set("Portmaster Control", "0.3.3", "AGPLv3", false)
// for debugging
// log.Start()