Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-pages.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKamil Trzcinski <ayufan@ayufan.eu>2016-02-12 16:01:54 +0300
committerKamil Trzcinski <ayufan@ayufan.eu>2016-02-12 16:01:54 +0300
commit34f19dff7a86564df6afe5fdf34a3ac94cc14b33 (patch)
tree16a8ab94132a9a46fc77f3e0eda075d699d4c073 /main.go
parent88e8fb2a91372ec8a64b82a976a0e51c8f925446 (diff)
Allow to daemonize the app
Diffstat (limited to 'main.go')
-rw-r--r--main.go48
1 files changed, 16 insertions, 32 deletions
diff --git a/main.go b/main.go
index 14179ae4..623d2538 100644
--- a/main.go
+++ b/main.go
@@ -16,6 +16,8 @@ var VERSION = "dev"
var REVISION = "HEAD"
func main() {
+ daemonMain()
+
var listenHTTP = flag.String("listen-http", ":80", "The address to listen for HTTP requests")
var listenHTTPS = flag.String("listen-https", "", "The address to listen for HTTPS requests")
var listenProxy = flag.String("listen-proxy", "", "The address to listen for proxy requests")
@@ -36,58 +38,40 @@ func main() {
log.Fatalln(err)
}
- var app theApp
- app.Domain = strings.ToLower(*pagesDomain)
- app.RedirectHTTP = *redirectHTTP
- app.HTTP2 = *useHTTP2
+ var config appConfig
+ config.Domain = strings.ToLower(*pagesDomain)
+ config.RedirectHTTP = *redirectHTTP
+ config.HTTP2 = *useHTTP2
if *pagesRootCert != "" {
- app.RootCertificate = readFile(*pagesRootCert)
+ config.RootCertificate = readFile(*pagesRootCert)
}
if *pagesRootKey != "" {
- app.RootKey = readFile(*pagesRootKey)
- }
-
-<<<<<<< 9042f5171c4bddc3da330b0e236e5faa78e657c3
-=======
- //daemonize()
-
- fmt.Println("Starting...")
-
- // We don't need root privileges any more
- // if err := syscall.Setgid(33); err != nil {
- // log.Fatalln("setgid:", err)
- // }
- if err := syscall.Setuid(33); err != nil {
- log.Fatalln("setuid:", err)
+ config.RootKey = readFile(*pagesRootKey)
}
- err := syscall.Chroot(*pagesRoot)
- if err != nil {
- log.Fatalln("chroot:", err)
- }
- *pagesRoot = "/"
-
- // Listen for HTTP
->>>>>>> Daemonize
if *listenHTTP != "" {
var l net.Listener
- l, app.ListenHTTP = createSocket(*listenHTTP)
+ l, config.ListenHTTP = createSocket(*listenHTTP)
defer l.Close()
}
if *listenHTTPS != "" {
var l net.Listener
- l, app.ListenHTTPS = createSocket(*listenHTTPS)
+ l, config.ListenHTTPS = createSocket(*listenHTTPS)
defer l.Close()
}
if *listenProxy != "" {
var l net.Listener
- l, app.ListenHTTPS = createSocket(*listenProxy)
+ l, config.ListenHTTPS = createSocket(*listenProxy)
defer l.Close()
}
- app.Run()
+ if *pagesUser != "" {
+ daemonize(config, *pagesUser)
+ } else {
+ runApp(config)
+ }
}