Commit Graph

64 Commits

Author SHA1 Message Date
Vadim Zeitlin
54f3264886 Use latest version of ccache action in GitHub CI workflow
It has a number of fixes and it makes sense to standardize on this
version before starting to use it in the other workflows too.
2022-03-29 21:00:57 +02:00
Vadim Zeitlin
7e45373e16 Add a simple workflow for updating HTML docs online
Run doxygen and copy the generated files to docs.wxwidgets.org.

Ignore the new workflow in all the existing CI ones, as changes to it
shouldn't require rerunning them.

See #19126.
2022-03-28 00:54:46 +02:00
Vadim Zeitlin
8f1e277833 Ignore changes to GitHub issue templates in the CI builds
Unfortunately they will still run once when this commit is done, but at
least they won't run in the future when templates are modified.
2022-01-14 01:42:13 +01:00
Vadim Zeitlin
cd385cf22d Trivial change to test rebuilding using ccache
Change the workflow file to trigger rebuild without affecting the other
builds.
2021-11-09 13:29:57 +01:00
Vadim Zeitlin
6e96c6dda0 Add "Show build environment" step
Show version of compiler and ccache being used.
2021-10-27 23:32:16 +02:00
Vadim Zeitlin
9320aeb28b Enable use of ccache for Unix CI builds
This should speed up build step for the common case when not too many
files have to be recompiled.
2021-10-27 22:58:19 +02:00
Artur Wieczorek
b0331f58b5 Don't run CI builds on Ubuntu 16 not supported any longer
Support for Ubuntu 16.04 ended on September 20, 2021.
See: https://github.blog/changelog/2021-04-29-github-actions-ubuntu-16-04-lts-virtual-environment-will-be-removed-on-september-20-2021/

See https://github.com/wxWidgets/wxWidgets/pull/2531
2021-09-23 16:29:10 +02:00
Vadim Zeitlin
c835d1afa6 Install locales used in wxUILocale tests on the CI system
Ensure that the tests are run instead of being skipped.

Also merge "Set environment variables" and "Before install" steps into a
single "Set up" step to avoid adding yet another separate step for
locale installation.
2021-09-01 18:11:40 +02:00
Vadim Zeitlin
d81dc9f125 Remove tests for matrix.skip_gui in workflow files
This setting is used, so just remove all the tests for it.
2021-08-28 23:50:55 +02:00
Vadim Zeitlin
dd33dc2d68 Move wxMac and wxiOS builds to Mac CI workflow
Still run them on GitHub runners, but do it using the same steps as for
our own builds, as there should be no reason to have any difference
in the build steps independently of where exactly they run.

Also remove checks for matrix.skip_testing from the Unix CI workflow as
they are not needed there any more because the tests are always run.

This commit is best viewed with --color-moved git option.
2021-08-28 23:50:55 +02:00
Vadim Zeitlin
446268b61c Rename ci_mac_selfhosted.yml to just ci_mac.yml
We are going to have both self- and GitHub-hosted runners in this file
soon, so rename it for clarity.

No changes yet.
2021-08-28 23:50:54 +02:00
Vadim Zeitlin
0701402737 Add CI workflow for building wxMSW using MSVS natively
This should allow running all the tests faster than it's done by
AppVeyor.

Ignore changes to this workflow file in all the other workflows.
2021-08-24 17:12:06 +02:00
Vadim Zeitlin
1a8e22d813 Rename self-hosted Mac CI workflow file for consistency
Call this file consistently with the other CI files and also ignore all
of the other files in each workflow to avoid unnecessary rebuilds.

Finally, remove a leftover mention of Travis file which doesn't exist
any longer.
2021-08-21 14:39:43 +02:00
Stefan Csomor
b3b24e962e Expand self-hosted Mac M1 CI build workflow
See https://github.com/wxWidgets/wxWidgets/pull/2336
2021-08-20 19:42:35 +02:00
Vadim Zeitlin
f58af942ef Merge branch 'github-actions-cmake' of https://github.com/MaartenBent/wxWidgets
Add CI workflow using CMake.

