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

« back to all changes in this revision

Viewing changes to insert_exercise.py

  • Committer: wagrant
  • Date: 2008-07-23 02:42:54 UTC
  • Revision ID: svn-v3-trunk0:2b9c9e99-6f39-0410-b283-7f802c844ae2:trunk:935
userdb: Large changes:
 - Split out semesters into their own table.
 - Give semesters and enrolments an active flag.
   + Enrolments cannot be active if their semester is not.
 - Introduce the project set concept, to link groups to projects.
   + Groups and projects now reference a project set, not an offering.

Also update the DB access code to respect the group changes.

<FONT COLOR="red"><BLINK>

  ** WARNING: This migration will destroy all groups, enrolments and
              offerings. **

</BLINK></FONT>

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
 
 
2
import os
 
3
import pg
 
4
import sys
 
5
 
 
6
from common import db
 
7
 
 
8
if __name__ == "__main__":
 
9
    if len(sys.argv) < 2:
 
10
        print >> sys.stderr, "usage: %s filename ..." % sys.argv[0]
 
11
        print >> sys.stderr, "  insert the given filenames as exercises"
 
12
        sys.exit(1)
 
13
 
 
14
    conn = db.DB()
 
15
    for fname in sys.argv[1:]:
 
16
        if not os.access(fname, os.R_OK):
 
17
            print >> sys.stderr, "No permission to read %s" % fname
 
18
            continue
 
19
        spec = open(fname, "r").read()
 
20
 
 
21
        fields = {'identifier':fname, 'spec':spec}
 
22
        
 
23
        try:
 
24
            conn.insert(fields, 'problem', ['identifier', 'spec'])
 
25
        except Exception, e:
 
26
            print >> sys.stderr, "error inserting %s: %s" % (fname, repr(e))
 
27