Ce dépot permet de tester et évaluer une solution à un des exercices de mon cours Node.js.
Il utilise Docker pour exécuter le serveur de chaque étudiant dans un contexte isolé. (sandbox)
Pour récupérer la liste des dépôts git
rendus par les Ă©tudiants sur Google Classroom, utiliser adrienjoly/classroom-assignments-cli: a CLI to download assignements submitted by students on Google Classroom en amont.
$ npm install # installer les dépendances du script d'évaluation (test.js)
$ TESTER=test-ex-1-3.js ./test-in-docker-from-git.sh https://gitlab.eemi.tech/xxx/express-chatbot.git
$ ./list-grades.sh
# 1. Téléchargement des dépôts
$ git clone https://github.com/student1/repo.git --depth 10 ./student-repos/student1-repo
$ git clone https://github.com/student2/repo.git --depth 10 ./student-repos/student2-repo
# Évaluation des dépôts téléchargés
$ TESTER=test-ex-1-5.js ./eval-student-submissions.sh ./student-repos/*
$ ./list-grades.sh
Pro-tip: utiliser classroom-assignment-cli
pour générer ces scripts
# Commencer par suivre les instructions d'installation de classroom-assignment-cli, puis:
$ ./gclass generate-test-script <google_classsroom_id> <assignment_id>
$ source .env.sh # définit la variable d'environnement GH_TOKEN pour accéder aux dépôts privés, générée depuis https://github.com/settings/tokens
$ npm test