forked from AdaCore/libadalang
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.gitlab-ci.yml
78 lines (62 loc) · 1.96 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
include:
- local: utils/gitlab-ci-common.yml
variables:
UPSTREAM_PROJECT : eng/libadalang/langkit
UPSTREAM_PACKAGE_NAME: langkit.tar.gz
UPSTREAM_PACKAGE: $CI_PROJECT_DIR/$UPSTREAM_PACKAGE_NAME
PACKAGE_REPOSITORY_PROJECT: eng/libadalang/ci-packages
stages:
- single
build_and_test:
# This job works with the latest package containing the upstream project
extends: .basic
rules:
# Do not trigger it from branches that start with "sync/": these are tested
# from the Langkit CI.
- if: $CI_COMMIT_BRANCH =~ /^sync\//
when: never
- if: $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME =~ /^sync\//
when: never
# Run this for merge requests only
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
services:
- image:sandbox
- cpu:8
- mem:16
stage: single
script:
- !reference [.script_snippets, setup]
# Download the langkit package
- download_generic_package $PACKAGE_REPOSITORY_PROJECT $UPSTREAM_PACKAGE_NAME
- tar zxf $UPSTREAM_PACKAGE -C /
- rm $UPSTREAM_PACKAGE
# Build
- cd /it/wave
- mkdir -p fingerprints
- anod vcs --add-repo libadalang $CI_PROJECT_DIR
- touch fingerprints/x86_64-linux.langkit_support.install.json.assume-unchanged
- touch fingerprints/x86_64-linux.langkit.install.json.assume-unchanged
- anod build --minimal libadalang
- anod build --minimal laldoc
- anod build --minimal libadalang-doc
- anod build --minimal libadalang_for_customers
# Run the testsuite
- anod test --minimal libadalang
# Produce a XUnit report for GitLab
- e3-testsuite-report
--failure-exit-code 1
--xunit-output $CI_PROJECT_DIR/xunit_output.xml
--xunit-name Libadalang
x86_64-linux/libadalang_test/results/new/;
artifacts:
when: always
paths:
- xunit_output.xml
reports:
junit: xunit_output.xml
check_issue:
extends: .check_issue
stage: single
continuous_builder:
extends: .cb
stage: single