-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.gitlab-ci.yml
77 lines (65 loc) · 1.5 KB
/
.gitlab-ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# !!! DO NOT EDIT THIS FILE !!!
#
# Contents of this file are cryptographically signed and the signature is validated by CI.
# Even a slight change (even a single whitespace change) will make the signature invalid and the CI pipelines will stop working for you.
# If that happens you have to restore the original content of this file.
image: ${CI_REGISTRY}/bi-ppa/autograder/ppa-tester:latest
stages:
- test
- grades
.def.lambda: &def_lambda
only:
- hw_lambda
.def.racket: &def_racket
only:
- hw_racket
.def.prolog: &def_prolog
only:
- hw_prolog
.before:
before_script:
- test -z ${CI_COMMIT_BRANCH+x} && exit 1
.test:
extends: .before
stage: test
tags:
- bi-ppa-autograder
script:
- ppa-tester.py -vv -w "$(pwd)" -t "/app/homeworks/${CI_COMMIT_BRANCH}.yml" --results-log "results.txt"
artifacts:
paths:
- results.txt
when: always
expire_in: 3 months
allow_failure: true
.grades:
extends: .before
stage: grades
tags:
- bi-ppa-autograder-grades
script:
- ppa-grades.py -t "/app/homeworks/${CI_COMMIT_BRANCH}.yml" --results-log "results.txt"
lambda:test:
<<: *def_lambda
extends: .test
lambda:grades:
<<: *def_lambda
extends: .grades
dependencies:
- lambda:test
racket:test:
<<: *def_racket
extends: .test
racket:grades:
<<: *def_racket
extends: .grades
dependencies:
- racket:test
prolog:test:
<<: *def_prolog
extends: .test
prolog:grades:
<<: *def_prolog
extends: .grades
dependencies:
- prolog:test