diff options
author | Gusted <williamzijl7@hotmail.com> | 2022-04-05 22:28:10 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-04-05 16:28:10 -0400 |
commit | 606e33d38a3aa64c54dcecf5288b77ddfe4194db (patch) | |
tree | 3a4efd8337d7da0906685baba1832f01ea9c305b /cmd | |
parent | d4f4e95c6381ec2e8049b7bfc6c3cbee0abb63c3 (diff) | |
download | gitea-606e33d38a3aa64c54dcecf5288b77ddfe4194db.tar.gz gitea-606e33d38a3aa64c54dcecf5288b77ddfe4194db.zip |
Warn on SSH connection for incorrect configuration (#19317)
* Warn on SSH connection for incorrect configuration
- When `setting.RepoRootPath` cannot be found(most likely due to
incorrect configuration) show "Gitea: Incorrect configuration" on the
client-side to help easier with debugging the problem.
* Update cmd/serv.go
Co-authored-by: delvh <dev.lh@web.de>
* Don't leak configuration
* Update cmd/serv.go
Co-authored-by: delvh <dev.lh@web.de>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: techknowlogick <techknowlogick@gitea.io>
Diffstat (limited to 'cmd')
-rw-r--r-- | cmd/serv.go | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/cmd/serv.go b/cmd/serv.go index c834ca298a..b106d40d28 100644 --- a/cmd/serv.go +++ b/cmd/serv.go @@ -296,6 +296,15 @@ func runServ(c *cli.Context) error { gitcmd = exec.CommandContext(ctx, verb, repoPath) } + // Check if setting.RepoRootPath exists. It could be the case that it doesn't exist, this can happen when + // `[repository]` `ROOT` is a relative path and $GITEA_WORK_DIR isn't passed to the SSH connection. + if _, err := os.Stat(setting.RepoRootPath); err != nil { + if os.IsNotExist(err) { + return fail("Incorrect configuration.", + "Directory `[repository]` `ROOT` was not found, please check if $GITEA_WORK_DIR is passed to the SSH connection or make `[repository]` `ROOT` an absolute value.") + } + } + gitcmd.Dir = setting.RepoRootPath gitcmd.Stdout = os.Stdout gitcmd.Stdin = os.Stdin |