Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Audit the Azure Pipelines build jobs #651

Open
ddalcino opened this issue Feb 13, 2023 · 3 comments
Open

Audit the Azure Pipelines build jobs #651

ddalcino opened this issue Feb 13, 2023 · 3 comments

Comments

@ddalcino
Copy link
Contributor

A CI test server, MS hosted, is provided by azure pipelines free plan.

1 Microsoft-hosted job with 1,800 minutes per month for CI/CD and 1 self-hosted job with unlimited minutes per month.

aqtinstall consumed 336 build minutes in total 360 build minutes in this month in my projects.

Maybe it's time to audit the jobs we have and remove anything that's not really high value. I just added 6 new jobs in #648, for a total of 49 Azure builds by my count. I'm sure we can find a few that we don't need anymore.

Originally posted by @ddalcino in #640 (comment)

@ddalcino
Copy link
Contributor Author

ddalcino commented Feb 13, 2023

Current full list of jobs (please excuse any spelling errors; I had to copy the list via OCR):

Mac install-qt 5.13.2 clang_64 for desktop
Mac install-qt 5.15.2 clang_64 for desktop
Mac install-qt 6.2.0 clang_64 for desktop (qtcharts qtnetworkauth)
Mac install-qt 5.14.2 clang_64 for desktop (qtcharts qtnetworkauth)
Mac install-qt 6.5.0 wasm_singlethread for desktop
Mac install-qt 6.5.0 wasm_multithread for desktop
Mac install-qt 5.14.2 wasm_32 for desktop
Mac install-qt 6.4.0 wasm_32 for desktop
Mac install-qt 6.4.0 ios for ios (qtsensors)
Mac install-qt 6.2.4 ios for ios (qtsensors)
Mac install-qt 6.4.1 android armv7 for android
Mac install-qt 6.1.0 android_armv7 for android
Mac install-tool for desktop
Windows install-gt 5.15.2 win32_msvc2019 for desktop
Windows install-qt 5.14.2 win32_mingw73 for desktop
Windows install-gt 5.13.2 win64 msvc2015_64 for desktop
Windows install-qt 5.15.2 win64_mingw81 for desktop
Windows install-qt 5.15.2 win64_msvc2019_64 for desktop (qtcharts qtnetworkauth)
Windows install-qt 5.9.0 win64_msvc2015_64 for desktop (qtcharts qtnetworkauth)
Windows install-qt 5.14.2 win64_mingw73 for desktop (spec=">1, <5.15")
Windows install-qt 6.5.0 wasm_singlethread for desktop
Windows install-qt 6.5.0 wasm_multithread for desktop
Windows install-qt 5.14.2 wasm_32 for desktop
Windows install-qt 6.4.0 wasm_32 for desktop
Windows install-qt 6.3.0 android_armv7 for android
Windows install-qt 6.4.1 android_x86_64 for android
Windows install-tool for desktop
Linux install-qt 5.13.2 gcc_64 for desktop
Linux install-qt 5.15.2 gcc_64 for desktop
Linux install-qt 5.15.2 gcc_64 for desktop (qtcharts qtnetworkauth)
Linux install-qt 5.14.2 gcc_64 for desktop (all)
Linux install-qt 5.15.2 gcc_64 for desktop (qtbase qttools qt icu)
Linux install-src 6.1.0 gcc_64 for desktop (qtlottie)
Linux install-doc 6.1.0 gcc_64 for desktop (gtlottie) (qtdoc)
Linux install-example 6.1.0 gcc_64 for desktop (qtcharts) (qtdoc)
Linux list 5.15.2 gcc_64 for desktop (spec=" <6")
Linux list 6.1.0 gcc_64 for desktop (spec=">6.0, <6.1.1")
Linux list 6.1.0 android_armv7 for android (spec=">6.0, <6.1.1")
Linux list 5.14.1 ios for ios (spec="<=5.14.1")
Linux list 5.13.1 win64_msvc2015 winrt_×64 for winrt (spec=">5.13.0, <5.13.2"')
Linux install-qt 5.14.2 wasm_32 for desktop
Linux install-qt 6.4.0 wasm_32 for desktop
Linux install-qt 6.5.0 wasm_singlethread for desktop
Linux install-qt 6.5.0 wasm_multithread for desktop
Linux install-at 6.1.0 android armv7 for android
Linux install-at 6.4.1 android arm64 v8a for android
Linux install-qt 5.12.11 gcc_64 for desktop (/t/Q)
Linux install-qt 5.12.11 gcc_64 for desktop (/some/super/long/arbitrary/path/to/some/super/long/arbitrary/path/...
Linux install-tool for desktop

One reasonable approach for pruning this list is to cut out versions of Qt 5 that are not LTS versions (5.9, 5.12, and 5.15). At present, Qt 5 hasn't been supported for a long time, but LTS versions 5.15 and 5.12 have received updates fairly recently. Qt 5.9 hasn't had support for a long time, but it's still fairly popular, and there are some edge cases that are only true for Qt 5.9, so IMHO it's worth testing.

Personally, I would advocate examining the non-LTS Qt 5 versions to see if they can be removed, particularly if they aren't testing anything that's already being tested elsewhere.

@miurahr
Copy link
Owner

miurahr commented Feb 14, 2023

I have an idea that we define two CI jobs.

  1. every days master and Pull-Request check that reduce numbers. (Is it engough with GH-actions ?)
  2. full test periodically (monthly?), and run just before release manually.

@miurahr
Copy link
Owner

miurahr commented Nov 14, 2023

Just proposed #735 to update CI trigger and schedule

  • Add more conditions for GitHub actions on Pull-Request and push to master
  • Weekly schedule for full matrix execution

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants