Changeset - d83f41634d06
[Not reviewed]
default
0 2 0
Mads Kiilerich - 6 years ago 2019-07-16 12:30:15
mads@kiilerich.com
clone_url: introduce {system_user} and {hostname} variables that will be used for SSH clone URL
2 files changed with 12 insertions and 1 deletions:
0 comments (0 inline, 0 general)
kallithea/lib/utils2.py
Show inline comments
 
@@ -36,6 +36,7 @@ import uuid
 
import datetime
 
import urllib
 
import binascii
 
import pwd
 

	
 
import webob
 
import urlobject
 
@@ -414,6 +415,10 @@ def credentials_filter(uri):
 
def get_clone_url(clone_uri_tmpl, prefix_url, repo_name, repo_id, username=None):
 
    parsed_url = urlobject.URLObject(prefix_url)
 
    prefix = safe_unicode(urllib.unquote(parsed_url.path.rstrip('/')))
 
    try:
 
        system_user = pwd.getpwuid(os.getuid()).pw_name
 
    except Exception: # TODO: support all systems - especially Windows
 
        system_user = 'kallithea' # hardcoded default value ...
 
    args = {
 
        'scheme': parsed_url.scheme,
 
        'user': safe_unicode(urllib.quote(safe_str(username or ''))),
 
@@ -421,6 +426,8 @@ def get_clone_url(clone_uri_tmpl, prefix
 
        'prefix': prefix, # undocumented, empty or starting with /
 
        'repo': repo_name,
 
        'repoid': str(repo_id),
 
        'system_user': safe_unicode(system_user),
 
        'hostname': parsed_url.hostname,
 
    }
 
    url = re.sub('{([^{}]+)}', lambda m: args.get(m.group(1), m.group(0)), clone_uri_tmpl)
 

	
kallithea/templates/admin/settings/settings_visual.html
Show inline comments
 
@@ -46,7 +46,11 @@ ${h.form(url('admin_settings_visual'), m
 
                                                    {user}   current user username,
 
                                                    {netloc} network location/server host of running Kallithea server,
 
                                                    {repo}   full repository name,
 
                                                    {repoid} ID of repository, can be used to construct clone-by-id''')}</span>
 
                                                    {repoid} ID of repository, can be used to construct clone-by-id,
 
                                                    {system_user}  name of the Kallithea system user,
 
                                                    {hostname}  server hostname
 
                                                    ''')}
 
                    </span>
 
                </div>
 
            </div>
 

	
0 comments (0 inline, 0 general)