Merge pull request #1 from n0vad3v/add-cli-config

Add cli config
This commit is contained in:
Nova Kwok 2020-02-23 21:23:55 +08:00 committed by GitHub
commit 2fc7cc018c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -3,9 +3,8 @@ package main
import ( import (
"bytes" "bytes"
"encoding/json" "encoding/json"
"flag"
"fmt" "fmt"
"github.com/chai2010/webp"
"github.com/gofiber/fiber"
"image" "image"
"image/jpeg" "image/jpeg"
"image/png" "image/png"
@ -15,6 +14,9 @@ import (
"path" "path"
"strconv" "strconv"
"strings" "strings"
"github.com/chai2010/webp"
"github.com/gofiber/fiber"
) )
type Config struct { type Config struct {
@ -25,6 +27,8 @@ type Config struct {
AllowedTypes []string `json:"ALLOWED_TYPES"` AllowedTypes []string `json:"ALLOWED_TYPES"`
} }
var configPath string
func webpEncoder(p1, p2 string, quality float32) { func webpEncoder(p1, p2 string, quality float32) {
var buf bytes.Buffer var buf bytes.Buffer
var img image.Image var img image.Image
@ -45,13 +49,19 @@ func webpEncoder(p1, p2 string, quality float32) {
fmt.Println("Save output.webp ok") fmt.Println("Save output.webp ok")
} }
func init() {
// Config Here
flag.StringVar(&configPath, "config", "config.json", "/path/to/config.json. (Default: ./config.json)")
flag.Parse()
//flag.PrintDefaults()
}
func main() { func main() {
app := fiber.New() app := fiber.New()
app.Banner = false app.Banner = false
app.Server = "WebP Server Go" app.Server = "WebP Server Go"
// Config Here config := load_config(configPath)
config := load_config("config.json")
HOST := config.HOST HOST := config.HOST
PORT := config.PORT PORT := config.PORT
@ -154,7 +164,7 @@ func load_config(path string) Config {
var config Config var config Config
jsonObject, err := os.Open(path) jsonObject, err := os.Open(path)
if err != nil { if err != nil {
fmt.Println(err.Error()) log.Fatal(err)
} }
defer jsonObject.Close() defer jsonObject.Close()
decoder := json.NewDecoder(jsonObject) decoder := json.NewDecoder(jsonObject)