-
Notifications
You must be signed in to change notification settings - Fork 26
100 lines (92 loc) · 3.53 KB
/
build-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
name: Build SocNetV CI
run-name: ${{ github.actor }} testing latest SocNetV build with GitHub Actions 🚀
on: [push]
jobs:
example_matrix:
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-2019]
qt-version: ['6.5.3', '6.6.3']
exclude:
# some reason
- os: ubuntu-latest
qt-version: '6.5.3'
# some reason
- os: windows-2019
qt-version: '6.5.3'
# Qt6 builds of macOS are currently breaking
# because
# https://bugreports.qt.io/browse/QTBUG-117225
- os: macos-latest
qt-version: '6.5.3'
include:
- os: ubuntu-latest
qt-version: '6.6.3'
- os: windows-2019
qt-version: '6.6.3'
- os: macos-latest
qt-version: '6.6.3'
# Snapcraft
- os: ubuntu-22.04
qt-version: '6.5.3'
runs-on: ${{ matrix.os }}
steps:
- run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!"
- run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
- name: Check out repository code
uses: actions/checkout@v4
- run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner."
- run: echo "🖥️ The workflow is now ready to test your code on the runner."
- name: List files in the repository
run: |
ls ${{ github.workspace }}
#
# Install Qt
#
- if: contains( matrix.os, 'windows') && startsWith( matrix.qt-version, '6.' ) && matrix.qt-version != '6.2.4'
name: Install Qt 6 on Windows
uses: jurplel/install-qt-action@v4
with:
aqtversion: '==2.1.*'
version: ${{ matrix.qt-version }}
arch: win64_mingw
modules: qtwebsockets core5compat xml network widgets printsupport charts svg
- if: false == contains( matrix.os, 'windows') && startsWith( matrix.qt-version, '6.' )
name: Install Qt 6 on Linux/macOS
uses: jurplel/install-qt-action@v4
with:
aqtversion: '==2.0.0'
version: ${{ matrix.qt-version }}
modules: qtwebsockets core5compat xml network widgets printsupport charts svg
#
# Build SocNetV
#
- if: contains( matrix.os, 'ubuntu-latest')
name: Do Linux tests
run: |
echo "openssl version:"
echo `openssl version`
echo "Check output of 'which qmake6':"
which qmake6
echo "Check qmake6 -v:"
qmake6 -v
qmake6 CONFIG+=debug && make -s -j 8
echo "Building finished! "
echo "Files in current directory: "
find .
# qmake workaround: https://bugreports.qt.io/browse/QTBUG-117225?focusedId=754625&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-754625
# See https://github.com/pbek/QOwnNotes/issues/3018
- if: contains( matrix.os, 'macos')
name: Do macOS tests
run: |
qmake CONFIG+=debug socnetv.pro
mingw32-make
- if: contains( matrix.os, 'windows') && startsWith( matrix.qt-version, '6.' ) && matrix.qt-version != '6.2.4'
name: Do Qt 6.3+ Windows tests
run: |
qmake CONFIG+=debug socnetv.pro
mingw32-make
make
dir
- run: echo "🍏 This job's status is ${{ job.status }}."