// 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 main import ( "os" "path" "strconv" "github.com/codegangsta/cli" "github.com/gogits/gogs/models" "github.com/gogits/gogs/modules/base" qlog "github.com/qiniu/log" ) var CmdUpdate = cli.Command{ Name: "update", Usage: "This command just should be called by ssh shell", Description: ` gogs serv provide access auth for repositories`, Action: runUpdate, Flags: []cli.Flag{}, } func newUpdateLogger(execDir string) { logPath := execDir + "/log/update.log" os.MkdirAll(path.Dir(logPath), os.ModePerm) f, err := os.OpenFile(logPath, os.O_WRONLY|os.O_APPEND|os.O_CREATE, os.ModePerm) if err != nil { qlog.Fatal(err) } qlog.SetOutput(f) qlog.Info("Start logging update...") } func updateEnv(refName, oldCommitId, newCommitId string) { os.Setenv("refName", refName) os.Setenv("oldCommitId", oldCommitId) os.Setenv("newCommitId", newCommitId) qlog.Error("set envs:", refName, oldCommitId, newCommitId) } // for command: ./gogs update func runUpdate(c *cli.Context) { cmd := os.Getenv("SSH_ORIGINAL_COMMAND") if cmd == "" { return } 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") } if args[0] == "" { qlog.Fatal("refName is empty, shouldn't use") } //updateEnv(args[0], args[1], args[2]) userName := os.Getenv("userName") userId := os.Getenv("userId") iUserId, _ := strconv.ParseInt(userId, 10, 64) //repoId := os.Getenv("repoId") repoName := os.Getenv("repoName") models.Update(args[0], args[1], args[2], userName, repoName, iUserId) }
session(release): write data/sessions/2/4/24774f5d5062b59e: no space left on device
github.com/go-macaron/session@v0.0.0-20190805070824-1a3cdc6f5659/session.go:199 (0x8b2934) gopkg.in/macaron.v1@v1.3.9/context.go:79 (0x83d0a0) github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:157 (0x80ab07) github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:135 (0x80a8a8) gopkg.in/macaron.v1@v1.3.9/context.go:121 (0x83d1f8) gopkg.in/macaron.v1@v1.3.9/context.go:112 (0x84fdb5) gopkg.in/macaron.v1@v1.3.9/recovery.go:161 (0x84fda8) gopkg.in/macaron.v1@v1.3.9/logger.go:40 (0x840c73) github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:157 (0x80ab07) github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:135 (0x80a8a8) gopkg.in/macaron.v1@v1.3.9/context.go:121 (0x83d1f8) gopkg.in/macaron.v1@v1.3.9/router.go:187 (0x850fc6) gopkg.in/macaron.v1@v1.3.9/router.go:303 (0x8493e5) gopkg.in/macaron.v1@v1.3.9/macaron.go:220 (0x841fca) net/http/server.go:2836 (0x7a79b2) net/http/server.go:1924 (0x7a341b) runtime/asm_amd64.s:1373 (0x46f9f0)