.gitlab-ci.yml 2.7 KB
Newer Older
1
# # GitLab CI Job Configuration
2
#
3
4
5
# Goal: Run all jobs defined here on all available runners (GNU/Linux and
# Windows).
# 
6
7
8
# Procedure: Use GitLab job templates in ".gitlab/ci/templates/" and use them
# in the job description by using the "extend" keyword.
#
9
# ## Job Description Syntax
10
11
#
# <job_name>:                   # Job name which is displayed in web interface.
12
13
#   stage: <stage_name>         # Run "script" commands in this stage. The
#                               # stages are exececuted sequentially.
14
15
16
17
18
#   script:
#      - <arbitrary_commands>   # Here you can execute arbitratry terminal
#                               # commands. If any of the commands return a
#                               # non-zero exit code, the job fails.
#
19
# ## References
20
#
21
# - https://docs.gitlab.com/ee/ci/yaml/README.html
22

23
# Variable Definitions
24
25
variables:
    VADERE_DEPLOYMENT_BASE_URL: "http://www.vadere.org/builds"
26
    VADERE_PACKAGE_NAME: "vadere.${CI_COMMIT_REF_NAME}.${CI_ENVIRONMENT_NAME}.zip"
27

28
# Stage Definitions
29
stages:
30
31
    - unit_test
    - integration_test
Daniel Lehmberg's avatar
Daniel Lehmberg committed
32
    - deploy
33

34
35
include: .gitlab/ci/templates/deploy_stage_templates.yml
include: .gitlab/ci/templates/test_stage_templates.yml
36

37
# Job Definitions
38

39
40
41
42
43
44
45
# PLEASE, OMIT FOLLOWING GITLAB PITFALLS:
#
# 1. "include: .gitlab/ci/windows_jobs.yml" does not work!
#    Seems a bug in GitLab's "include" statement. Therefore, define all jobs
#    directly here.
# 2. Variables from "variables" section are not expanded correctly in "url"
#    section of an "environment".
46

47
# Jobs for GNU/Linux runner (which is labelled with tag "linux")
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
run_unit_tests_on_linux:
    extends: .template_unit_tests
    tags:
        - linux

run_scenario_files_on_linux:
    extends: .template_scenario_files
    tags:
        - linux

run_seed_test_on_linux:
    extends: .template_seed_test
    tags:
        - linux

63
64
65
66
67
68
deploy_branch_on_linux:
    extends: .template_deploy_branch
    tags:
        - linux        
    environment:
        name: linux
69
        url: ${VADERE_DEPLOYMENT_BASE_URL}/branches/vadere.${CI_COMMIT_REF_NAME}.${CI_ENVIRONMENT_NAME}.zip
70
71

# Jobs for Windows runner (which is labelled with tag "windows")
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
run_unit_tests_on_windows:
    extends: .template_unit_tests
    tags:
        - windows

run_scenario_files_on_windows:
    extends: .template_scenario_files
    tags:
        - windows

run_seed_test_on_windows:
    extends: .template_seed_test
    tags:
        - windows

87
88
89
90
91
92
deploy_branch_on_windows:
    extends: .template_deploy_branch
    tags:
        - windows        
    environment:
        name: windows
93
94
        # WATCH OUT: Variables from "variables" section are not expanded correctly here.
        url: ${VADERE_DEPLOYMENT_BASE_URL}/branches/vadere.${CI_COMMIT_REF_NAME}.${CI_ENVIRONMENT_NAME}.zip