summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--conf/app.ini6
-rw-r--r--gogs.go26
-rw-r--r--routers/home.go8
-rw-r--r--templates/base/base.tmpl2
-rw-r--r--templates/home.tmpl1
-rw-r--r--utils/conf.go24
-rw-r--r--utils/log/log.go21
8 files changed, 84 insertions, 5 deletions
diff --git a/.gitignore b/.gitignore
index 82a084b50d..92b579f228 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
gogs
*.exe
*.exe~
+.DS_Store \ No newline at end of file
diff --git a/conf/app.ini b/conf/app.ini
index f70745d285..9d56816bb9 100644
--- a/conf/app.ini
+++ b/conf/app.ini
@@ -1 +1,5 @@
-APP_NAME = Go Git Service \ No newline at end of file
+APP_NAME = Go Git Service
+
+[server]
+HTTP_ADDR =
+HTTP_PORT = 3000 \ No newline at end of file
diff --git a/gogs.go b/gogs.go
index 8a4b9e0003..c0b11fb86e 100644
--- a/gogs.go
+++ b/gogs.go
@@ -5,15 +5,37 @@
package main
import (
+ "fmt"
+ "net/http"
+
"github.com/codegangsta/martini"
+ "github.com/martini-contrib/render"
"github.com/gogits/gogs/routers"
+ "github.com/gogits/gogs/utils"
+ "github.com/gogits/gogs/utils/log"
)
const APP_VER = "0.0.0.0212"
+func init() {
+
+}
+
func main() {
+ log.Info("App Name: %s", utils.Cfg.MustValue("", "APP_NAME"))
+
m := martini.Classic()
- m.Get("/", routers.HomeGet)
- m.Run()
+
+ // Middleware.
+ m.Use(render.Renderer())
+
+ // Routers.
+ m.Get("/", routers.Home)
+
+ listenAddr := fmt.Sprintf("%s:%s",
+ utils.Cfg.MustValue("server", "HTTP_ADDR"),
+ utils.Cfg.MustValue("server", "HTTP_PORT", "3000"))
+ log.Info("Listen: %s", listenAddr)
+ http.ListenAndServe(listenAddr, m)
}
diff --git a/routers/home.go b/routers/home.go
index 5bb12f6ddd..ec7077d804 100644
--- a/routers/home.go
+++ b/routers/home.go
@@ -4,6 +4,10 @@
package routers
-func HomeGet() string {
- return "Hello world!"
+import (
+ "github.com/martini-contrib/render"
+)
+
+func Home(r render.Render) {
+ r.HTML(200, "home", map[string]interface{}{})
}
diff --git a/templates/base/base.tmpl b/templates/base/base.tmpl
new file mode 100644
index 0000000000..2a28b79114
--- /dev/null
+++ b/templates/base/base.tmpl
@@ -0,0 +1,2 @@
+this is base.html
+Hello world! \ No newline at end of file
diff --git a/templates/home.tmpl b/templates/home.tmpl
new file mode 100644
index 0000000000..0c98a69766
--- /dev/null
+++ b/templates/home.tmpl
@@ -0,0 +1 @@
+{{template "base/base"}} \ No newline at end of file
diff --git a/utils/conf.go b/utils/conf.go
new file mode 100644
index 0000000000..0b1a39908d
--- /dev/null
+++ b/utils/conf.go
@@ -0,0 +1,24 @@
+// Copyright 2014 The Gogs Authors. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+package utils
+
+import (
+ "fmt"
+ "os"
+
+ "github.com/Unknwon/goconfig"
+)
+
+var Cfg *goconfig.ConfigFile
+
+func init() {
+ var err error
+ Cfg, err = goconfig.LoadConfigFile("conf/app.ini")
+ if err != nil {
+ fmt.Println("Cannot load config file 'app.ini'")
+ os.Exit(2)
+ }
+ Cfg.BlockMode = false
+}
diff --git a/utils/log/log.go b/utils/log/log.go
new file mode 100644
index 0000000000..c725c5276e
--- /dev/null
+++ b/utils/log/log.go
@@ -0,0 +1,21 @@
+// Copyright 2014 The Gogs Authors. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+// Package log is a wrapper of logs for short calling name.
+package log
+
+import (
+ "github.com/gogits/logs"
+)
+
+var logger *logs.BeeLogger
+
+func init() {
+ logger = logs.NewLogger(10000)
+ logger.SetLogger("console", "")
+}
+
+func Info(format string, v ...interface{}) {
+ logger.Info(format, v...)
+}