this repo has no description
1package main 2 3import ( 4 "encoding/json" 5 "os" 6 7 oauth_helpers "github.com/haileyok/atproto-oauth-golang/helpers" 8 "github.com/urfave/cli/v2" 9) 10 11func main() { 12 app := &cli.App{ 13 Name: "Atproto Oauth Golang Helper", 14 Commands: []*cli.Command{ 15 runGenerateJwks, 16 }, 17 } 18 19 app.RunAndExitOnError() 20} 21 22var runGenerateJwks = &cli.Command{ 23 Name: "generate-jwks", 24 Flags: []cli.Flag{ 25 &cli.StringFlag{ 26 Name: "prefix", 27 Required: false, 28 }, 29 }, 30 Action: func(cmd *cli.Context) error { 31 var prefix *string 32 if cmd.String("prefix") != "" { 33 inputPrefix := cmd.String("prefix") 34 prefix = &inputPrefix 35 } 36 key, err := oauth_helpers.GenerateKey(prefix) 37 if err != nil { 38 return err 39 } 40 41 b, err := json.Marshal(key) 42 if err != nil { 43 return err 44 } 45 46 if err := os.WriteFile("./jwks.json", b, 0644); err != nil { 47 return err 48 } 49 50 return nil 51 }, 52}