create_roster.py -- Python script that reads CSL roster file and creates the id_scanner_roster.csv as needed by exam_checkin tool author: Deb Deppeler, deppeler@cs.wisc.edu date: Spring 2017, 5/11/2017 rev: Fall 2021, 10/26/2021 OUTPUT: (existing files are overwritten): =============================================================================== id_scanner_roster.csv - has format needed for ID Scanner tool (no apostrophes) =============================================================================== INPUT: =============================================================================== /p/course/rosters/cs400-deppeler/cs400-001-000.csv /p/course/rosters/cs400-deppeler/cs400-002-000.csv =============================================================================== login,netid,isis_univid,photo_id,isis_emplid,last_name,first_name,middle_name,campus_email,ferpa_flag deppeler,deppeler,9011234567,9011234567,0005551234,Deppeler,Debra,,deppeler@wisc.edu,False Note: instructor must have read access to other instructor roster files cd /p/course/rosters/cs400-other_instructor fs sa . other_instructor:cs400-tas read pts membership adduser deppeler other_instructor:cs400-tas --------------------------------------------------------------------------- Setup and Configuration (Linux terminal instructions) 1. Launch Linux terminal window and navigate to your course directory 2. Create a rosterDir with copies or symbolic links to all CSL rosters that you wish to merge For example: /p/course/cs400-deppeler/private/rosters/ Contains symbolic links and read-only access to: /p/course/rosters/cs400-deppeler/cs400-001-000.csv /p/course/rosters/cs400-deppeler/cs400-002-000.csv /p/course/rosters/cs400-kuemmel/cs400-003-000.csv 3. Download attached Python script create_roster.py to a directory that will contain rosters a. Create directory for create_roster.py script and supporting files b. copy the script to this directory c. Make the script executable: chmod 755 create_roster.py 4. Edit last few lines of create_rosters.py with your course specific details. a. courseNum (i.e. cs400) b. rosterDir (i.e. /p/course/cs400-deppeler/private/rosters/) Before each exam 5. Run script ./create_rosters.py