CI: Chnage test versions combination (#213)

* CI: Change test versions combination

- test with python 3.9 on Github actions
- test with python 3.8 on Azure pipelines
- test against 5.9.9, 5.12.8, 5.13.2, 5.14.2, 5.15.2, and 6.1.0
- run on ubuntu-20.04 for Qt6
- CI: Test mac/ios/Qt6 combination
- CI: Azure: install desktop qtbase when android and ios install
- CI: update example project for Qt6

Signed-off-by: Hiroshi Miura <miurahr@linux.com>
This commit is contained in:
Hiroshi Miura
2021-02-12 00:01:42 +09:00
committed by GitHub
parent cbb45a8649
commit 9f1c83ce77
5 changed files with 33 additions and 43 deletions

View File

@@ -8,19 +8,16 @@ jobs:
strategy: strategy:
matrix: matrix:
os: [windows-latest, macOS-latest, ubuntu-latest] os: [windows-latest, macOS-latest, ubuntu-latest]
py: [3.6, 3.9] py: [3.9]
qtver: [5.9.9, 5.12.8, 5.15.2] qtver: [5.9.9, 5.12.8, 6.1.0]
include: include:
- os: ubuntu-20.04 - os: ubuntu-20.04
py: 3.9 py: 3.9
qtver: 6.0.1 qtver: 6.1.0
- os: windows-latest
py: 3.9
qtver: 6.0.1
exclude: exclude:
- os: windows-latest - os: ubuntu-latest
py: 3.6 py: 3.9
qtver: 5.15.2 qtver: 6.1.0
steps: steps:
- uses: actions/checkout@v1 - uses: actions/checkout@v1
with: with:
@@ -113,6 +110,8 @@ jobs:
if qtver.startswith('6'): if qtver.startswith('6'):
if platform == "windows-latest" and qtver.startswith('6'): if platform == "windows-latest" and qtver.startswith('6'):
qmake = os.path.join(qtver, 'android_armv7', 'bin', 'qmake.bat') qmake = os.path.join(qtver, 'android_armv7', 'bin', 'qmake.bat')
elif platform == "macOS-latest" and qtver.startswith('6'):
qmake = os.path.join(qtver, 'ios', 'bin', 'qmake')
else: else:
qmake = os.path.join(qtver, 'android_armv7', 'bin', 'qmake') qmake = os.path.join(qtver, 'android_armv7', 'bin', 'qmake')
try: try:

View File

@@ -19,7 +19,7 @@ jobs:
- job: MatricesGenerator - job: MatricesGenerator
displayName: Matrices Generator displayName: Matrices Generator
pool: pool:
vmImage: 'ubuntu-18.04' vmImage: 'ubuntu-20.04'
steps: steps:
- task: UsePythonVersion@0 - task: UsePythonVersion@0
inputs: inputs:
@@ -52,7 +52,7 @@ jobs:
- job: Linux - job: Linux
dependsOn: MatricesGenerator dependsOn: MatricesGenerator
pool: pool:
vmImage: 'ubuntu-18.04' vmImage: 'ubuntu-20.04'
strategy: strategy:
matrix: $[ dependencies.MatricesGenerator.outputs['mtrx.linux'] ] matrix: $[ dependencies.MatricesGenerator.outputs['mtrx.linux'] ]
steps: steps:
@@ -92,7 +92,7 @@ jobs:
displayName: Linux (source) displayName: Linux (source)
variables: variables:
PYTHON_VERSION: '3.8' PYTHON_VERSION: '3.8'
QT_VERSION: 6.0.0 QT_VERSION: 6.1.0
HOST: linux HOST: linux
TARGET: desktop TARGET: desktop
TOOL_NAME: src TOOL_NAME: src

Binary file not shown.

View File

@@ -23,12 +23,12 @@ class PlatformBuildJobs:
python_versions = [ python_versions = [
'3.7', '3.8',
] ]
qt_versions = [ qt_versions = [
'5.13.2', '5.13.2',
'5.14.0' '5.15.2'
] ]
linux_build_jobs = [] linux_build_jobs = []
@@ -53,31 +53,23 @@ for qt_version in qt_versions:
BuildJob(qt_version, 'mac', 'desktop', 'clang_64', "clang_64") BuildJob(qt_version, 'mac', 'desktop', 'clang_64', "clang_64")
) )
# Mac iOS, android
mac_build_jobs.extend(
[
BuildJob('5.15.2', 'mac', 'ios', 'ios', 'ios'),
BuildJob('5.14.2', 'mac', 'android', 'android', 'android')
]
)
# Windows Desktop # Windows Desktop
windows_build_jobs.extend( windows_build_jobs.extend(
[ [
BuildJob('5.14.2', 'windows', 'desktop', 'win64_msvc2017_64', 'msvc2017_64'), BuildJob('5.14.2', 'windows', 'desktop', 'win64_msvc2017_64', 'msvc2017_64'),
BuildJob('5.14.2', 'windows', 'desktop', 'win32_msvc2017', 'msvc2017'), BuildJob('5.14.2', 'windows', 'desktop', 'win32_msvc2017', 'msvc2017'),
BuildJob('5.13.2', 'windows', 'desktop', 'win64_msvc2015_64', 'msvc2015_64'), BuildJob('5.13.2', 'windows', 'desktop', 'win64_msvc2015_64', 'msvc2015_64'),
BuildJob('5.15.0', 'windows', 'desktop', 'win64_mingw81', 'mingw81_64'), BuildJob('5.15.2', 'windows', 'desktop', 'win64_mingw81', 'mingw81_64'),
# Known issue with Azure-Pipelines environment: it has a pre-installed mingw81 which cause link error. # Known issue with Azure-Pipelines environment: it has a pre-installed mingw81 which cause link error.
# BuildJob('5.15.0', 'windows', 'desktop', 'win32_mingw81', 'mingw81_32'), # BuildJob('5.15.0', 'windows', 'desktop', 'win32_mingw81', 'mingw81_32'),
BuildJob('5.15.0', 'windows', 'desktop', 'win64_msvc2019_64', 'msvc2019_64', module='qcharts qtnetworkauth'), BuildJob('5.15.2', 'windows', 'desktop', 'win64_msvc2019_64', 'msvc2019_64', module='qcharts qtnetworkauth'),
] ]
) )
# Extra modules test # Extra modules test
linux_build_jobs.extend( linux_build_jobs.extend(
[ [
BuildJob('5.15.0', 'linux', 'desktop', 'gcc_64', 'gcc_64', module='qcharts qtnetworkauth'), BuildJob('5.15.2', 'linux', 'desktop', 'gcc_64', 'gcc_64', module='qcharts qtnetworkauth'),
BuildJob('5.14.2', 'linux', 'desktop', 'gcc_64', 'gcc_64', module='all') BuildJob('5.14.2', 'linux', 'desktop', 'gcc_64', 'gcc_64', module='all')
] ]
) )
@@ -87,19 +79,22 @@ mac_build_jobs.append(
# WASM # WASM
linux_build_jobs.append( linux_build_jobs.append(
BuildJob('5.14.0', 'linux', 'desktop', 'wasm_32', "wasm_32") BuildJob('5.14.2', 'linux', 'desktop', 'wasm_32', "wasm_32")
) )
mac_build_jobs.append( mac_build_jobs.append(
BuildJob('5.14.0', 'mac', 'desktop', 'wasm_32', "wasm_32") BuildJob('5.14.2', 'mac', 'desktop', 'wasm_32', "wasm_32")
)
windows_build_jobs.append(
BuildJob('5.14.2', 'windows', 'desktop', 'wasm_32', "wasm_32")
) )
# android # mobile SDK
mac_build_jobs.extend(
[
BuildJob('5.15.2', 'mac', 'ios', 'ios', 'ios'),
BuildJob('6.1.0', 'mac', 'android', 'android_armv7', 'android_armv7')
]
)
linux_build_jobs.extend( linux_build_jobs.extend(
[ [
BuildJob('5.14.2', 'linux', 'android', 'android', 'android'), BuildJob('6.1.0', 'linux', 'android', 'android_armv7', 'android_armv7')
] ]
) )

View File

@@ -18,6 +18,13 @@ steps:
mkdir Qt mkdir Qt
cd Qt cd Qt
python -m aqt install $(QT_VERSION) $(HOST) $(TARGET) $(ARCH) python -m aqt install $(QT_VERSION) $(HOST) $(TARGET) $(ARCH)
if [[ "$(TARGET)" == "android" || "$(TARGET)" == "ios" ]]; then
if [[ "$(HOST)" == "windows" ]]; then
python -m aqt install $(QT_VERSION) $(HOST) desktop mingw81_64 --archives qtbase
else
python -m aqt install $(QT_VERSION) $(HOST) desktop --archives qtbase
fi
fi
workingDirectory: $(Build.BinariesDirectory) workingDirectory: $(Build.BinariesDirectory)
env: env:
AQT_CONFIG: $(Build.SourcesDirectory)/ci/settings.ini AQT_CONFIG: $(Build.SourcesDirectory)/ci/settings.ini
@@ -47,17 +54,6 @@ steps:
AQT_CONFIG: $(Build.SourcesDirectory)/ci/settings.ini AQT_CONFIG: $(Build.SourcesDirectory)/ci/settings.ini
condition: and(not(variables['TOOL_NAME']), not(variables['EXTERNAL']), ne(variables['MODULE'], ''), eq(variables['SUBARCHIVES'], '')) condition: and(not(variables['TOOL_NAME']), not(variables['EXTERNAL']), ne(variables['MODULE'], ''), eq(variables['SUBARCHIVES'], ''))
displayName: Run Aqt (With modules) displayName: Run Aqt (With modules)
- bash: |
number=$RANDOM
let "number %= 30"
sleep $number
mkdir Qt
python -m aqt install --outputdir $(Build.BinariesDirectory)/Qt $(QT_VERSION) $(HOST) $(TARGET) $(ARCH) -E "$(EXTERNAL)"
workingDirectory: $(Build.BinariesDirectory)
env:
AQT_CONFIG: $(Build.SourcesDirectory)/ci/settings.ini
condition: and(not(variables['TOOL_NAME']), variables['EXTERNAL'], eq(variables['SUBARCHIVES'], ''))
displayName: Run Aqt (With external 7zip)
- bash: | - bash: |
number=$RANDOM number=$RANDOM
let "number %= 30" let "number %= 30"