From 9f1c83ce773e94e4b6f9592c35ebfacd459e697a Mon Sep 17 00:00:00 2001 From: Hiroshi Miura Date: Fri, 12 Feb 2021 00:01:42 +0900 Subject: [PATCH] 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 --- .github/workflows/test-install-qt.yml | 17 ++++++------ azure-pipelines.yml | 6 ++-- ci/accelbubble.7z | Bin 3464 -> 3466 bytes ci/generate_azure_pipelines_matrices.py | 35 ++++++++++-------------- ci/steps.yml | 18 +++++------- 5 files changed, 33 insertions(+), 43 deletions(-) diff --git a/.github/workflows/test-install-qt.yml b/.github/workflows/test-install-qt.yml index c862355..b35b412 100644 --- a/.github/workflows/test-install-qt.yml +++ b/.github/workflows/test-install-qt.yml @@ -8,19 +8,16 @@ jobs: strategy: matrix: os: [windows-latest, macOS-latest, ubuntu-latest] - py: [3.6, 3.9] - qtver: [5.9.9, 5.12.8, 5.15.2] + py: [3.9] + qtver: [5.9.9, 5.12.8, 6.1.0] include: - os: ubuntu-20.04 py: 3.9 - qtver: 6.0.1 - - os: windows-latest - py: 3.9 - qtver: 6.0.1 + qtver: 6.1.0 exclude: - - os: windows-latest - py: 3.6 - qtver: 5.15.2 + - os: ubuntu-latest + py: 3.9 + qtver: 6.1.0 steps: - uses: actions/checkout@v1 with: @@ -113,6 +110,8 @@ jobs: if qtver.startswith('6'): if platform == "windows-latest" and qtver.startswith('6'): 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: qmake = os.path.join(qtver, 'android_armv7', 'bin', 'qmake') try: diff --git a/azure-pipelines.yml b/azure-pipelines.yml index ff553a7..0e5ebf6 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -19,7 +19,7 @@ jobs: - job: MatricesGenerator displayName: Matrices Generator pool: - vmImage: 'ubuntu-18.04' + vmImage: 'ubuntu-20.04' steps: - task: UsePythonVersion@0 inputs: @@ -52,7 +52,7 @@ jobs: - job: Linux dependsOn: MatricesGenerator pool: - vmImage: 'ubuntu-18.04' + vmImage: 'ubuntu-20.04' strategy: matrix: $[ dependencies.MatricesGenerator.outputs['mtrx.linux'] ] steps: @@ -92,7 +92,7 @@ jobs: displayName: Linux (source) variables: PYTHON_VERSION: '3.8' - QT_VERSION: 6.0.0 + QT_VERSION: 6.1.0 HOST: linux TARGET: desktop TOOL_NAME: src diff --git a/ci/accelbubble.7z b/ci/accelbubble.7z index a012e0d7db66a281aeb4bd8ed20deb5e00329ace..585ac5d5145e8960c18e94de11c3500436064182 100644 GIT binary patch delta 1845 zcmV-52g>+}8;TnxH+sCUCma9-Av%Z{M-2b~00000BLDyZ00000Z@8C=;6>LAHnAmb z27d(yV}a7r2P2^IKr)+uLnC00VRIC5ny-1fU&oC_0#nf}-eK2X4o}SZQXX|kSR-{T z=9kqOI{Xe#^A{c}zMCtB^okkbO{o_Bv_y1{s z>A}+Pj68PKB@L6XUu>DU@7YO&aCA>pynj~_c&OfJ56~iHi=a5#iXer;O|TI~1gWn0 z+~_jcGQjRIY|7W?5LuQpkU28g!k}>{TR`#9KpD|o+`TqY?X-`mv1t|Ne%hv~jj47! zD!Z7X;5z5>D>nbXh7J9mpIp;QE7yE<_LU*&N1gUv@WBC*F;Cuox zh)(1+xGU8{yKuC%*CvU$v>Mh3f+WvHtMg`oU^25#D^K;@MS&xcAZQy!wN%BI%)>5S zX2R$L{u(pEujlMK!1C%+88z2albYF)ffixg7`(N-P;l{9N{`?Q-9^YqQN_2 zO~Ght{D2M!AfMQX$cO^=Mt@J%YNEKESY0y^LBVzThE?(i3G0D0VRW^&V$HZ5^vpDR z?WYn~%v@ix_xGQUx^WCy`Xln%Ne{4s3zmMQHixx>`!v+--HU7eO2_&coF3-zddNzF#szVOY)E5ddCIn z9w`&wsK3IbR$QA=!G8ua`e!4~4le$)=?O>;ZGQ*ogR2?UJSbq}5d{l8O1G^+?HEfg zH-_YkoqB0Lozt?_fwnkHv)j^Lj(+RoXM%$I#f}xvwGPtn*{mxi{Ph8x%g^JL5*I4z zUdkBnsM1E(9hMy}7XEs9$lkZ;-qFnzByo%{jXRSS)!b@+IT z8q4Q1aaVAo)pU3n8vNs}7+IBy#&y(@hv*O--KF}g5M~t6d;C>ZQ$?HP6q&RBY!p8K==^Z3=ibqJi3ygH)>^ ztT?BOApXhON%8@#-(?0~iJKYwB*9|3scBs#Bw5pgRvyag_D z=~#gptzI}b7Le26dEGQ@D|}*d1~PDp9s3tHqLtzAeW`hPh9iqA!EX?CzvVl#>Y={J zFsOixFh?=uY(i|!O3_r;)Sg7%d^x#Jbdx%rNDa(!yGQt`iNk=U-3%sIn>tb)7lm>~ z)Dp4I(0^F=962v^>FE^aViks0UUMJ%CtNZDKvDiC@Rh#&bAesVUzTznfAcQ>zh510 zt<7q`z)_Yrg_4*orB|?tSOr*-ssq&@p6Q2W=%!Z)PAQa-N%p`10001iGY75@)v`AT zmn75vvv48^*-3>H9;n#G7L+NlH(?-?a`(+Xynhih?R|sJyME05^v!4yz)rU~k(c&) zFW6DzVdHdAs6tWKY$KODk5<;RjL->v?Z_jrrl<3mx)|liS!)q(i(W{&f*iC!Ys1CU zv<51+6BeEN zdw=RDb3%gY>gg)!)WbNat%PIL(vPCXYYe8CPtrN@13mLoJua|6A;uuFF4@LAz!PxV z{7XIBO^c>fjm%qU0uo_*ow<^f(MZK#m5sdpI7_jCTzeBZ_?tU@h07UuJ00AQd0RaVF01yBG41&%I0S5N72L1p5#72Gx delta 1826 zcmV+-2i^FJ8;BbvH+sCUCma9-#sD1IMGXJ|00000BLDyZ000007fCm{;6>jIII$&d z27dsNIURF3HeGjfMTFYX(%=qo$)nhQ+S1Cc)UQ%!U!R%nTV z?1jbte!V1s)xYa8m;f>G^7mz^yRTCytbZ1XCsD3F?HUkQw9ZLD^Y;z9c4mOWOf7^A zZ1b>aIjC9$__2eXy59~V$0fepiJ;D$ZEB+cf?d618}POiqhD!IhePs7dL-2ow~@$t zNm*>o9WV&tIwdTh9_&7GQ;?d#!b4p?MC4?M5CU`$VluVen{}P^6&U?`EK>MpnSTc7 za1JjZ{WKX*{o*(xtp*c8_`EU?D%jz7) zV#Gr=Ok8r^p+YKmNsGy@>-`wX*^qpqB}bLdN4ID zwg;<{kLbNQtI_B%a3Bx|xn|WJM=Ma!A^b52J#t>|M*$FG@jVG~X=c|ps{IQ0>tYio zBKA{uH#q_XXgBrOsDbuPF?rY|a#bhj(T0p8q;o~Vz%cDx@3b@iwUcn^et%NFYK6aU z$|C2eJMv#-Wm;qa*Z^mf$b7;<8{Vq{>o62FQHn{%GH%`rS0oCpe8qO zxoFHpL)2Ty8R{zxz_xd`VqnjXVxEAqztTK87*u?mMUtW(-)jFJ4Rv!5vhzNeA*td( z5N>41MyB!_ECgq5?I1PvtbaSXM;)!2NADF7^$;htHVr8AhUg6=26O+^)Wg)zAaUl* zZ!0e_y0s=KN-u!^`i#u@RXE?N8zC0GLnIw?)MU9XAR4Id-Fuc7K0>m3al1Lz+9>4s}h-Ya{qKvxI*e4~i^TZ`{n`iyxeQ*MCtD*Q>|ELuB@v zaqrPVMRWc*j-4rOMp;DRmmZ7JiXIU6!7ZB2Kk&gOyop+VS8xlC{m?50)bv0YHpk$X zR#~l~XBD8e1cEH`yYAn0P~1gR8@FT7_~&|BND|vsh$G+;%<2*-Km zk(VVFLQBOrBQbUiZCnuF(ROfO7W+>h!Mz+_Wij}rL5*%Ry{1s zvp8n%1+Ya&gE~F`r(Y2qTNaQZs>%UA(gQGkfU0AQ!@bNB7^(`A+t0v^DXLVGf{40Y z$yPfGiWr1luR*z1XVuW4((x9jA44_uM#d}tP(K`6B!2^q4G;L76Y?yrkT5exCHYF=a+o>AJ zJ(?&$#DDfO?dT<951rAy4`fY6zu;ST^qa^~IO%Gi77n0+hpTp?1H})wQUZR;}ko{mTOfS9JgY0D&_Ht`F6+ zLSYvq)Bdw?7O`Bns6}AvfcEYU$<_`G%#oJ;0DpA7hbd1nTrHqpO9;8cbcUU4?&1o^ z57@zZ9bRWR^BxL~9ncApZL7@XT>mVs`}~l|y^P~_**UHL^ddYnU}J%T6>+ifRwY*x z)jw?|4nc&X%>xI26_BC#)tos0rR3emdmi)VN*g3br|5|?IGw+c%x?&aYJ`RRp0O8T z8E8m-#B)ac=Z&RBOOIlysFZWqGW1*D+#xP2I$U*N9tG2uON#a&)=R1;uKfScwfJ|h zvhf3{IPaoX^4|(>VJwG8tr+R`yQ4--uVXzq8?E>oBX=4$Y#1q~0y};U000*Tj6eYi Qfd!Lq4HX9Y#ACYv04H^AY5)KL diff --git a/ci/generate_azure_pipelines_matrices.py b/ci/generate_azure_pipelines_matrices.py index 78f4734..2d9e6ae 100644 --- a/ci/generate_azure_pipelines_matrices.py +++ b/ci/generate_azure_pipelines_matrices.py @@ -23,12 +23,12 @@ class PlatformBuildJobs: python_versions = [ - '3.7', + '3.8', ] qt_versions = [ '5.13.2', - '5.14.0' + '5.15.2' ] linux_build_jobs = [] @@ -53,31 +53,23 @@ for qt_version in qt_versions: 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_build_jobs.extend( [ BuildJob('5.14.2', 'windows', 'desktop', 'win64_msvc2017_64', 'msvc2017_64'), BuildJob('5.14.2', 'windows', 'desktop', 'win32_msvc2017', 'msvc2017'), 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. # 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 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') ] ) @@ -87,19 +79,22 @@ mac_build_jobs.append( # WASM 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( - BuildJob('5.14.0', 'mac', 'desktop', 'wasm_32', "wasm_32") -) -windows_build_jobs.append( - BuildJob('5.14.2', 'windows', 'desktop', 'wasm_32', "wasm_32") + BuildJob('5.14.2', 'mac', '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( [ - BuildJob('5.14.2', 'linux', 'android', 'android', 'android'), + BuildJob('6.1.0', 'linux', 'android', 'android_armv7', 'android_armv7') ] ) diff --git a/ci/steps.yml b/ci/steps.yml index ee91caf..27aa278 100644 --- a/ci/steps.yml +++ b/ci/steps.yml @@ -18,6 +18,13 @@ steps: mkdir Qt cd Qt 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) env: AQT_CONFIG: $(Build.SourcesDirectory)/ci/settings.ini @@ -47,17 +54,6 @@ steps: AQT_CONFIG: $(Build.SourcesDirectory)/ci/settings.ini condition: and(not(variables['TOOL_NAME']), not(variables['EXTERNAL']), ne(variables['MODULE'], ''), eq(variables['SUBARCHIVES'], '')) 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: | number=$RANDOM let "number %= 30"