See https://github.com/wxWidgets/wxWidgets/pull/2440
2021-07-24 18:22:50 +02:00
Maarten Bent
fcd9b4ba2b Add CMake builds to GitHub Actions 2021-07-24 16:39:19 +02:00
Maarten Bent
7446c64333 Add script to determine proc count in CI 2021-07-24 16:38:28 +02:00
Vadim Zeitlin
f417705e97 Try better workaround for the ASAN CI build failures
Try excluding RichTextCtrlTestCase in the CI build using ASAN, as the
test can still be killed while running the Table sub-test of this test
case even when running only a subset of all tests, so try skipping this
one instead.
2021-07-22 22:01:41 +02:00
Vadim Zeitlin
f982f15a65 Temporary work around for a problem in ProcessEnter() unit test
Running this test on its own doesn't work currently, so run
ButtonTestCase, which uses wxUIActionSimulator::Click(), which somehow
fixes the problem in ProcessEnter test (by giving focus to the correct
window, probably), before it to avoid failures in this test now that we
run "wx*" tests separately.
2021-07-22 17:32:40 +02:00
Vadim Zeitlin
6af7c3da82 Work around GUI tests failure in ASAN build on GitHub CI
It seems like running the full test suite runs out of memory, as the
test is simply killed, without any more details, after running a certain
number of tests.

Split the tests into 2 parts and run them separately to work around this
problem.
2021-07-22 17:31:21 +02:00
Vadim Zeitlin
1154689322 Show the GUI tests being executed in the CI workflow
This is useful to check where the test dies when it does it.
2021-07-22 17:27:43 +02:00
PB
346a31d545 Remove TravisCI mentions from build scripts
Travis CI is not used anymore, remove its mentions from the build scripts.
2021-07-15 13:53:12 +02:00
Vadim Zeitlin
7d9d4c9e50 Rename GitHub Unix CI workflow
No real changes, just use a less generic name now that we have wxMSW
cross-building CI workflow too.
2021-07-03 17:57:43 +02:00
Vadim Zeitlin
769cb2e205 Add workflow for cross-building wxMSW on GitHub Actions
Use MinGW to build and Wine to run the GUI tests.
2021-06-27 13:40:10 +02:00
Vadim Zeitlin
5f3bca00c0 Skip building tests too if skip_testing flag is set
Currently it's only used for wxiOS build and the tests don't build
there.

Also set working-directory for the test building step once instead of
using "make -C" option twice.
2021-06-26 16:18:14 +02:00
Vadim Zeitlin
a5cf7f3479 Fix determining the number of logical CPUs under macOS
Use sysctrl instead of nproc which doesn't exist under Mac.
2021-06-26 16:18:14 +02:00
Vadim Zeitlin
32f2a679b4 Add wxMac and wxiOS builds to GitHub CI workflow
Run the builds under macOS 10.15.
2021-06-26 16:18:14 +02:00
Vadim Zeitlin
2b89215eec Extract function for launching httpbin into its own file
Allow reusing it between GitHub and Travis CI.

Also show httpbin log in Travis CI logs too, not just on GitHub.
2021-04-04 01:00:35 +02:00
Vadim Zeitlin
996469115b Fix httpbin installation with Python 2 for GitHub CI too
This is the same as b78508615a (Explicitly install decorator 4.4.2 as
httpbin dependency, 2021-04-03) for Travis CI.
2021-04-03 23:42:54 +02:00
Vadim Zeitlin
8528addefb Do not ignore changes to before_install.sh script in CI workflow
This script is used by this file, so changes to it definitely affect it.
2021-03-23 17:45:19 +01:00
Vadim Zeitlin
4c9b986121 Try getting backtrace from gdb if the test crashes
Run gdb on the core file, if one was generated.

Also remove any limits on core file size to try to ensure that it is
generated in the first place.
2021-03-23 15:40:52 +01:00
Vadim Zeitlin
0d962fbe66 Set working directory for the GUI test build step too
This is more consistent with the non-GUI tests and avoids the need for
pushd/popd (the latter one was not needed anyhow, actually).
2021-03-23 15:33:51 +01:00
Vadim Zeitlin
b4d37c88bd Another fix for rerunning the tests after LeakSanitizer crash
Don't forget to unset "rc" if we're rerunning the test to avoid still
giving an error even if succeeds the second time.
2021-03-23 15:32:38 +01:00
Vadim Zeitlin
73f5b0e7b7 Disable fast unwind in ASAN when running non-GUI tests too
This might help with LeakSanitizer crashes.
2021-03-23 15:00:41 +01:00
Vadim Zeitlin
d15b76ad92 Get rid of separate "Launching httpbin" step in the CI builds
Just do it as part of "Testing".
2021-03-23 14:59:53 +01:00
Vadim Zeitlin
478720c18e Fix rerunning the tests in case of LeakSanitizer crash
The changes of 211cde11d4 (Rerun the test if LeakSanitizer crashed while
running it, 2021-02-05) didn't work because the script is executed with
"-e" shell option and so none of the commands added there was actually
run.

