in gcloud-report/invoke.go [45:62]
func scriptHandler(w http.ResponseWriter, r *http.Request) {
search := r.URL.Query().Get("search")
re := regexp.MustCompile(`^[a-z]+[a-z0-9\-]*$`)
if !re.MatchString(search) {
log.Printf("invalid search criteria %q, using default", search)
search = "."
}
cmd := exec.CommandContext(r.Context(), "/bin/bash", "script.sh", search)
cmd.Stderr = os.Stderr
out, err := cmd.Output()
if err != nil {
log.Printf("Command.Output: %v", err)
http.Error(w, http.StatusText(http.StatusInternalServerError), http.StatusInternalServerError)
return
}
w.Write(out)
}