-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.gitlab-ci.yml
101 lines (95 loc) · 2.41 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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
stages:
- Preparation
- Run Software
- Persist Software Result
- Evaluate Software Result
- Persist Evaluation Result
prepare-tira-environment:
stage: Preparation
image:
name: webis/tira-git-pipelines:0.0.16
pull_policy: if-not-present
artifacts:
untracked: true
reports:
dotenv: task.env
script:
- tira-test-runner-is-trustworthy.sh
- tira-specify-task-to-run.py > task.env
- cat task.env
tags:
- tira-evaluator
run-user-software:
stage: Run Software
dependencies:
- prepare-tira-environment
artifacts:
untracked: true
reports:
dotenv: task.env
image:
name: "${TIRA_IMAGE_TO_EXECUTE}"
pull_policy: if-not-present
timeout: "24 hours"
variables:
KUBERNETES_CPU_REQUEST: ${TIRA_CPU_COUNT}
KUBERNETES_CPU_LIMIT: ${TIRA_CPU_COUNT}
KUBERNETES_MEMORY_REQUEST: "${TIRA_MEMORY_IN_GIBIBYTE}Gi"
KUBERNETES_MEMORY_LIMIT: "${TIRA_MEMORY_IN_GIBIBYTE}Gi"
TIRA_GPU: "0"
script:
- env|grep 'TIRA' > task.env
- test -n "${TIRA_OUTPUT_DIR}" && mkdir -p ${TIRA_OUTPUT_DIR}
- echo "${TIRA_COMMAND_TO_EXECUTE}"
- eval "${TIRA_COMMAND_TO_EXECUTE}"
- env|grep 'TIRA' > task.env
allow_failure: true
tags:
- tira-user-software-runner
- ${TIRA_GPU}-gpu
persist-software-result:
stage: Persist Software Result
image:
name: webis/tira-git-pipelines:0.0.16
pull_policy: if-not-present
artifacts:
untracked: true
reports:
dotenv: task.env
script:
- tira-persist-software-result.py
dependencies:
- run-user-software
tags:
- write-tira-data
evaluate-software-result:
stage: Evaluate Software Result
dependencies:
- persist-software-result
artifacts:
untracked: true
reports:
dotenv: task.env
image:
name: "${TIRA_EVALUATION_IMAGE_TO_EXECUTE}"
pull_policy: if-not-present
script:
- env|grep 'TIRA' > task.env
- test -n "${TIRA_EVALUATION_OUTPUT_DIR}" && mkdir -p ${TIRA_EVALUATION_OUTPUT_DIR}
- echo "${TIRA_EVALUATION_COMMAND_TO_EXECUTE}"
- eval "${TIRA_EVALUATION_COMMAND_TO_EXECUTE}"
- env|grep 'TIRA' > task.env
allow_failure: true
tags:
- tira-user-software-runner
persist-evaluation-result:
stage: Persist Evaluation Result
image:
name: webis/tira-git-pipelines:0.0.16
pull_policy: if-not-present
script:
- tira-persist-evaluation-result.sh
dependencies:
- evaluate-software-result
tags:
- write-tira-data