Reviewed-on: https://git.openi.org.cn/OpenI/aiforge/pulls/2094 Reviewed-by: lewis <747342561@qq.com>pull/2112/head
@@ -6,6 +6,7 @@ | |||||
package cmd | package cmd | ||||
import ( | import ( | ||||
"code.gitea.io/gitea/services/repository" | |||||
"encoding/json" | "encoding/json" | ||||
"fmt" | "fmt" | ||||
"net/http" | "net/http" | ||||
@@ -213,11 +214,13 @@ func runServ(c *cli.Context) error { | |||||
os.Setenv(models.EnvRepoMaxFileSize, fmt.Sprint(setting.Repository.Upload.FileMaxSize)) | os.Setenv(models.EnvRepoMaxFileSize, fmt.Sprint(setting.Repository.Upload.FileMaxSize)) | ||||
os.Setenv(models.EnvRepoMaxSize, fmt.Sprint(setting.Repository.RepoMaxSize)) | os.Setenv(models.EnvRepoMaxSize, fmt.Sprint(setting.Repository.RepoMaxSize)) | ||||
os.Setenv(models.EnvPushSizeCheckFlag, fmt.Sprint(setting.Repository.Upload.ShellFlag)) | os.Setenv(models.EnvPushSizeCheckFlag, fmt.Sprint(setting.Repository.Upload.ShellFlag)) | ||||
env, _ := private.GetHookConfig(username, reponame) | |||||
if env != nil && len(env) > 0 { | |||||
repoSize := env[models.EnvRepoSize] | |||||
if repoSize != "" { | |||||
os.Setenv(models.EnvRepoSize, repoSize) | |||||
if setting.Repository.Upload.ShellFlag == repository.SHELL_FLAG_ON { | |||||
env, _ := private.GetHookConfig(username, reponame) | |||||
if env != nil && len(env) > 0 { | |||||
repoSize := env[models.EnvRepoSize] | |||||
if repoSize != "" { | |||||
os.Setenv(models.EnvRepoSize, repoSize) | |||||
} | |||||
} | } | ||||
} | } | ||||
} | } | ||||
@@ -5,6 +5,7 @@ | |||||
package ssh | package ssh | ||||
import ( | import ( | ||||
"code.gitea.io/gitea/services/repository" | |||||
"crypto/rand" | "crypto/rand" | ||||
"crypto/rsa" | "crypto/rsa" | ||||
"crypto/x509" | "crypto/x509" | ||||
@@ -74,7 +75,7 @@ func sessionHandler(session ssh.Session) { | |||||
models.EnvPushSizeCheckFlag+"="+fmt.Sprint(setting.Repository.Upload.ShellFlag), | models.EnvPushSizeCheckFlag+"="+fmt.Sprint(setting.Repository.Upload.ShellFlag), | ||||
) | ) | ||||
if strings.HasPrefix(command, "git-receive-pack") { | |||||
if strings.HasPrefix(command, "git-receive-pack") && setting.Repository.Upload.ShellFlag == repository.SHELL_FLAG_ON { | |||||
repo := getRepoFromCommandStr(command) | repo := getRepoFromCommandStr(command) | ||||
if repo != nil { | if repo != nil { | ||||
cmd.Env = append(cmd.Env, models.EnvRepoSize+"="+fmt.Sprint(repo.Size)) | cmd.Env = append(cmd.Env, models.EnvRepoSize+"="+fmt.Sprint(repo.Size)) | ||||
@@ -19,6 +19,8 @@ import ( | |||||
pull_service "code.gitea.io/gitea/services/pull" | pull_service "code.gitea.io/gitea/services/pull" | ||||
) | ) | ||||
const SHELL_FLAG_ON = 1 | |||||
// CreateRepository creates a repository for the user/organization. | // CreateRepository creates a repository for the user/organization. | ||||
func CreateRepository(doer, owner *models.User, opts models.CreateRepoOptions) (*models.Repository, error) { | func CreateRepository(doer, owner *models.User, opts models.CreateRepoOptions) (*models.Repository, error) { | ||||
repo, err := repo_module.CreateRepository(doer, owner, opts) | repo, err := repo_module.CreateRepository(doer, owner, opts) | ||||