diff --git a/abgabesystem.py b/abgabesystem.py index 35cd919..e7a43f6 100644 --- a/abgabesystem.py +++ b/abgabesystem.py @@ -147,7 +147,14 @@ def sync_project(gl, course, student): except gitlab.exceptions.GitlabGetError as e: student_member = project.members.create({'user_id': student.user.id, 'access_level': gitlab.DEVELOPER_ACCESS}) - project.keys.create({'title': 'abgabesystem', 'key': open('abgabesystem.key.pub').read()}) + deploy_key = None + for k in gl.deploykeys.list(): + if k.key == course.deploy_key: + deploy_key = k + if deploy_key is None: + print('Missing deploy key. Add global deploy key and sync again') + else: + project.keys.enable(deploy_key.id) project.container_registry_enabled = False project.lfs_enabled = False project.save() diff --git a/config.yml b/config.yml index b20b6a3..f0768b3 100644 --- a/config.yml +++ b/config.yml @@ -6,3 +6,5 @@ course: name: test_course base: test_base students: Students.csv + deploy_key: + 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDKl2zu3ClMIOI6EhEi0qGjwCgEaWYfRl2149T45pcggnYc3CVln0FJhjXvWbfMU984TjJMw4X8dfeZpf9p7xtieAab6yz+vB6QTW1ur9Uge0Wv/D084Sdzb3FovC+Qr90d6BAd+A6+v/vEprTLnuX8McQuB4p8l6iimFrhmv4IdrD1W/y0AUEzdz/eXpsHavlqGrpb4oQ0aAnZq0qQ9cYAltcXKQzgLi7zoKJGNWR+gz4hfRfqme87+k0ABO3hWwcIuwm/XdHm9Z+hjZrPfqmZGJF71FasE9jymP0Si4sgQLjaX+qQh3ojubBN7RwhUo3zjFFFUL5/tLEIr42SGpXF abgabesystem'