abgabesystem/notes.md
2017-12-18 13:36:57 +00:00

1 KiB

Programmieren [1,2] Gitlab

Authentisierung

  • use GITZ LDAP for login
  • not allow "create new repo"

Checkstyle

  • GitLab CI
  • (Docker)container
  • Shared Runner
  • restrict Container to checkstyle
  • disable internet access for container

Deadline [at,cron]job

  • each repo has protected master branch -> used for handing in exercises
  • create automatic protected TAG on deadline in each repo
  • trigger protected runner via push to master repo
  • protected runner runs checks out TAG from all repos into /tmp and runs JPlag

(optional) sync script

  • (one-way) sync students and groups from Stud.IP REST API to Gitlab REST API
  • fork public repo with CI config etc into one private repo per student
  • give students Developer access
  • Owner is whoever
  • group tutors has Master access to all repos (students sometimes switch groups)
  • students Request Access to "Abgabepartner" repo, tutors can grant access