Commit d7ee4b45 by Torkel Ödegaard

Added missing files

parent a492ecef
......@@ -17,4 +17,4 @@ config.js
data/sessions
data/*.db
data/log
grafana-pro
/grafana-pro
all: build
build:
go build ../pkg/cmd/grafana-pro/
package main
import (
"os"
"runtime"
"github.com/codegangsta/cli"
)
const APP_VER = "0.1.0 Alpha"
func init() {
runtime.GOMAXPROCS(runtime.NumCPU())
}
func main() {
app := cli.NewApp()
app.Name = "Grafana Pro"
app.Usage = "Grafana Pro Service"
app.Version = APP_VER
app.Commands = []cli.Command{CmdWeb}
app.Flags = append(app.Flags, []cli.Flag{}...)
app.Run(os.Args)
}
// Copyright 2014 Unknwon
// Copyright 2014 Torkel Ödegaard
package main
import (
"fmt"
"net/http"
"path"
"github.com/Unknwon/macaron"
"github.com/codegangsta/cli"
"github.com/macaron-contrib/session"
"github.com/torkelo/grafana-pro/pkg/log"
"github.com/torkelo/grafana-pro/pkg/middleware"
"github.com/torkelo/grafana-pro/pkg/routes"
"github.com/torkelo/grafana-pro/pkg/setting"
"github.com/torkelo/grafana-pro/pkg/social"
"github.com/torkelo/grafana-pro/pkg/stores/sqlstore"
)
var CmdWeb = cli.Command{
Name: "web",
Usage: "Start Grafana Pro web server",
Description: `Start Grafana Pro server`,
Action: runWeb,
Flags: []cli.Flag{},
}
func newMacaron() *macaron.Macaron {
m := macaron.New()
m.Use(middleware.Logger())
m.Use(macaron.Recovery())
mapStatic(m, "public", "public")
mapStatic(m, "public/app", "app")
mapStatic(m, "public/img", "img")
m.Use(session.Sessioner(session.Options{
Provider: setting.SessionProvider,
Config: *setting.SessionConfig,
}))
m.Use(macaron.Renderer(macaron.RenderOptions{
Directory: path.Join(setting.StaticRootPath, "views"),
IndentJSON: macaron.Env != macaron.PROD,
Delims: macaron.Delims{Left: "[[", Right: "]]"},
}))
m.Use(middleware.GetContextHandler())
return m
}
func mapStatic(m *macaron.Macaron, dir string, prefix string) {
m.Use(macaron.Static(
path.Join(setting.StaticRootPath, dir),
macaron.StaticOptions{
SkipLogging: true,
Prefix: prefix,
},
))
}
func runWeb(*cli.Context) {
log.Info("Starting Grafana-Pro v.2-alpha")
setting.NewConfigContext()
setting.InitServices()
sqlstore.Init()
social.NewOAuthService()
// init database
sqlstore.LoadModelsConfig()
if err := sqlstore.NewEngine(); err != nil {
log.Fatal(4, "fail to initialize orm engine: %v", err)
}
m := newMacaron()
routes.Register(m)
var err error
listenAddr := fmt.Sprintf("%s:%s", setting.HttpAddr, setting.HttpPort)
log.Info("Listen: %v://%s%s", setting.Protocol, listenAddr, setting.AppSubUrl)
switch setting.Protocol {
case setting.HTTP:
err = http.ListenAndServe(listenAddr, m)
case setting.HTTPS:
err = http.ListenAndServeTLS(listenAddr, setting.CertFile, setting.KeyFile, m)
default:
log.Fatal(4, "Invalid protocol: %s", setting.Protocol)
}
if err != nil {
log.Fatal(4, "Fail to start server: %v", err)
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment