diff --git a/cmd/calcbiz/main.go b/cmd/calcbiz/main.go index 3e177484..aeaf1a91 100644 --- a/cmd/calcbiz/main.go +++ b/cmd/calcbiz/main.go @@ -9,6 +9,7 @@ import ( "os" "time" + bearer "github.com/Bearer/bearer-go" "github.com/go-chi/chi" "github.com/go-chi/chi/middleware" "github.com/gobuffalo/packr" @@ -32,6 +33,7 @@ import ( "go.uber.org/zap/zapcore" "google.golang.org/grpc" "google.golang.org/grpc/reflection" + "moul.io/srand" "ultre.me/calcbiz/pkg/calcapi" "ultre.me/calcbiz/pkg/views" ) @@ -42,15 +44,19 @@ import ( const VERSION = "2.1.0" func main() { - rand.Seed(time.Now().UnixNano()) + rand.Seed(srand.Fast()) app := cli.NewApp() app.Name = "calcbiz" app.Usage = "Camembert au lait crew's web server" app.Version = VERSION - app.Flags = []cli.Flag{} + app.Flags = []cli.Flag{ + cli.StringFlag{Name: "bearer-secretkey", Usage: "optional bearer.sh secret key", EnvVar: "BEARER_SECRETKEY"}, + } app.Before = func(c *cli.Context) error { + bearer.ReplaceGlobals(bearer.Init(c.String("bearer-secretkey"))) + config := zap.NewDevelopmentConfig() config.Level.SetLevel(zap.DebugLevel) config.DisableStacktrace = true diff --git a/go.mod b/go.mod index 8526153d..61b64147 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,7 @@ module ultre.me/calcbiz require ( + github.com/Bearer/bearer-go v1.1.0 github.com/Masterminds/goutils v1.1.0 // indirect github.com/Masterminds/semver v1.5.0 // indirect github.com/Masterminds/sprig v2.22.0+incompatible @@ -56,6 +57,7 @@ require ( google.golang.org/genproto v0.0.0-20191206224255-0243a4be9c8f google.golang.org/grpc v1.25.1 moul.io/godev v1.3.0 + moul.io/srand v1.4.0 moul.io/zapgorm v0.0.0-20190706070406-8138918b527b ultre.me/kryptos v0.0.0-20181023194748-240fe1a16033 ultre.me/recettator v0.4.1-0.20190210231503-241df3a046a3 diff --git a/go.sum b/go.sum index 1c628dcc..89d30d5c 100644 --- a/go.sum +++ b/go.sum @@ -9,6 +9,8 @@ dmitri.shuralyov.com/html/belt v0.0.0-20180602232347-f7d459c86be0/go.mod h1:JLBr dmitri.shuralyov.com/service/change v0.0.0-20181023043359-a85b471d5412/go.mod h1:a1inKt/atXimZ4Mv927x+r7UpyzRUf4emIoiiSC2TN4= dmitri.shuralyov.com/state v0.0.0-20180228185332-28bcc343414c/go.mod h1:0PRwlb0D6DFvNNtx+9ybjezNCa8XF0xaYcETyp6rHWU= git.apache.org/thrift.git v0.0.0-20180902110319-2566ecd5d999/go.mod h1:fPE2ZNJGynbRyZ4dJvy6G277gSllfV2HJqblrnkyeyg= +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/Masterminds/goutils v1.1.0 h1:zukEsf/1JZwCMgHiK3GZftabmxiCw4apj3a28RPBiVg= @@ -112,8 +114,6 @@ github.com/googollee/go-engine.io v1.4.1 h1:m3WlZAug1SODuWT++UX2nbzk9IUCn9T1SnmH github.com/googollee/go-engine.io v1.4.1/go.mod h1:26oFqHsnuWIzNOM0T08x21eQOydBosKOCgK3tyhzPPI= github.com/googollee/go-engine.io v1.4.2 h1:q0FNdZ2g5atRyO0j+P8rHvQf/JjjKHrCUCr2Dmnufmc= github.com/googollee/go-engine.io v1.4.2/go.mod h1:26oFqHsnuWIzNOM0T08x21eQOydBosKOCgK3tyhzPPI= -github.com/googollee/go-socket.io v1.4.2 h1:yxoY4jyPp91ksh0IDBOLrphRXg6EXG+QUdveqg1RGSc= -github.com/googollee/go-socket.io v1.4.2/go.mod h1:yjlQxKcAZXZjpGwQVW/y1sgyL1ou+DdCpkswURDCRrU= github.com/googollee/go-socket.io v1.4.3-0.20191204093753-683f8725b6d0 h1:7yrvhLv25w1vtVKrcg8CZAn4Pnkb6pzCAqnZ5y9O4q8= github.com/googollee/go-socket.io v1.4.3-0.20191204093753-683f8725b6d0/go.mod h1:yjlQxKcAZXZjpGwQVW/y1sgyL1ou+DdCpkswURDCRrU= github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= @@ -476,6 +476,8 @@ honnef.co/go/tools v0.0.1-2019.2.3 h1:3JgtbtFHMiCmsznwGVTUWbgGov+pVqnlf1dEJTNAXe honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= moul.io/godev v1.3.0 h1:+GGk+scZhZ4citKb/lLubV/QJsu7OvB5UZhSYNQRCx4= moul.io/godev v1.3.0/go.mod h1:xsV3hXF1E9vy2T/1b1CLjSImJ1/nQeTfqTDhJHhJCWg= +moul.io/srand v1.4.0 h1:r5ZMiWDN0ni0lTV7KzJR/jx0K7GivJYW5WaXmufgeik= +moul.io/srand v1.4.0/go.mod h1:P2uaZB+GFstFNo8sEj6/U8FRV1n25kD0LLckFpJ+qvc= moul.io/zapgorm v0.0.0-20190706070406-8138918b527b h1:7A2qUMck+Ikop+5+Ar6wyweFOHTwXEgHbNayY2mEB6Q= moul.io/zapgorm v0.0.0-20190706070406-8138918b527b/go.mod h1:JDE3xz5BQ1ccnAijE5+T8Qin6T256Bw2Cpdi+qMfWgw= sourcegraph.com/sourcegraph/go-diff v0.5.0/go.mod h1:kuch7UrkMzY0X+p9CRK03kfuPQ2zzQcaEFbx8wA8rck=