This commit is contained in:
Unknwon 2015-12-19 21:43:32 -05:00
parent 3bcdb3855c
commit 53eb37d529
7 changed files with 241 additions and 252 deletions

View File

@ -3,7 +3,7 @@ Gogs - Go Git Service [![Build Status](https://travis-ci.org/gogits/gogs.svg?bra
![](https://github.com/gogits/gogs/blob/master/public/img/gogs-large-resize.png?raw=true) ![](https://github.com/gogits/gogs/blob/master/public/img/gogs-large-resize.png?raw=true)
##### Current version: 0.8.10 ##### Current version: 0.8.11
| Web | UI | Preview | | Web | UI | Preview |
|:-------------:|:-------:|:-------:| |:-------------:|:-------:|:-------:|

View File

@ -57,6 +57,8 @@ DISABLE_SSH = false
; Whether use builtin SSH server or not. ; Whether use builtin SSH server or not.
START_SSH_SERVER = false START_SSH_SERVER = false
SSH_PORT = 22 SSH_PORT = 22
; Root path of SSH directory
SSH_ROOT_PATH =
; Disable CDN even in "prod" mode ; Disable CDN even in "prod" mode
OFFLINE_MODE = false OFFLINE_MODE = false
DISABLE_ROUTER_LOG = false DISABLE_ROUTER_LOG = false

View File

@ -17,7 +17,7 @@ import (
"github.com/gogits/gogs/modules/setting" "github.com/gogits/gogs/modules/setting"
) )
const APP_VER = "0.8.10.1219" const APP_VER = "0.8.11.1219"
func init() { func init() {
runtime.GOMAXPROCS(runtime.NumCPU()) runtime.GOMAXPROCS(runtime.NumCPU())

View File

@ -33,24 +33,6 @@ const (
) )
var sshOpLocker = sync.Mutex{} var sshOpLocker = sync.Mutex{}
var SSHPath string // SSH directory.
// homeDir returns the home directory of current user.
func homeDir() string {
home, err := com.HomeDir()
if err != nil {
log.Fatal(4, "Fail to get home directory: %v", err)
}
return home
}
func init() {
// Determine and create .ssh path.
SSHPath = filepath.Join(homeDir(), ".ssh")
if err := os.MkdirAll(SSHPath, 0700); err != nil {
log.Fatal(4, "fail to create '%s': %v", SSHPath, err)
}
}
type KeyType int type KeyType int
@ -233,7 +215,7 @@ func saveAuthorizedKeyFile(keys ...*PublicKey) error {
sshOpLocker.Lock() sshOpLocker.Lock()
defer sshOpLocker.Unlock() defer sshOpLocker.Unlock()
fpath := filepath.Join(SSHPath, "authorized_keys") fpath := filepath.Join(setting.SSHRootPath, "authorized_keys")
f, err := os.OpenFile(fpath, os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0600) f, err := os.OpenFile(fpath, os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0600)
if err != nil { if err != nil {
return err return err
@ -449,8 +431,8 @@ func deletePublicKey(e *xorm.Session, keyID int64) error {
return nil return nil
} }
fpath := filepath.Join(SSHPath, "authorized_keys") fpath := filepath.Join(setting.SSHRootPath, "authorized_keys")
tmpPath := filepath.Join(SSHPath, "authorized_keys.tmp") tmpPath := filepath.Join(setting.SSHRootPath, "authorized_keys.tmp")
if err = rewriteAuthorizedKeys(key, fpath, tmpPath); err != nil { if err = rewriteAuthorizedKeys(key, fpath, tmpPath); err != nil {
return err return err
} else if err = os.Remove(fpath); err != nil { } else if err = os.Remove(fpath); err != nil {
@ -492,7 +474,7 @@ func RewriteAllPublicKeys() error {
sshOpLocker.Lock() sshOpLocker.Lock()
defer sshOpLocker.Unlock() defer sshOpLocker.Unlock()
tmpPath := filepath.Join(SSHPath, "authorized_keys.tmp") tmpPath := filepath.Join(setting.SSHRootPath, "authorized_keys.tmp")
f, err := os.OpenFile(tmpPath, os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0600) f, err := os.OpenFile(tmpPath, os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0600)
if err != nil { if err != nil {
return err return err
@ -508,7 +490,7 @@ func RewriteAllPublicKeys() error {
return err return err
} }
fpath := filepath.Join(SSHPath, "authorized_keys") fpath := filepath.Join(setting.SSHRootPath, "authorized_keys")
if com.IsExist(fpath) { if com.IsExist(fpath) {
if err = os.Remove(fpath); err != nil { if err = os.Remove(fpath); err != nil {
return err return err

File diff suppressed because one or more lines are too long

View File

@ -64,6 +64,7 @@ var (
StartSSHServer bool StartSSHServer bool
SSHDomain string SSHDomain string
SSHPort int SSHPort int
SSHRootPath string
OfflineMode bool OfflineMode bool
DisableRouterLog bool DisableRouterLog bool
CertFile, KeyFile string CertFile, KeyFile string
@ -273,10 +274,16 @@ func NewContext() {
log.Fatal(4, "Fail to load custom conf '%s': %v", CustomConf, err) log.Fatal(4, "Fail to load custom conf '%s': %v", CustomConf, err)
} }
} else { } else {
log.Warn("Custom config (%s) not found, ignore this if you're running first time", CustomConf) log.Warn("Custom config '%s' not found, ignore this if you're running first time", CustomConf)
} }
Cfg.NameMapper = ini.AllCapsUnderscore Cfg.NameMapper = ini.AllCapsUnderscore
homeDir, err := com.HomeDir()
if err != nil {
log.Fatal(4, "Fail to get home directory: %v", err)
}
homeDir = strings.Replace(homeDir, "\\", "/", -1)
LogRootPath = Cfg.Section("log").Key("ROOT_PATH").MustString(path.Join(workDir, "log")) LogRootPath = Cfg.Section("log").Key("ROOT_PATH").MustString(path.Join(workDir, "log"))
forcePathSeparator(LogRootPath) forcePathSeparator(LogRootPath)
@ -290,7 +297,7 @@ func NewContext() {
// Check if has app suburl. // Check if has app suburl.
url, err := url.Parse(AppUrl) url, err := url.Parse(AppUrl)
if err != nil { if err != nil {
log.Fatal(4, "Invalid ROOT_URL(%s): %s", AppUrl, err) log.Fatal(4, "Invalid ROOT_URL '%s': %s", AppUrl, err)
} }
AppSubUrl = strings.TrimSuffix(url.Path, "/") AppSubUrl = strings.TrimSuffix(url.Path, "/")
@ -312,6 +319,10 @@ func NewContext() {
} }
SSHDomain = sec.Key("SSH_DOMAIN").MustString(Domain) SSHDomain = sec.Key("SSH_DOMAIN").MustString(Domain)
SSHPort = sec.Key("SSH_PORT").MustInt(22) SSHPort = sec.Key("SSH_PORT").MustInt(22)
SSHRootPath = sec.Key("SSH_ROOT_PATH").MustString(path.Join(homeDir, ".ssh"))
if err := os.MkdirAll(SSHRootPath, 0700); err != nil {
log.Fatal(4, "Fail to create '%s': %v", SSHRootPath, err)
}
OfflineMode = sec.Key("OFFLINE_MODE").MustBool() OfflineMode = sec.Key("OFFLINE_MODE").MustBool()
DisableRouterLog = sec.Key("DISABLE_ROUTER_LOG").MustBool() DisableRouterLog = sec.Key("DISABLE_ROUTER_LOG").MustBool()
StaticRootPath = sec.Key("STATIC_ROOT_PATH").MustString(workDir) StaticRootPath = sec.Key("STATIC_ROOT_PATH").MustString(workDir)
@ -368,12 +379,6 @@ func NewContext() {
} }
// Determine and create root git repository path. // Determine and create root git repository path.
homeDir, err := com.HomeDir()
if err != nil {
log.Fatal(4, "Fail to get home directory: %v", err)
}
homeDir = strings.Replace(homeDir, "\\", "/", -1)
sec = Cfg.Section("repository") sec = Cfg.Section("repository")
RepoRootPath = sec.Key("ROOT").MustString(path.Join(homeDir, "gogs-repositories")) RepoRootPath = sec.Key("ROOT").MustString(path.Join(homeDir, "gogs-repositories"))
forcePathSeparator(RepoRootPath) forcePathSeparator(RepoRootPath)

View File

@ -1 +1 @@
0.8.10.1219 0.8.11.1219