Commit Graph

115 Commits

Author SHA1 Message Date
Cristian Adam
1fdc358eef GitHub Actions: Add 10 retries for file download
I have noticed that some jobs fail due to missing ninja or ccache
executable.

With the 10 times retries I hope that these failures will go away.

Change-Id: I2d893e0c6cefc69bc4c5f841ae154d4f83f7a922
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-12-08 14:49:02 +00:00
Cristian Adam
5e8fd8d0f8 GitHub Actions: Limit the number of cores to 75% for testing
Hopefully this will help with the macOS host which tends to fail
at running tests with:

 The hosted runner: GitHub Actions X lost communication with the server.
 Anything in your workflow that terminates the runner process, starves
 it for CPU/Memory, or blocks its network access can cause this error.

Change-Id: I2ead1efd1526332cc2045fee7db4a76831f2e333
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-12-06 10:32:36 +00:00
Cristian Adam
e6957808ec GitHub Actions: Build macOS dmg file only on release
The regular builds should be as fast as possible.

Change-Id: I76b9ac009831192053f2163b1f73fb2183f3e791
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-11-30 12:06:19 +00:00
Cristian Adam
7f1b2bda9d GitHub Actions: Increase number of artifacts to search after cache
By default it's 30 per page and one page. Increasing to 100 per page
and trying out 10 pages should provide recent results.

Change-Id: I46d8e20a35f94d2ef81cc0bbead4bade66a17f5a
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-11-30 11:59:04 +00:00
Cristian Adam
4a41f97a48 GitHub Actions: Store ccache storage directory as artifact
GitHub Actions cache action uses the branch name to scope the file
caching, which when using with a gerrit bot can lead to cache
misses.

By using the cache storage as an artifact we can always get the
artifacts if previous jobs created them.

By upgrading to v2 of actions/download/upload artifact we remove
the v1 problem of the upload action that creates a directory name
with the name of the artifact, which leads to failed release
uploads.

Change-Id: I8cb8c3242b58f709f51202852ad45d42b833fa84
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-11-30 09:54:45 +00:00
Cristian Adam
8b341a4109 GitHub Actions: Ignore doc and dist changes
Also remove the pull_request support for github actions, since we
don't support the pull request workflow for contributions.

Change-Id: Ia0a1ab7c996f679195fde455c1f06911077d6deb
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-11-29 15:12:42 +00:00
Cristian Adam
478f68042b GitHub Actions: Fix failures when commit message had certain characters
The variable was not quoted and in certain cases the CMake code checking
for ccache clearing messages would error and the job would fail.

See 28a20b75bab8908e43ebf553a2ae2ef52775861b

Change-Id: I7703a547129b3294b6d8094035a272e5d35c5c60
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-11-23 17:19:40 +00:00
Cristian Adam
a4791debf0 GitHub Actions: Use actions/cache v1
Update to latest v1 actions/cache, instead of using a fixed version.
For example v1.1.1 increased the cache version from 2GB to 5GB!

Change-Id: Ib312016f5e0e07771451049cf2d4cd3ce0225837
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-11-23 16:09:51 +00:00
Cristian Adam
d177a20bb8 GitHub Actions: Separate ccache cache based on ide major version
This way master, which now is version 7 won't interfere with 6.0 branch
which will have version 6.

When branches share the same cache the ccache hit rate is now ~40%,
which is too low.

Reduce the ccache size so that the 5GB would host multiple branch
versions.

Change-Id: If29c917fb47f4e1fdab4b4257af8b0625f6f219e
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2021-11-21 11:08:17 +00:00
Cristian Adam
e58b8aee0c GitHub Actions: Update ccache to v4.5
Change-Id: I566addec66ab374963cbcc0e0a85be1b45597d24
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-11-15 08:52:40 +00:00
Cristian Adam
e51ee5e0ee GitHub Actions: Update Qt version to 6.2.1
Change-Id: I0b1bda8880620a17c51e43e5278dda5ced6be145
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-10-28 12:30:50 +00:00
Cristian Adam
4544d891aa GitHub Actions: Do not build qbs with Qt Creator
Due to the recent changes that broke the MinGW 8.1 compilation and
the qbs documentation python issues with both MinGW and MSVC.

Change-Id: I401c2a1bd8f31de8fc7e44bb060247df75d9d1a0
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-10-18 14:20:03 +00:00
Cristian Adam
824b4db70c GitHub Actions: Update Qt to 6.2.0
Change-Id: I657838699d95adc48c1b5b9b8e091a53369890f7
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-10-07 09:40:06 +00:00
Cristian Adam
6907d9c6b4 GitHub Actions: Update LLVM/Clang to version 13.0.0
Change-Id: I6f1b008da3ee511ab5494d7e8b0556036b14e64c
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-10-04 10:28:56 +00:00
Eike Ziller
6a02aa2574 Merge remote-tracking branch 'origin/5.0'
Change-Id: I75aab10a066ce0e2d322663db7723825043fa9c8
2021-09-22 13:31:25 +02:00
Cristian Adam
b7ad67ccdf GitHub Actions: Fix tag release upload of artifacts
runner.os for uploading of artifacts is always ubuntu, and therefore
the runner.os comparisons were not working as expected.

