Browse Source

bug fixed

tags/v1.2.0-rc1
Lunny Xiao 11 years ago
parent
commit
a24c0b92e4
2 changed files with 44 additions and 34 deletions
  1. +14
    -8
      routers/repo/http.go
  2. +30
    -26
      update.go

+ 14
- 8
routers/repo/http.go View File

@@ -82,7 +82,8 @@ func Http(ctx *middleware.Context, params martini.Params) {
return
}

newUser := &models.User{Passwd: passwd}
newUser := &models.User{Passwd: passwd, Salt: authUser.Salt}

newUser.EncodePasswd()
if authUser.Passwd != newUser.Passwd {
ctx.Handle(401, "no basic auth and digit auth", nil)
@@ -112,7 +113,10 @@ func Http(ctx *middleware.Context, params martini.Params) {
}
}

config := Config{base.RepoRootPath, "git", true, true}
config := Config{base.RepoRootPath, "git", true, true, func(rpc string, input []byte) {
//fmt.Println("rpc:", rpc)
//fmt.Println("input:", string(input))
}}

handler := HttpBackend(&config)
handler(ctx.ResponseWriter, ctx.Req)
@@ -135,11 +139,11 @@ type route struct {
}

type Config struct {
ReposRoot string
GitBinPath string
UploadPack bool
ReceivePack bool
OnPushSucceed func()
ReposRoot string
GitBinPath string
UploadPack bool
ReceivePack bool
OnSucceed func(rpc string, input []byte)
}

type handler struct {
@@ -243,7 +247,9 @@ func serviceRpc(rpc string, hr handler) {
io.Copy(w, stdout)
cmd.Wait()

hr.Config.OnPushSucceed()
if hr.Config.OnSucceed != nil {
hr.Config.OnSucceed(rpc, input)
}
}

func getInfoRefs(hr handler) {


+ 30
- 26
update.go View File

@@ -42,32 +42,7 @@ func newUpdateLogger(execDir string) {
qlog.Info("Start logging update...")
}

// for command: ./gogs update
func runUpdate(c *cli.Context) {
execDir, _ := base.ExecDir()
newUpdateLogger(execDir)

base.NewConfigContext()
models.LoadModelsConfig()

if models.UseSQLite3 {
os.Chdir(execDir)
}

models.SetEngine()

args := c.Args()
if len(args) != 3 {
qlog.Fatal("received less 3 parameters")
}

refName := args[0]
if refName == "" {
qlog.Fatal("refName is empty, shouldn't use")
}
oldCommitId := args[1]
newCommitId := args[2]

func update(refName, oldCommitId, newCommitId string) {
isNew := strings.HasPrefix(oldCommitId, "0000000")
if isNew &&
strings.HasPrefix(newCommitId, "0000000") {
@@ -158,3 +133,32 @@ func runUpdate(c *cli.Context) {
qlog.Fatalf("runUpdate.models.CommitRepoAction: %v", err)
}
}

// for command: ./gogs update
func runUpdate(c *cli.Context) {
execDir, _ := base.ExecDir()
newUpdateLogger(execDir)

base.NewConfigContext()
models.LoadModelsConfig()

if models.UseSQLite3 {
os.Chdir(execDir)
}

models.SetEngine()

args := c.Args()
if len(args) != 3 {
qlog.Fatal("received less 3 parameters")
}

refName := args[0]
if refName == "" {
qlog.Fatal("refName is empty, shouldn't use")
}
oldCommitId := args[1]
newCommitId := args[2]

update(refName, oldCommitId, newCommitId)
}

Loading…
Cancel
Save