~azzar1/unity/add-show-desktop-key

« back to all changes in this revision

Viewing changes to ivle/makeuser.py

  • Committer: Matt Giuca
  • Date: 2009-04-28 10:43:41 UTC
  • Revision ID: matt.giuca@gmail.com-20090428104341-gb7721sqfr5zwmzz
ivle.makeuser: make_svn_auth now requires a config argument.

Show diffs side-by-side

added added

removed removed

Lines of Context:
126
126
    os.rename(temp_name, conf_name)
127
127
    chown_to_webserver(conf_name)
128
128
 
129
 
def make_svn_auth(store, login, throw_on_error=True):
 
129
def make_svn_auth(store, login, config, throw_on_error=True):
130
130
    """Setup svn authentication for the given user.
131
131
       Uses the given DB store object. Does not commit to the db.
132
132
    """
 
133
    # filename is, eg, /var/lib/ivle/svn/ivle.auth
 
134
    filename = config['paths']['svn']['auth_ivle']
133
135
    passwd = hashlib.md5(uuid.uuid4().bytes).hexdigest()
134
 
    if os.path.exists(ivle.conf.svn_auth_ivle):
 
136
    if os.path.exists(filename):
135
137
        create = ""
136
138
    else:
137
139
        create = "c"
139
141
    user = ivle.database.User.get_by_login(store, login)
140
142
    user.svn_pass = unicode(passwd)
141
143
 
142
 
    res = os.system("htpasswd -%smb %s %s %s" % (create,
143
 
                                              ivle.conf.svn_auth_ivle,
 
144
    res = os.system("htpasswd -%smb %s %s %s" % (create, filename,
144
145
                                              login, passwd))
145
146
    if res != 0 and throw_on_error:
146
147
        raise Exception("Unable to create ivle-auth for %s" % login)
147
148
 
148
149
    # Make sure the file is owned by the web server
149
150
    if create == "c":
150
 
        chown_to_webserver(ivle.conf.svn_auth_ivle)
 
151
        chown_to_webserver(filename)
151
152
 
152
153
    return passwd
153
154