Change-Id: I9e2bb418d4fee47aaf57a096a23cbd554051d1df
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-09-20 12:48:36 +00:00
Cristian Adam
3c41665b80 GitHub Actions: Do not build with tests on release tags
This should match the official releases.

Change-Id: I075e977121ffcaa32de37a9505be6c6296d7258d
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-09-20 12:38:14 +00:00
Cristian Adam
1e92b2e25c GitHub Actions: Update ccache to version 4.4
Change-Id: Ia2796c695505395bf80e001d41c4288d4176dd55
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Alp Öz <aoz@qt.io>
2021-09-08 12:01:55 +00:00
Cristian Adam
8c4f5214f7 GitHub Actions: Update CMake and Ninja versions
Update CMake to version 3.21.1 and ninja to 1.10.2

Change-Id: I11d168e1ded1339b7a875b2a9f70848c7738cf27
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-08-04 10:22:26 +00:00
Eike Ziller
2485c31a48 Merge remote-tracking branch 'origin/4.15'
Conflicts:
	doc/qtcreator/src/qtquick/qtquick-from-qmlproject-to-pro.qdoc

Change-Id: I906330addb7de31e6ed88f88af3fd2adbbe53e1f
2021-05-31 16:13:47 +02:00
Cristian Adam
9237f66bc9 GitHub Actions: Fix Ubuntu Linux test runs
By using the "offscreen" platform plugin we can get away by not
having an X sesion for the default "xcb" plugin.

Change-Id: Ie274036f9f3efb2ec37a8dcbc0feb8a847788500
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-05-28 07:04:48 +00:00
Cristian Adam
4c2e7f4adc GitHub Actions: Update Clang to version 12.0
Change-Id: I6204f4a2a5142fff9e498dbb9fba5531f152fbc4
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-05-03 12:51:50 +00:00
Cristian Adam
8d54fb22bc GitHub Actions: Update ccache to version 4.2.1
Also display the ccache statistics as separate step and not
at the end of the build step.

ccache clear

Change-Id: Ia8b2ae4b73f2070ab6cf14ab704e5fc4200d49de
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2021-03-30 17:32:02 +00:00
Eike Ziller
9ab6992922 GitHub: Recursively checkout submodules
This will become necessary when qlitehtml is a submodule with litehtml
as a sub-submodule.

Change-Id: I8a2ca47d24bc4b4f3ff88908a49d3f1933ec59ea
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2021-02-12 13:31:04 +00:00
Cristian Adam
59eff8c813 GitHub Actions: Use default timeout for download
Change-Id: I5d089410fba432e6df78d31e3920b581c6682f97
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-01-26 09:35:25 +00:00
Cristian Adam
fae659b389 GitHub Actions: Update Qt version to 5.15.2
Change-Id: I7b841da3e0e0c820807167c5a2de57a969f11db6
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-01-25 15:05:48 +00:00
Cristian Adam
a819903d9d GitHub Actions: Add support for download.qt.io mirroring
Change-Id: Ia64e40e69bb2e897c0098002122d3bcb7476cb7e
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-01-20 14:47:47 +00:00
Ivan Komissarov
962918629b qbs: fix installing doc dependenices on macOS and Windows
python still aliases to python 2.7 on macOS, so we need a smarter way to
find python3.

Change-Id: I229d8c1e124fb599119991b44c0f6d88d39b1684
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-12-14 09:42:40 +00:00
Ivan Komissarov
d07ce92d0d qbs: Fix installing docs
Change-Id: I4f58d639bced972243faf4161697ec4e0a4b0d56
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-12-10 13:34:30 +00:00
Eike Ziller
093d5f5ab1 Build in release mode on GitHub
Add option to build scripts to override build type, so it can be
freely chosen.
Build in release mode on GitHub - RelWithDebInfo was too big.

Amends b1640074e3

Change-Id: Ibba6e60d4e9b2eee24e789bfd28bddffb1e782f6
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-11-12 16:22:19 +00:00
Cristian Adam
6c841dfbd0 GitHub Actions: Update to use Clang 11.0.0
Change-Id: I015a71a4f53ff3be8609a00bdef47c93161af882
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-10-26 12:47:46 +00:00
Cristian Adam
ee735e308e GitHub Actions: Set timeout for running tests
Timeout of 5s for tests that do not have the TIMEOUT property,
and 600s for the whole teset suite.

Change-Id: Ie58f1ec2f657448a963bf51d6e93cad142603120
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-10-21 20:51:28 +00:00
Eike Ziller
75adba735b CMake build: Build Qbs if the submodule is available
Includes update of Qbs to current head of master, which enables this
feature on the Qbs build system side.

Fixes: QTCREATORBUG-23905
Change-Id: I9a537b640b7f7a753839ace3e44d174c8e0af526
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
2020-10-09 14:27:54 +00:00
Cristian Adam
7ffbfa817e GitHub Actions: Make use of GitHub Environment Variables
See https://github.blog/changelog/2020-10-01-github-actions-deprecating-set-env-and-add-path-commands/

