diff options
Diffstat (limited to 'cmd')
| -rw-r--r-- | cmd/server/main.go | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/cmd/server/main.go b/cmd/server/main.go index 58dc87d..321cb88 100644 --- a/cmd/server/main.go +++ b/cmd/server/main.go @@ -9,6 +9,7 @@ import ( "encoding/base64" "encoding/hex" "errors" + "flag" "fmt" "io" "io/fs" @@ -33,7 +34,13 @@ import ( secretmanager2 "google.golang.org/genproto/googleapis/cloud/secretmanager/v1" ) +var ( + bucket = flag.String("bucket", "", "GCS bucket to store files") + secretName = flag.String("secret-name", "", "Secret manager secret name") +) + func main() { + flag.Parse() var host string port := os.Getenv("PORT") if port == "" { @@ -46,7 +53,7 @@ func main() { if err != nil { log.Fatalf("storage.NewClient() = _, %v", err) } - b := cl.Bucket("i-dis-band-east4") + b := cl.Bucket(*bucket) http.Handle("/upload", upload(b)) http.Handle("/", fileServerHandler(internal.Static, image(b, http.HandlerFunc(home)))) log.Printf("Listening on %s\n", net.JoinHostPort(host, port)) @@ -70,7 +77,7 @@ func secretKey() []byte { return } defer client.Close() - name := fmt.Sprintf("projects/%s/secrets/i-dis-band-sk/versions/latest", project) + name := fmt.Sprintf("projects/%s/secrets/%s/versions/latest", project, *secretName) resp, err := client.AccessSecretVersion(ctx, &secretmanager2.AccessSecretVersionRequest{Name: name}) if err != nil { log.Printf("client.AccessSecretVersion(%q) = %v", name, err) @@ -98,13 +105,13 @@ func ValidMAC(message, messageMAC, key []byte) bool { } const ( - Byte = 1 << (10*iota) + Byte = 1 << (10 * iota) KiB MiB GiB ) -const maxUpload = 100*MiB +const maxUpload = 100 * MiB func upload(b *storage.BucketHandle) http.Handler { return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { @@ -198,7 +205,7 @@ func upload(b *storage.BucketHandle) http.Handler { return } n, err := io.Copy(fw, file) - if err != nil || n == 0{ + if err != nil || n == 0 { log.Printf("fw.Write(wand.GetImageBlob()) = %d, %v", n, err) http.Error(w, http.StatusText(http.StatusInternalServerError), http.StatusInternalServerError) return |
