mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-31 03:02:14 +01:00 
			
		
		
		
	* Allow custom SSH user in UI for built-in SSH server (#2617) * Some fixes * Did make fmt * Updated according to review - Renamed config to BUILTIN_SSH_SERVER_USER - Removed unnecessary default string value for config item * Updated according to review * Fixed some minor issues
This commit is contained in:
		
							parent
							
								
									514006a2e5
								
							
						
					
					
						commit
						e89bb7ef6a
					
				
							
								
								
									
										2
									
								
								conf/app.ini
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								conf/app.ini
									
									
									
									
										vendored
									
									
								
							| @ -113,6 +113,8 @@ LOCAL_ROOT_URL = %(PROTOCOL)s://%(HTTP_ADDR)s:%(HTTP_PORT)s/ | ||||
| DISABLE_SSH = false | ||||
| ; Whether use builtin SSH server or not. | ||||
| START_SSH_SERVER = false | ||||
| ; Username to use for builtin SSH server. If blank, then it is the value of RUN_USER. | ||||
| BUILTIN_SSH_SERVER_USER = | ||||
| ; Domain name to be exposed in clone URL | ||||
| SSH_DOMAIN = %(DOMAIN)s | ||||
| ; Network interface builtin SSH server listens on | ||||
|  | ||||
| @ -806,14 +806,19 @@ func (repo *Repository) cloneLink(isWiki bool) *CloneLink { | ||||
| 		repoName += ".wiki" | ||||
| 	} | ||||
| 
 | ||||
| 	sshUser := setting.RunUser | ||||
| 	if setting.SSH.StartBuiltinServer { | ||||
| 		sshUser = setting.SSH.BuiltinServerUser | ||||
| 	} | ||||
| 
 | ||||
| 	repo.Owner = repo.MustOwner() | ||||
| 	cl := new(CloneLink) | ||||
| 	if setting.SSH.Port != 22 { | ||||
| 		cl.SSH = fmt.Sprintf("ssh://%s@%s:%d/%s/%s.git", setting.RunUser, setting.SSH.Domain, setting.SSH.Port, repo.Owner.Name, repoName) | ||||
| 		cl.SSH = fmt.Sprintf("ssh://%s@%s:%d/%s/%s.git", sshUser, setting.SSH.Domain, setting.SSH.Port, repo.Owner.Name, repoName) | ||||
| 	} else if setting.Repository.UseCompatSSHURI { | ||||
| 		cl.SSH = fmt.Sprintf("ssh://%s@%s/%s/%s.git", setting.RunUser, setting.SSH.Domain, repo.Owner.Name, repoName) | ||||
| 		cl.SSH = fmt.Sprintf("ssh://%s@%s/%s/%s.git", sshUser, setting.SSH.Domain, repo.Owner.Name, repoName) | ||||
| 	} else { | ||||
| 		cl.SSH = fmt.Sprintf("%s@%s:%s/%s.git", setting.RunUser, setting.SSH.Domain, repo.Owner.Name, repoName) | ||||
| 		cl.SSH = fmt.Sprintf("%s@%s:%s/%s.git", sshUser, setting.SSH.Domain, repo.Owner.Name, repoName) | ||||
| 	} | ||||
| 	cl.HTTPS = ComposeHTTPSCloneURL(repo.Owner.Name, repoName) | ||||
| 	return cl | ||||
|  | ||||
| @ -90,6 +90,7 @@ var ( | ||||
| 	SSH = struct { | ||||
| 		Disabled             bool           `ini:"DISABLE_SSH"` | ||||
| 		StartBuiltinServer   bool           `ini:"START_SSH_SERVER"` | ||||
| 		BuiltinServerUser    string         `ini:"BUILTIN_SSH_SERVER_USER"` | ||||
| 		Domain               string         `ini:"SSH_DOMAIN"` | ||||
| 		Port                 int            `ini:"SSH_PORT"` | ||||
| 		ListenHost           string         `ini:"SSH_LISTEN_HOST"` | ||||
| @ -915,6 +916,8 @@ func NewContext() { | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 	SSH.BuiltinServerUser = Cfg.Section("server").Key("BUILTIN_SSH_SERVER_USER").MustString(RunUser) | ||||
| 
 | ||||
| 	// Determine and create root git repository path. | ||||
| 	sec = Cfg.Section("repository") | ||||
| 	Repository.DisableHTTPGit = sec.Key("DISABLE_HTTP_GIT").MustBool() | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user