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

« back to all changes in this revision

Viewing changes to setup/util.py

  • Committer: William Grant
  • Date: 2009-05-28 02:43:56 UTC
  • Revision ID: grantw@unimelb.edu.au-20090528024356-mlrhizz7omnr71hd
Test ivle.mimetypes.nice_filetype.

Show diffs side-by-side

added added

removed removed

Lines of Context:
34
34
__all__ = ['PYTHON_VERSION', 'copy_file_to_jail', 'RunError',
35
35
           'action_runprog', 'action_remove', 'action_rename', 'action_mkdir',
36
36
           'action_copytree', 'action_copylist', 'action_copyfile',
37
 
           'action_symlink', 'action_append', 'action_chown',
 
37
           'action_symlink', 'action_chown',
38
38
           'action_chown_setuid', 'action_chmod_x', 'action_make_private',
39
 
           'query_user', 'filter_mutate', 'get_svn_revision', 'InstallList',
 
39
           'filter_mutate', 'get_svn_revision', 'InstallList',
40
40
           'make_install_path', 'wwwuid']
41
41
 
42
42
# Determine which Python version (2.4 or 2.5, for example) we are running,
195
195
    if not dry:
196
196
        os.symlink(src, dst)
197
197
 
198
 
def action_append(ivle_pth, ivle_www):
199
 
    file = open(ivle_pth, 'a+')
200
 
    file.write(ivle_www + '\n')
201
 
    file.close()
202
 
 
203
198
def action_chown_setuid(file, dry):
204
199
    """Chowns a file to root, and sets the setuid bit on the file.
205
200
    Calling this function requires the euid to be root.
261
256
# Mime types which will automatically be placed in the list by InstallList.
262
257
installlist_mimetypes = ['text/x-python', 'text/html',
263
258
    'application/x-javascript', 'application/javascript',
264
 
    'text/css', 'image/png', 'image/gif', 'application/xml']
 
259
    'text/css', 'image/png', 'image/gif', 'application/xml', 'text/plain']
265
260
# Filenames which will automatically be placed in the list by InstallList.
266
261
whitelist_filenames = ['ivle-spec.conf']
267
262
 
296
291
    return os.path.join(rootdir, normpath)
297
292
 
298
293
class InstallList(object):
299
 
    # We build two separate lists, by walking www and console
300
 
    list_www = property(lambda self: build_list_py_files('www'))
301
 
 
302
294
    list_ivle_lib = property(lambda self: build_list_py_files('ivle'))
303
295
 
304
296
    list_subjects = property(lambda self: build_list_py_files('subjects',
320
312
    list_user_binaries = [
321
313
        "bin/ivle-enrol",
322
314
        "bin/ivle-enrolallusers",
 
315
        "bin/ivle-fetchsubmissions",
323
316
        "bin/ivle-listusers",
324
317
        "bin/ivle-makeuser",
325
318
        "bin/ivle-marks",
329
322
        "bin/ivle-config",
330
323
        "bin/ivle-createdatadirs",
331
324
        "bin/ivle-buildjail",
 
325
        "bin/ivle-addexercise",
 
326
        "bin/ivle-cloneworksheets",
 
327
        "bin/ivle-refreshfilesystem",
332
328
    ]