Browse Source

fix #1436

for-closed-social
Unknwon 9 years ago
parent
commit
53eb37d529
7 changed files with 241 additions and 252 deletions
  1. +1
    -1
      README.md
  2. +2
    -0
      conf/app.ini
  3. +1
    -1
      gogs.go
  4. +5
    -23
      models/ssh_key.go
  5. +218
    -218
      modules/bindata/bindata.go
  6. +13
    -8
      modules/setting/setting.go
  7. +1
    -1
      templates/.VERSION

+ 1
- 1
README.md 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)
##### Current version: 0.8.10
##### Current version: 0.8.11
| Web | UI | Preview |
|:-------------:|:-------:|:-------:|

+ 2
- 0
conf/app.ini View File

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

+ 1
- 1
gogs.go View File

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

+ 5
- 23
models/ssh_key.go View File

@ -33,24 +33,6 @@ const (
)
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
@ -233,7 +215,7 @@ func saveAuthorizedKeyFile(keys ...*PublicKey) error {
sshOpLocker.Lock()
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)
if err != nil {
return err
@ -449,8 +431,8 @@ func deletePublicKey(e *xorm.Session, keyID int64) error {
return nil
}
fpath := filepath.Join(SSHPath, "authorized_keys")
tmpPath := filepath.Join(SSHPath, "authorized_keys.tmp")
fpath := filepath.Join(setting.SSHRootPath, "authorized_keys")
tmpPath := filepath.Join(setting.SSHRootPath, "authorized_keys.tmp")
if err = rewriteAuthorizedKeys(key, fpath, tmpPath); err != nil {
return err
} else if err = os.Remove(fpath); err != nil {
@ -492,7 +474,7 @@ func RewriteAllPublicKeys() error {
sshOpLocker.Lock()
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)
if err != nil {
return err
@ -508,7 +490,7 @@ func RewriteAllPublicKeys() error {
return err
}
fpath := filepath.Join(SSHPath, "authorized_keys")
fpath := filepath.Join(setting.SSHRootPath, "authorized_keys")
if com.IsExist(fpath) {
if err = os.Remove(fpath); err != nil {
return err

+ 218
- 218
modules/bindata/bindata.go
File diff suppressed because it is too large
View File


+ 13
- 8
modules/setting/setting.go View File

@ -64,6 +64,7 @@ var (
StartSSHServer bool
SSHDomain string
SSHPort int
SSHRootPath string
OfflineMode bool
DisableRouterLog bool
CertFile, KeyFile string
@ -273,10 +274,16 @@ func NewContext() {
log.Fatal(4, "Fail to load custom conf '%s': %v", CustomConf, err)
}
} 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
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"))
forcePathSeparator(LogRootPath)
@ -290,7 +297,7 @@ func NewContext() {
// Check if has app suburl.
url, err := url.Parse(AppUrl)
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, "/")
@ -312,6 +319,10 @@ func NewContext() {
}
SSHDomain = sec.Key("SSH_DOMAIN").MustString(Domain)
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()
DisableRouterLog = sec.Key("DISABLE_ROUTER_LOG").MustBool()
StaticRootPath = sec.Key("STATIC_ROOT_PATH").MustString(workDir)
@ -368,12 +379,6 @@ func NewContext() {
}
// 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")
RepoRootPath = sec.Key("ROOT").MustString(path.Join(homeDir, "gogs-repositories"))
forcePathSeparator(RepoRootPath)

+ 1
- 1
templates/.VERSION View File

@ -1 +1 @@
0.8.10.1219
0.8.11.1219

Loading…
Cancel
Save