Fix this by using the usual "|| rc=$?" construct instead.
2021-03-23 14:56:45 +01:00
Vadim Zeitlin
a47bb47165 Disable leak detection if debug symbols are unavailable
There just doesn't seem to be any way to make this work right now, so
handle dbgsym packages installation failure and disable leak detection
in this case.

Hopefully ddebs.ubuntu.com repository will be updated in the future,
allowing this to work again.
2021-03-23 14:09:05 +01:00
Vadim Zeitlin
aad3bfdd52 Test clang using libc++ in GitHub Actions CI build
This is more useful than testing clang with libstdc++ which we also use
in the other CI builds with gcc.
2021-03-22 18:44:34 +01:00
PB
1cb066364f Fix ignored path for MSW sources for GitHub CI
Due to a copy&paste mistake the path wrongly included non-existing "wx"
folder.

Closes https://github.com/wxWidgets/wxWidgets/pull/2275
2021-03-13 13:13:05 +01:00
Vadim Zeitlin
3c58e79339 Don't start CI builds for the changes to message catalogs only
We currently don't use these files in the existing builds.

It might be a good idea to add another GitHub Action workflow checking
the message catalogs compilation that would be executed _only_ for the
changes to them, but this can/will be done later.
2021-03-07 23:48:25 +01:00
Vadim Zeitlin
dfc1ae5de4 Ignore MSW-only changes for PR builds on GitHub CI too
This extends the grandparent commit to apply to pull requests and not
only to the master builds.
2021-03-07 23:47:27 +01:00
PB
79363eb8fd Add more ignored paths for GitHub CI
GitHub CI does not build for Microsoft Windows. Therefore, do not start builds
for changes made in folders used only for MSW.
2021-03-02 20:30:46 +01:00
Vadim Zeitlin
9dc676a32c Don't run GitHub CI action when other CI scripts change
Avoid wasting resources when only the scripts used with AppVeyor or
Travis CI change.
2021-02-15 16:04:51 +01:00
Vadim Zeitlin
49fcd34335 Merge branch 'rerun-test-on-asan-failure'
Try to work around a spurious failure in ASAN builds on GitHub Actions.

See https://github.com/wxWidgets/wxWidgets/pull/2217
2021-02-05 21:38:42 +01:00
Vadim Zeitlin
b90cca5103 Fix ignoring docs changes in GitHub Actions CI builds
The path expression must match the full path, not just be its prefix.

Co-Authored-By: PB <PBfordev@gmail.com>
2021-02-05 21:35:51 +01:00
Vadim Zeitlin
211cde11d4 Rerun the test if LeakSanitizer crashed while running it
This crash (see https://github.com/google/sanitizers/issues/1353)
happens sporadically but regularly enough to be annoying, so try to work
around it by rerunning the test and hope that it doesn't happen twice in
a row.
2021-02-05 19:14:06 +01:00
Vadim Zeitlin
53ece3c2ed Don't use pushd/popd unnecessarily
Each step executes in its own shell, so it's not necessary to restore
the previous working directory and a simple "cd" would do just fine but,
in fact, we don't even need this as we can just set the working
directory at the step level.
2021-02-05 19:07:28 +01:00
Vadim Zeitlin
1aae6e26ca Remove useless echo from GitHub CI script
"Testing" is already shown as the step title.
2021-02-05 18:56:27 +01:00
Vadim Zeitlin
a81f91114b Make --disable-sys-libs configure option less drastic
Only disable using the system libraries when a built-in version is
available, otherwise still use the system library as this seems more
useful than disabling the use of only some system libraries (liblzma and
libcurl), while still possibly depending on dozens more via GTK.

Update the documentation and remove the now unnecessary --with-libcurl
from the CI script.

Closes https://github.com/wxWidgets/wxWidgets/pull/2208
2021-02-02 13:00:58 +01:00
Vadim Zeitlin
e7cd875ab0 Ignore changes to more files in GitHub CI workflow
Don't bother rebuilding everything when nothing important has changed.
2021-02-01 10:48:17 +01:00