Browse Source

Fixed png rending

Torkel Ödegaard 11 years ago
parent
commit
90ae59ccaf

+ 1 - 1
.bra.toml

@@ -9,6 +9,6 @@ watch_dirs = [
 watch_exts = [".go", ".ini"]
 build_delay = 1500
 cmds = [
-	["go", "build", "./pkg/cmd/grafana-pro"],
+	["go", "build"],
 	["./grafana-pro", "web"]
 ]

+ 0 - 3
main.go

@@ -4,7 +4,6 @@ import (
 	"os"
 	"runtime"
 
-	"github.com/torkelo/grafana-pro/pkg/bus"
 	"github.com/torkelo/grafana-pro/pkg/cmd"
 
 	"github.com/codegangsta/cli"
@@ -17,8 +16,6 @@ func init() {
 }
 
 func main() {
-	bus.InitBus()
-
 	app := cli.NewApp()
 	app.Name = "Grafana Pro"
 	app.Usage = "Grafana Pro Service"

+ 2 - 1
pkg/cmd/web.go

@@ -67,9 +67,10 @@ func runWeb(*cli.Context) {
 
 	setting.NewConfigContext()
 	setting.InitServices()
-	sqlstore.Init()
 	social.NewOAuthService()
 
+	sqlstore.Init()
+
 	// init database
 	sqlstore.LoadModelsConfig()
 	if err := sqlstore.NewEngine(); err != nil {

+ 0 - 73
pkg/components/phantom_renderer.go

@@ -1,73 +0,0 @@
-package components
-
-import (
-	"crypto/md5"
-	"encoding/hex"
-	"io"
-	"os"
-	"os/exec"
-	"path/filepath"
-	"time"
-
-	log "github.com/alecthomas/log4go"
-)
-
-type PhantomRenderer struct {
-	ImagesDir  string
-	PhantomDir string
-}
-
-type RenderOpts struct {
-	Url    string
-	Width  string
-	Height string
-}
-
-func (self *PhantomRenderer) RenderToPng(params *RenderOpts) (string, error) {
-	log.Info("PhantomRenderer::renderToPng url %v", params.Url)
-	binPath, _ := filepath.Abs(filepath.Join(self.PhantomDir, "phantomjs"))
-	scriptPath, _ := filepath.Abs(filepath.Join(self.PhantomDir, "render.js"))
-	pngPath, _ := filepath.Abs(filepath.Join(self.ImagesDir, getHash(params.Url)))
-	pngPath = pngPath + ".png"
-
-	cmd := exec.Command(binPath, scriptPath, "url="+params.Url, "width="+params.Width, "height="+params.Height, "png="+pngPath)
-	stdout, err := cmd.StdoutPipe()
-
-	if err != nil {
-		return "", err
-	}
-	stderr, err := cmd.StderrPipe()
-	if err != nil {
-		return "", err
-	}
-
-	err = cmd.Start()
-	if err != nil {
-		return "", err
-	}
-
-	go io.Copy(os.Stdout, stdout)
-	go io.Copy(os.Stdout, stderr)
-
-	done := make(chan error)
-	go func() {
-		cmd.Wait()
-		close(done)
-	}()
-
-	select {
-	case <-time.After(10 * time.Second):
-		if err := cmd.Process.Kill(); err != nil {
-			log.Error("failed to kill: %v", err)
-		}
-	case <-done:
-	}
-
-	return pngPath, nil
-}
-
-func getHash(text string) string {
-	hasher := md5.New()
-	hasher.Write([]byte(text))
-	return hex.EncodeToString(hasher.Sum(nil))
-}

+ 9 - 0
pkg/dto/queries.go

@@ -0,0 +1,9 @@
+package dto
+
+type GetDashboardQuery struct {
+	Id   int64
+	Resp GetDashboardQueryResp
+}
+
+type GetDashboardQueryResp struct {
+}

+ 1 - 1
pkg/middleware/auth.go

@@ -15,7 +15,7 @@ func authGetRequestAccountId(c *Context, sess session.Store) (int64, error) {
 
 	urlQuery := c.Req.URL.Query()
 	if len(urlQuery["render"]) > 0 {
-		accId, _ := strconv.Atoi(urlQuery["accountId"][0])
+		accId, _ := strconv.ParseInt(urlQuery["accountId"][0], 10, 64)
 		sess.Set("accountId", accId)
 		accountId = accId
 	}

+ 1 - 3
pkg/stores/sqlstore/sqlstore_dashboards.go

@@ -1,8 +1,6 @@
 package sqlstore
 
-import (
-	"github.com/torkelo/grafana-pro/pkg/models"
-)
+import "github.com/torkelo/grafana-pro/pkg/models"
 
 func SaveDashboard(dash *models.Dashboard) error {
 	var err error