|
|
|
@ -1,9 +1,11 @@
|
|
|
|
|
package main
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"bytes"
|
|
|
|
|
"fmt"
|
|
|
|
|
"os"
|
|
|
|
|
"text/template"
|
|
|
|
|
"github.com/gorilla/mux"
|
|
|
|
|
"io/ioutil"
|
|
|
|
|
"net/http"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
const (
|
|
|
|
@ -14,20 +16,54 @@ const (
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
func main() {
|
|
|
|
|
t := template.New("svgConv")
|
|
|
|
|
//_ := template.New("svgConv")
|
|
|
|
|
|
|
|
|
|
percentage := 0.999
|
|
|
|
|
fill := percentageToRGB(percentage)
|
|
|
|
|
//percentage := 0.999
|
|
|
|
|
//fill := percentageToRGB(percentage)
|
|
|
|
|
|
|
|
|
|
pill := CoveragePill{
|
|
|
|
|
fmt.Sprintf("%.1f", toFixed(percentage, 3)*100),
|
|
|
|
|
baseColour,
|
|
|
|
|
fill,
|
|
|
|
|
//_ := CoveragePill{
|
|
|
|
|
// fmt.Sprintf("%.1f", toFixed(percentage, 3)*100),
|
|
|
|
|
// baseColour,
|
|
|
|
|
// fill,
|
|
|
|
|
//}
|
|
|
|
|
|
|
|
|
|
r := mux.NewRouter()
|
|
|
|
|
r.HandleFunc("/upload/go", upload)
|
|
|
|
|
_ = http.ListenAndServe(":8080", r)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func upload(w http.ResponseWriter, r *http.Request) {
|
|
|
|
|
if r.Method != "POST" {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
err := r.ParseForm()
|
|
|
|
|
if err != nil {
|
|
|
|
|
http.Error(w, "Request parameters not parsed", 500)
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
t, err := t.Parse(svgTemplate)
|
|
|
|
|
err = r.ParseMultipartForm(5 << 20)
|
|
|
|
|
if err != nil {
|
|
|
|
|
panic(err)
|
|
|
|
|
http.Error(w, "Request parameters not parsed", 500)
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
form := r.Form
|
|
|
|
|
|
|
|
|
|
project := form.Get("project")
|
|
|
|
|
tag := form.Get("tag")
|
|
|
|
|
id := form.Get("id")
|
|
|
|
|
file, _, err := r.FormFile("file")
|
|
|
|
|
b, _ := ioutil.ReadAll(file)
|
|
|
|
|
n := bytes.Index(b, []byte{0})
|
|
|
|
|
content := string(b[n])
|
|
|
|
|
|
|
|
|
|
fmt.Print(content)
|
|
|
|
|
|
|
|
|
|
if project == "" || tag == "" || id == "" {
|
|
|
|
|
http.Error(w, "Request parameters [secret, project, tag, id] not found", 400)
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
_ = t.Execute(os.Stdout, pill)
|
|
|
|
|
_, _ = fmt.Fprintf(w, "project: '%s'\ntag: '%s'\nid: '%s'\n", project, tag, id)
|
|
|
|
|
}
|
|
|
|
|