Change-Id: I520da0751fbf4a6b0db7df68696ed72190093803
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-10-07 08:03:06 +00:00
Cristian Adam
1e8f19e274 GitHub Actions: Add ability to clear ccache
By specifying "ccache: clear" or "ccache: clean" in the commit message,
the workflow will issue a ccache --clear command before building.

Change-Id: I9e45ebcd8dc4b05cef9d6d7ea70bef67602d1223
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-09-27 20:05:07 +00:00
Cristian Adam
828266d8a1 GitHub Actions: Mark compiler errors, and test failures as annotations
The annotations are visible for everybody, and very convenient for looking
after errors / test failures.

Change-Id: Idb7d1e63b3611063268b4e6e490195ccb9d2b221
Reviewed-by: hjk <hjk@qt.io>
2020-09-25 12:42:59 +00:00
Cristian Adam
8d760eff8f GitHub Actions: Update Qt, CMake, Ninja versions
Also double ccache size.

Change-Id: I53f9eb5bfed8d3788e813ac194bffadf1f3fa19a
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-09-11 15:24:11 +00:00
Cristian Adam
d6c3846ab1 CMake Build: Add Google Testing 1.10.x as submodule
Fixes: QTCREATORBUG-24510
Change-Id: I763d72524f2e581671e18bcd9cda42d5bf7bccdf
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-08-19 15:50:37 +00:00
Eike Ziller
24e7d042ba Github: Set macOS deployment target to 10.13
Change-Id: I4b8b29a083b3b0884326c8a96aad9d80f2eebf16
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-07-17 06:31:11 +00:00
Eike Ziller
ea08857a8b Github: Build perfparser
Change-Id: I5b6213be303ac3ce70c53d95a04a13bf59ed5368
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-07-02 15:32:12 +00:00
Eike Ziller
bc4c2f8a15 Use the packaging script for the github action
Unifies a bit of what is done. For example this adds documentation and creates a disk image for
macOS. It will also make adding perfparser/elfutils and 32bit wininterrupt and qtcreatorcdbext
easier.

Adds Qt translations.
Adds some useful options to build.py and make it work with python3
Disables detection of debug vs release build in deployqt.py on Windows
if dumpbin is not there (for MinGW).

Change-Id: I3cc33144cad653823321209c219d220eb75093ec
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-06-25 16:37:28 +00:00
Cristian Adam
e98dfe4d14 GitHub Actions: Update libclang to 10.0.0
Change-Id: I40850933a040084b15ec9861b928a473c878a050
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-06-15 11:34:51 +00:00
Cristian Adam
07d825bd4c GitHub Actions: Update Qt version to 5.15.0
Change-Id: I6da4c9a2b0d0b86729c19e8db3ac345d2d45666c
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-05-28 14:31:31 +00:00
Cristian Adam
12272a392d GitHub Actions: Update Qt, CMake, Ninja versions
Change-Id: If38ad9d521fd25429a2e923219f978ddb40b9117
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-04-08 21:17:12 +00:00
Eike Ziller
9eceb46739 Fix link on commit sha in about dialog
Passing a URL via defines breaks when trying to "stringify" it.
It would always stop at the first slash.
Instead use a qmake variable directly. That has the additional advantage that
the value isn't passed on each and every compiler command line.

Change-Id: I97a297fbcdee5ea03eb6fa08181c95b1ad2de767
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-03-23 07:14:27 +00:00
Cristian Adam
63b0c79a46 GitHub Actions: Add OpenSSL to resulted test artifacts
Change-Id: Ieec647abc87f87de79ef07c12378a2a32e783d8e
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-02-21 16:08:42 +00:00
Cristian Adam
ea7d59e58a GitHub Actions: Display tests pass rate as warning annotation
Change-Id: I7d9970067b786f34fc29c82f85c5fc31f6d02704
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-02-21 10:42:46 +00:00
Cristian Adam
eed49de35b CMake Build: Use install component Dependencies
Fixes: QTCREATORBUG-23593
Change-Id: If9861a0ee09f2ce12ac093c2fde600a77958723a
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-02-12 09:30:05 +00:00
Alessandro Portale
1a0af1ca22 CMake Build: Let the version dialog log link point to the repo of origin
https://github.com/<qtcreator-fork>/commits/<sha>

Instead of expecting a "%1" placeholder in the passed-in
IDE_REVISION_URL_STR, we now expect IDE_REVISION_URL_STR to be a plain
URL.

Reason is that passing a string containing "%1" from CMake to the
VersionDialog caused a premature replacement of that placeholder
somewhere on the way.

Also log the CMake configure call in build_cmake.yml

Change-Id: I4c1a946c66f891101576e3556ca87a004cead950
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-02-10 12:09:18 +00:00
Cristian Adam
8d767a3a21 CMake Deployment: Remove Dependencies component
- Install will also copy the dependencies.
- Made the dependencies search recursive, not just two steps
- Moved install code to a script, not having to escape quotes and dollars

Change-Id: I6c5fb19e4094e9dcd4b339d5b90be6e7c5055223
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-02-06 18:03:33 +00:00