@@ -2,23 +2,80 @@ name: Build and Test
2
2
3
3
on :
4
4
push :
5
- branches : [ "master ", "migrate-ci" ]
5
+ branches : [ "main ", "migrate-ci" ]
6
6
pull_request :
7
- branches : [ "master" ]
7
+ branches : [ "main" ]
8
+ # Allow to run manually
9
+ workflow_dispatch :
8
10
9
11
env :
10
12
BUILD_TYPE : Release
13
+ XDG_RUNTIME_DIR : /tmp/openrw-runtimedir
11
14
12
15
jobs :
13
- build-and-test :
16
+ archlinux- build-and-test :
14
17
runs-on : ubuntu-latest
18
+ container :
19
+ image : docker.io/archlinux/archlinux:latest
15
20
strategy :
16
- matrix :
17
- distro : [ "ubuntu", "fedora", "archlinux" ]
21
+ fail-fast : false
18
22
steps :
23
+ - name : Install dependencies
24
+ run : |
25
+ pacman -Syy --noconfirm \
26
+ git-core core/gcc extra/llvm extra/clang make ninja curl \
27
+ extra/boost extra/cmake extra/ffmpeg extra/bullet community/glm \
28
+ extra/openal extra/sdl2 extra/qt5-base extra/freetype2
29
+ - name : Checkout
30
+ uses : actions/checkout@v4
31
+ with :
32
+ submodules : recursive
33
+ - name : Make runtime directory
34
+ run : mkdir -p ${XDG_RUNTIME_DIR}
35
+ - name : Build and test
36
+ run : mkdir build && cd build && ctest -VV -S ../cmake/ctest/script_ci.ctest
37
+ fedora-build-and-test :
38
+ runs-on : ubuntu-latest
39
+ container :
40
+ image : quay.io/fedora/fedora:latest
41
+ strategy :
42
+ fail-fast : false
43
+ steps :
44
+ - name : Install dependencies
45
+ run : |
46
+ dnf install -y git-core boost-devel gcc gcc-c++ clang llvm lcov curl \
47
+ boost-devel cmake make ninja-build bullet-devel ffmpeg-free-devel \
48
+ glm-devel openal-soft-devel SDL2-devel qt5-qtbase-devel \
49
+ freetype-devel libasan
19
50
- name : Checkout
20
51
uses : actions/checkout@v4
52
+ with :
53
+ submodules : recursive
54
+ - name : Make runtime directory
55
+ run : mkdir -p ${XDG_RUNTIME_DIR}
56
+ - name : Build and test
57
+ run : mkdir build && cd build && ctest -VV -S ../cmake/ctest/script_ci.ctest
58
+ ubuntu-build-and-test :
59
+ runs-on : ubuntu-latest
60
+ strategy :
61
+ fail-fast : false
62
+ steps :
21
63
- name : Install dependencies
22
- run : sudo apt-get update && sudo apt-get install -yq python3
23
- - name : Build and Test
24
- run : scripts/docker/docker_travis.sh "${{ matrix.distro }}_latest.docker"
64
+ run : |
65
+ sudo apt-get update && \
66
+ sudo apt-get install --no-install-recommends --no-upgrade -y \
67
+ git-core build-essential cmake ninja-build clang llvm lcov curl \
68
+ libavcodec-dev libavformat-dev libboost-program-options-dev \
69
+ libboost-system-dev libbullet-dev libglm-dev libopenal-dev \
70
+ libsdl2-dev libboost-test-dev libqt5opengl5-dev libfreetype6-dev \
71
+ iwyu qtbase5-dev qt5-qmake
72
+ env :
73
+ DEBIAN_FRONTEND : noninteractive
74
+ - name : Checkout
75
+ uses : actions/checkout@v4
76
+ with :
77
+ submodules : recursive
78
+ - name : Make runtime directory
79
+ run : mkdir -p ${XDG_RUNTIME_DIR}
80
+ - name : Build and test
81
+ run : mkdir build && cd build && ctest -VV -S ../cmake/ctest/script_ci.ctest
0 commit comments