diff --git a/cmd/depviz/main.go b/cmd/depviz/main.go index 2a1ed74d6..53ff5696f 100644 --- a/cmd/depviz/main.go +++ b/cmd/depviz/main.go @@ -11,6 +11,7 @@ import ( "os/signal" "time" + bearer "github.com/Bearer/bearer-go" "github.com/cayleygraph/cayley" "github.com/cayleygraph/cayley/graph" _ "github.com/cayleygraph/cayley/graph/kv/bolt" @@ -32,10 +33,11 @@ var ( logger *zap.Logger schemaConfig *schema.Config - globalFlags = flag.NewFlagSet("depviz", flag.ExitOnError) - globalStorePath = globalFlags.String("store-path", os.Getenv("HOME")+"/.depviz", "store path") - globalDebug = globalFlags.Bool("debug", false, "debug mode") - globalWithStacktrace = globalFlags.Bool("with-stacktrace", false, "show stacktrace on warns, errors and worse") + globalFlags = flag.NewFlagSet("depviz", flag.ExitOnError) + globalStorePath = globalFlags.String("store-path", os.Getenv("HOME")+"/.depviz", "store path") + globalDebug = globalFlags.Bool("debug", false, "debug mode") + globalWithStacktrace = globalFlags.Bool("with-stacktrace", false, "show stacktrace on warns, errors and worse") + globalBearerSecretKey = globalFlags.String("bearer-secretkey", "", "optional bearer.sh secret key") airtableFlags = flag.NewFlagSet("airtable", flag.ExitOnError) airtableToken = airtableFlags.String("token", "", "airtable token") @@ -105,6 +107,7 @@ func main() { }, { Name: "store", ShortHelp: "manage the data store", + Options: []ff.Option{ff.WithEnvVarNoPrefix()}, Subcommands: []*ffcli.Command{ {Name: "dump-quads", Exec: execStoreDumpQuads}, {Name: "dump-json", Exec: execStoreDumpJSON}, @@ -142,6 +145,10 @@ func main() { func globalPreRun() error { rand.Seed(srand.Secure()) + if *globalBearerSecretKey != "" { + bearer.ReplaceGlobals(bearer.Init(*globalBearerSecretKey)) + } + config := zap.NewDevelopmentConfig() config.EncoderConfig.EncodeLevel = zapcore.CapitalColorLevelEncoder if *globalDebug { diff --git a/go.mod b/go.mod index 970cc7b28..6f596612f 100644 --- a/go.mod +++ b/go.mod @@ -5,6 +5,7 @@ go 1.13 replace github.com/brianloveswords/airtable => github.com/moul/brianloveswords-airtable v0.0.0-20191014120838-8b07ee6d33b2 require ( + github.com/Bearer/bearer-go v1.1.0 github.com/cayleygraph/cayley v0.7.7 github.com/cayleygraph/quad v1.2.1 github.com/go-chi/chi v4.0.3+incompatible diff --git a/go.sum b/go.sum index b32aa1ecf..bd96163d4 100644 --- a/go.sum +++ b/go.sum @@ -3,6 +3,8 @@ cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMT cloud.google.com/go v0.37.4/go.mod h1:NHPJ89PdicEuT9hdPXMROBD91xc5uRDxsMtSB16k7hw= github.com/AndreasBriese/bbloom v0.0.0-20190306092124-e2d15f34fcf9/go.mod h1:bOvUY6CB00SOBii9/FifXqc0awNKxLFCL/+pkDPuyl8= github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8= +github.com/Bearer/bearer-go v1.1.0 h1:Rlz1zj3Hf+6obdfAplqBi1jYAIYZDXbDgjAXjoYE4TE= +github.com/Bearer/bearer-go v1.1.0/go.mod h1:rtEWryqHRa+Xxd40+ytYqn7LOP35oFMQ5dCFvkreIGI= github.com/BurntSushi/toml v0.3.1 h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= github.com/Microsoft/go-winio v0.4.12/go.mod h1:VhR8bwka0BXejwEJY73c50VrPtXAaKcyvVC4A4RozmA= @@ -383,6 +385,7 @@ go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee h1:0mgffUl7nfd+FpvXMVz4IDEa go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee/go.mod h1:vJERXedbb3MVM5f9Ejo0C68/HhF8uaILCdgjnY+goOA= go.uber.org/zap v1.10.0 h1:ORx85nbTijNz8ljznvCMR1ZBIPKFn3jQrag10X2AsuM= go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= +go.uber.org/zap v1.13.0/go.mod h1:zwrFLgMcdUuIBviXEYEH1YKNaOBnKXsx2IPda5bBwHM= go.uber.org/zap v1.14.0 h1:/pduUoebOeeJzTDFuoMgC6nRkiasr1sBCIEorly7m4o= go.uber.org/zap v1.14.0/go.mod h1:zwrFLgMcdUuIBviXEYEH1YKNaOBnKXsx2IPda5bBwHM= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=