-
Notifications
You must be signed in to change notification settings - Fork 117
132 lines (96 loc) · 4.22 KB
/
build-test.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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
name: Build Test
on: [push, pull_request]
jobs:
build-debian-stable:
name: Debian Stable
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Create Build Environment
run: cd tests/ci/ && podman build -t appstream -f ./Dockerfile-debian-stable .
- name: Build
run: podman run -a stdout -a stderr -e COMPILER_VENDOR=$CVENDOR -e CC=gcc -e CXX=g++ -v `pwd`:/build appstream
./tests/ci/run-build.sh
- name: Test
run: podman run -a stdout -a stderr -e COMPILER_VENDOR=$CVENDOR -e CC=gcc -e CXX=g++ -v `pwd`:/build appstream
./tests/ci/run-tests.sh
build-debian-testing:
name: Debian Testing
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v3
- name: Create Build Environment
run: cd tests/ci/ && podman build -t appstream -f ./Dockerfile-debian-testing .
- name: Build
run: podman run -a stdout -a stderr -e COMPILER_VENDOR=$CVENDOR -e CC=gcc -e CXX=g++ -v `pwd`:/build appstream
./tests/ci/run-build.sh
- name: Test
run: podman run -a stdout -a stderr -e COMPILER_VENDOR=$CVENDOR -e CC=gcc -e CXX=g++ -v `pwd`:/build appstream
./tests/ci/run-tests.sh
build-fedora-latest:
name: Fedora Latest Stable
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Create Build Environment
run: cd tests/ci/ && podman build -t appstream -f ./Dockerfile-fedora-latest .
- name: Build
run: podman run -a stdout -a stderr -e COMPILER_VENDOR=$CVENDOR -e CC=gcc -e CXX=g++ -v `pwd`:/build appstream
./tests/ci/run-build.sh
- name: Test
run: podman run -a stdout -a stderr -e COMPILER_VENDOR=$CVENDOR -e CC=gcc -e CXX=g++ -v `pwd`:/build appstream
./tests/ci/run-tests.sh
build-fedora-rawhide:
name: Fedora Rawhide
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Create Build Environment
run: cd tests/ci/ && podman build -t appstream -f ./Dockerfile-fedora-rawhide .
- name: Build
continue-on-error: true # with a Git snapshot of GCC, this build is exceptionally flaky
run: podman run -a stdout -a stderr -e COMPILER_VENDOR=$CVENDOR -e CC=gcc -e CXX=g++ -v `pwd`:/build appstream
./tests/ci/run-build.sh
- name: Test
continue-on-error: true # with a Git snapshot of GCC, this build is exceptionally flaky
run: podman run -a stdout -a stderr -e COMPILER_VENDOR=$CVENDOR -e CC=gcc -e CXX=g++ -v `pwd`:/build appstream
./tests/ci/run-tests.sh
build-ubuntu:
name: Ubuntu LTS
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- name: Create Build Environment
run: sudo ./tests/ci/install-deps-deb.sh
- name: Update Meson
run: sudo pip install 'meson~=0.62'
- name: Build
run: CC=gcc CXX=g++ ./tests/ci/run-build.sh
- name: Test
run: CC=gcc CXX=g++ ./tests/ci/run-tests.sh
build-sanitized-debian:
name: Sanitizers on Debian
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Create Build Environment
run: cd tests/ci/ && podman build -t appstream -f ./Dockerfile-debian-testing .
- name: Build with asan, ubsan
run: podman run -a stdout -a stderr --privileged -e COMPILER_VENDOR=$CVENDOR -e CC=gcc -e CXX=g++ -v `pwd`:/build appstream
./tests/ci/run-build.sh sanitize
- name: Test with asan, ubsan
run: podman run -a stdout -a stderr --privileged -e COMPILER_VENDOR=$CVENDOR -e CC=gcc -e CXX=g++ -v `pwd`:/build appstream
./tests/ci/run-tests.sh sanitize
build-sanitized-fedora:
name: Sanitizers on Fedora
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Create Build Environment
run: cd tests/ci/ && podman build -t appstream -f ./Dockerfile-fedora-latest .
- name: Build with asan, ubsan
run: podman run -a stdout -a stderr --privileged -e COMPILER_VENDOR=$CVENDOR -e CC=gcc -e CXX=g++ -v `pwd`:/build appstream
./tests/ci/run-build.sh sanitize
- name: Test with asan, ubsan
run: podman run -a stdout -a stderr --privileged -e COMPILER_VENDOR=$CVENDOR -e CC=gcc -e CXX=g++ -v `pwd`:/build appstream
./tests/ci/run-tests.sh sanitize