Scripts to orchestrate common tasks for DTR, such as creating Sprint Logs.
- Make sure you have Python 3.x (we use 3.8.5) and Pipenv installed.
- Clone the repo to your local machine.
- Install dependencies using
pipenv install
. To run scripts, start a virtual environment usingpipenv shell
. - Generate a
credentials.json
for the Google Drive v3 API and aservice_account.json
for the Google Spreadsheet API. Place both of these files at the root of the cloned repo. Note: these can be under the same project. See the instructions for setting up gspread to learn more.
This script is used to extract information from the Studio Database Google Spreadsheet for other scripts and tools. When run from the command line, it will download information from the Studio Database Spreadsheet, and parse it into a JSON file.
The script is run as follows:
python studio_db_to_json.py <studio_db_url> <sig_info_sheet_name> <proj_info_sheet_name>
For example:
python studio_db_to_json.py "https://docs.google.com/spreadsheets/d/1CqPVM11RhorBChGnhcYUNN02KMk5mhKEbuzQEY4vxQA/edit#gid=0" "SIG Info" "Proj Info"
This script is used to create Individal Progress Maps (IPMs) for a list of students specified in the command line argument, given a IPM template and an output directory.
The script is run as follows:
python create_ipm.py <ipm_template_url> <ipm_folder_url> "[\"list\", \"of\", \"students\"]"
For example:
python create_ipm.py "https://docs.google.com/spreadsheets/d/1AD5GSQ0K3gyblHPxOsP2E6b36DqLuW-WDqvi_GQSFN4/edit\?usp\=sharing" "https://drive.google.com/drive/u/1/folders/1rvw7IJKENjqsvLcQvb4tvld5L6skjSqH" "[\"Leesha Maliakal Shah\", \"Gobi Dasu\", \"Ryan Louie\", \"Kapil Garg\", \"Harrison Kwik\"]"
This script is used to create Sprint Logs for each student in DTR, given a Sprint Log template, output directory, and studio database with student and project information.
The script is run as follows:
python create_sprint_logs.py <sprint_log_template_url> <sprint_log_folder_url> <quarter_name> <studio_db_url> <sig_info_sheet_name> <proj_info_sheet_name>
For example, to create Sprint Logs for Fall 2020:
python create_sprint_logs.py "https://docs.google.com/spreadsheets/d/1o1bA6VzpeTfXIhT-PwB8wm7uFfAt6saISTAmGB67d2w/edit#gid=0" "https://drive.google.com/drive/u/1/folders/1fvmX54RwN5YDjMc1id9phsmB6OSvfKcQ" "F2020" "https://docs.google.com/spreadsheets/d/1CqPVM11RhorBChGnhcYUNN02KMk5mhKEbuzQEY4vxQA/edit#gid=0" "SIG Info" "Proj Info"
This script is used to create The Weekly spreadsheets for each student in DTR, given a The Weekly template, output directory, and studio database with student and project information.
The script is run as follows:
python create_the_weekly.py <the_weekly_template_url> <the_weekly_folder_url> <quarter_name> <studio_db_url> <sig_info_sheet_name> <proj_info_sheet_name>
For example, to create The Weekly for Fall 2020:
python create_the_weekly.py "https://docs.google.com/spreadsheets/d/1NT9GZIZgZy7A-vEXGfY3fASkGzCkxLnKSXRfQ8ep3jE/edit?usp=sharing" "https://drive.google.com/drive/u/1/folders/1IauKy_xd70Y1uwCqSPQTV3BaFwSOK-Ig" "F2020" "https://docs.google.com/spreadsheets/d/1CqPVM11RhorBChGnhcYUNN02KMk5mhKEbuzQEY4vxQA/edit#gid=0" "SIG Info" "Proj Info"
This script is used to create Mid-Quarter Check-In spreadsheets for each student in DTR, given a Mid-Quarter Check-In, output directory, and studio database with student and project information.
The script is run as follows:
python create_mqc_individual.py <mqc_template_url> <mqc_folder_url> <quarter_name> <studio_db_url> <sig_info_sheet_name> <proj_info_sheet_name>
For example, to create the Mid-Quarter Check-In for Fall 2020:
python create_mqc_individual.py "https://docs.google.com/spreadsheets/d/1GTXZZu7DVQxRa4mDsSD5OZivSwnv17nwAV6mroKztSs/edit?usp=sharing" "https://drive.google.com/drive/u/1/folders/1w-AK4hBoEwd_tZv-TMFabwpUgMR4RBB7" "F2020" "https://docs.google.com/spreadsheets/d/1CqPVM11RhorBChGnhcYUNN02KMk5mhKEbuzQEY4vxQA/edit#gid=0" "SIG Info" "Proj Info"
This script is used to create Mid-Quarter Check-ins for each project in DTR, given a Mid-Quarter Check-in template, output directory, and studio database with student and project information.
The script is run as follows:
python create_mqc_proj.py <mqc_proj_template_url> <mqc_proj_folder_url> <quarter_name> <studio_db_url> <sig_info_sheet_name> <proj_info_sheet_name>
For example, to create Mid-Quarter Check-ins for Fall 2020:
python create_mqc_proj.py "https://docs.google.com/spreadsheets/d/1o1bA6VzpeTfXIhT-PwB8wm7uFfAt6saISTAmGB67d2w/edit#gid=0" "https://drive.google.com/drive/u/1/folders/1fvmX54RwN5YDjMc1id9phsmB6OSvfKcQ" "F2020" "https://docs.google.com/spreadsheets/d/1CqPVM11RhorBChGnhcYUNN02KMk5mhKEbuzQEY4vxQA/edit#gid=0" "SIG Info" "Proj Info"
This script is used to create End-of-Quarter Self-Assessment spreadsheets for each student in DTR, given a template, output directory, and studio database with student and project information.
The script is run as follows:
python create_eoq_assessment.py <eoq-assessment_template_url> <eoq-assessment_folder_url> <quarter_name> <studio_db_url> <sig_info_sheet_name> <proj_info_sheet_name>
For example, to create End-of-Quarter Self-Assessments for Winter 2022:
python create_eoq_assessment.py "https://docs.google.com/spreadsheets/d/188qL45SYEmURRuLc-vV6VtlDQwOiWEaF01yVe_1CiTc/edit?usp=sharing" "https://drive.google.com/drive/folders/1lhGlnu5SY2_3tIFuckbxNDE0xEIGyFFL" "W2022" "https://docs.google.com/spreadsheets/d/1CqPVM11RhorBChGnhcYUNN02KMk5mhKEbuzQEY4vxQA/edit#gid=0" "SIG Info" "Proj Info"
This script is used to create End-of-Quarter Checklists for each project in DTR, given a checklist template, output directory, and studio database with student and project information.
The script is run as follows:
python create_eoq_checklist.py <eoq_checklist_template_url> <eoq_checklistfolder_url> <quarter_name> <studio_db_url> <sig_info_sheet_name> <proj_info_sheet_name>
For example, to create End-of-Quarter Checklists for Sprint 2022:
python create_eoq_checklist.py "https://docs.google.com/document/d/1AZcju1KmgREFn8QYDShK27nDYxp1ZqvU8BxyKp17a1I/edit?usp=sharing" "https://drive.google.com/drive/u/1/folders/1MhY7EmMSJYOoeBOgpAI9PkrcQJMAHleS" "S2022" "https://docs.google.com/spreadsheets/d/1CqPVM11RhorBChGnhcYUNN02KMk5mhKEbuzQEY4vxQA/edit#gid=0" "SIG Info" "Proj Info"