aboutsummaryrefslogtreecommitdiff
path: root/.cirrus.yml
AgeCommit message (Collapse)Author
2021-01-12cirrus/msys2: Cache msys2 mingw in a better way.Yonggang Luo
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Message-Id: <20210107101919.80-3-luoyonggang@gmail.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2021-01-12cirrus/msys2: Exit powershell with $LastExitCodeYonggang Luo
Currently if we don't exit with $LastExitCode manually, the cirrus would not report the build/testing failure. Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Message-Id: <20210107101919.80-2-luoyonggang@gmail.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2021-01-06cirrus: don't run full qtest on macOSDaniel P. Berrangé
The Cirrus CI macOS build hosts have exhibited a serious performance degradation in recent months. For example the "qom-test" qtest takes over an hour for only the qemu-system-aarch64 binary. This is as much 20-40 times slower than other environments. The other qtests all show similar performance degradation, as do many of the unit tests. This does not appear related to QEMU code changes, since older git commits which were known to fully complete in less than 1 hour on Cirrus CI now also show similar bad performance. Either Cirrus CI performance has degraded, or an change in its environment has exposed a latent bug widely affecting all of QEMU. Debugging the qom-test showed no easily identified large bottleneck - every step of the test execution was simply slower. macOS builds/tests run outside Cirrus CI show normal performance. With an inability to identify any obvious problem, the only viable way to get a reliably completing Cirrus CI macOS job is to cut out almost all of the qtests. We choose to run the x86_64 target only, since that has very few machine types and thus is least badly impacted in the qom-test execution. With this change, the macOS jobs complete in approx 35 minutes. Signed-off-by: Daniel P. Berrangé <berrange@redhat.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Reviewed-by: Willian Rampazzo <willianr@redhat.com> Message-Id: <20210106114159.981538-1-berrange@redhat.com> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
2020-11-26Merge remote-tracking branch 'remotes/bonzini-gitlab/tags/for-upstream' into ↵Peter Maydell
staging Remove obsolete setuptools dependency and fix Stefan's Win32 builds. # gpg: Signature made Thu 26 Nov 2020 14:21:28 GMT # gpg: using RSA key F13338574B662389866C7682BFFBD25F78C7AE83 # gpg: issuer "pbonzini@redhat.com" # gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>" [full] # gpg: aka "Paolo Bonzini <pbonzini@redhat.com>" [full] # Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4 E2F7 7E15 100C CD36 69B1 # Subkey fingerprint: F133 3857 4B66 2389 866C 7682 BFFB D25F 78C7 AE83 * remotes/bonzini-gitlab/tags/for-upstream: nsis: Fix build for 64 bit installer tests/docker, tests/vm: remove setuptools from images configure: remove python pkg_resources check meson: use dependency() to find libjpeg Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2020-11-25tests/docker, tests/vm: remove setuptools from imagesPaolo Bonzini
Setuptools is not needed anymore by the bundled copy of meson, remove it. Suggested-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-11-23.cirrus.yml: bump timeout period for MacOS buildsAlex Bennée
These seem to trigger timeouts with some regularity. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Thomas Huth <thuth@redhat.com> Message-Id: <20201118140739.18377-1-alex.bennee@linaro.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
2020-11-09block: enable libnfs on msys2/mingw in cirrus.ymlYonggang Luo
Initially, libnfs has not been enabled, and now it's fixed, so enable it on cirrus. Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Message-Id: <20201105123116.674-3-luoyonggang@gmail.com> Signed-off-by: Max Reitz <mreitz@redhat.com>
2020-10-22build: fix macOS --enable-modules buildPaolo Bonzini
Apple's nm implementation includes empty lines in the output that are not found in GNU binutils. This confuses scripts/undefsym.py, though it did not confuse the scripts/undefsym.sh script that it replaced. To fix this, ignore lines that do not have two fields. Reported-by: Emmanuel Blot <eblot.ml@gmail.com> Tested-by: Emmanuel Blot <eblot.ml@gmail.com> Fixes: 604f3e4e90 ("meson: Convert undefsym.sh to undefsym.py", 2020-09-08) Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-10-17ci: include configure and meson logs in all jobs if configure failsPaolo Bonzini
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-10-17cirrus: Enable doc build on msys2/mingwYonggang Luo
Currently rST depends on old version sphinx-2.x. Install it by downloading it. Remove the need of university mirror, the main repo are recovered. Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Message-Id: <20201015220626.418-5-luoyonggang@gmail.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-10-17add ninja to dockerfiles, CI configurations and test VMsPaolo Bonzini
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Acked-by: Alex Bennée <alex.bennee@linaro.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-10-17submodules: bump meson to 0.55.3Paolo Bonzini
This adds some bugfixes, and allows MSYS2 to configure without "--ninja=ninja". Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-10-09cirrus: use V=1 when running tests on FreeBSD and macOSPaolo Bonzini
Using "V=1" makes it easier to identify hanging tests, especially since they are run with -j1. It is already used on Windows builds, do the same for FreeBSD and macOS. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Ed Maste <emaste@FreeBSD.org> Message-Id: <20201007140103.711142-1-pbonzini@redhat.com> Message-Id: <20201007160038.26953-22-alex.bennee@linaro.org>
2020-10-09cirrus: msys2/mingw speed is up, add excluded target backYonggang Luo
The following target are add back: i386-softmmu,arm-softmmu,ppc-softmmu,mips-softmmu Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20201007145300.1197-3-luoyonggang@gmail.com> Message-Id: <20201007160038.26953-6-alex.bennee@linaro.org>
2020-10-09cirrus: Fixing and speedup the msys2/mingw CIYonggang Luo
Use cache of cirrus caching msys2 The install of msys2 are refer to https://github.com/msys2/setup-msys2 The first time install msys2 would be time consuming, so increase timeout_in to 90m according to https://cirrus-ci.org/faq/#instance-timed-out Apply patch of https://lists.gnu.org/archive/html/qemu-devel/2020-10/msg00072.html [AJB: renamed printenv_script to setup_script] Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20201007145300.1197-2-luoyonggang@gmail.com> Message-Id: <20201007160038.26953-5-alex.bennee@linaro.org>
2020-09-16cirrus: Building freebsd in a single shotYonggang Luo
This reverts commit 45f7b7b9f38f5c4d1529a37c93dedfc26a231bba ("cirrus.yml: Split FreeBSD job into two parts"). freebsd 1 hour limit not hit anymore I think we going to a wrong direction, I think there is some tests a stall the test runner, please look at https://cirrus-ci.com/task/5110577531977728 When its running properly, the consumed time are little, but when tests running too long, look at the cpu usage, the cpu usage are nearly zero. doesn't consuming time. And look at https://cirrus-ci.com/task/6119341601062912 If the tests running properly, the time consuming are little We should not hide the error by split them Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Reviewed-by: Ed Maste <emaste@FreeBSD.org> Message-Id: <20200915121318.247-16-luoyonggang@gmail.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
2020-09-16ci: Enable msys2 ci in cirrusYonggang Luo
Install msys2 in a proper way refer to: https://github.com/cirruslabs/cirrus-ci-docs/issues/699 The https://wiki.qemu.org/Hosts/W32#Native_builds_with_MSYS2 need to be updated. There is no need of --cross-prefix, open mingw64.exe instead of msys2.exe then we don't need the --cross-prefix, besides we use environment variable settings: MSYS: winsymlinks:nativestrict MSYSTEM: MINGW64 CHERE_INVOKING: 1 to opening mingw64 native shell. Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Message-Id: <20200915121318.247-25-luoyonggang@gmail.com> [thuth: Add --target-list-exclude to speed it up a little bit, and add capstone package to avoid build failure with internal capstone] Signed-off-by: Thomas Huth <thuth@redhat.com>
2020-09-03cirrus.yml: Split FreeBSD job into two partsThomas Huth
The FreeBSD jobs currently hit the 1h time limit in the Cirrus-CI. We have to split the build targets here to make sure that the job finishes in time again. According to the Cirrus-CI docs and some tests that I did, it also seems like the total amount of CPUs that can be used for FreeBSD jobs is limited to 8, so each job now only gets 4 CPUs. That increases the compilation time of each job a little bit, but it still seems to be better to run two jobs with 4 CPUs each in parallel than to run two jobs with 8 CPUs sequentially. Message-Id: <20200831154405.229706-1-thuth@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
2020-09-03cirrus.yml: Update the macOS jobs to CatalinaThomas Huth
When looking at the CI jobs on cirrus-ci.com, it seems like the mojave-based images have been decomissioned a while ago already, since apparently all our jobs get automatically upgraded to catalina. So let's update our YML script accordingly to avoid confusion. Reviewed-by: Ed Maste <emaste@freebsd.org> Message-Id: <20200728074405.13118-5-thuth@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
2020-09-03cirrus.yml: Compile macOS with -WerrorThomas Huth
Compiler warnings currently go unnoticed in our macOS builds, since -Werror is only enabled for Linux and MinGW builds by default. So let's enable them here now, too. Unfortunately, the sasl header is marked as deprecated in the macOS headers and thus generates a lot of deprecation warnings. Thus we have to also use -Wno-error=deprecated-declarations to be able to compile the code here. Message-Id: <20200728074405.13118-4-thuth@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
2020-09-03cirrus.yml: Compile FreeBSD with -WerrorThomas Huth
Compiler warnings currently go unnoticed in our FreeBSD builds, since -Werror is only enabled for Linux and MinGW builds by default. So let's enable them here now, too. Reviewed-by: Ed Maste <emaste@freebsd.org> Message-Id: <20200728074405.13118-3-thuth@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
2020-07-11.cirrus.yml: add bash to the brew packagesAlex Bennée
Like the sed we include earlier we want something more recent for iotests to work. Fixes: 57ee95ed Cc: Max Reitz <mreitz@redhat.com> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20200710182238.10675-1-alex.bennee@linaro.org>
2020-06-16cirrus.yml: serialise make checkAlex Bennée
We do this on our other platforms to make it easier to see what has broken. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Li-Wen Hsu <lwhsu@FreeBSD.org> Message-Id: <20200612190237.30436-19-alex.bennee@linaro.org>
2020-06-08cirrus-ci: Remove flex/bison packagesPhilippe Mathieu-Daudé
QEMU does not use flex/bison packages. Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Li-Wen Hsu <lwhsu@freebsd.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20200515163029.12917-5-philmd@redhat.com>
2020-05-06.cirrus.yml: bootstrap pkg unconditionallyLi-Wen Hsu
This ensures compatibility with pkg repo so a change in upstream doesn't break setup. See: https://lists.freebsd.org/pipermail/freebsd-cloud/2020-April/000234.html Message-Id: <CAKBkRUzicxphjjkkxdgzB3cDSv=AszD5V4X499jT2BjiAaazGw@mail.gmail.com> Signed-off-by: Li-Wen Hsu <lwhsu@lwhsu.org> [AJB: applied from Li-Wen's github, applied sob, tweaked commit message] Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
2020-05-06.cirrus.yml: bump FreeBSD to the current stable releaseAlex Bennée
Hopefully this will un-stick the test which has been broken for a long time. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Li-Wen Hsu <lwhsu@freebsd.org> Tested-by: Li-Wen Hsu <lwhsu@freebsd.org> Message-Id: <20200501111505.4225-4-alex.bennee@linaro.org>
2019-12-18ci: build out-of-treePaolo Bonzini
Most developers are using out-of-tree builds and it was discussed in the past to only allow those. To prepare for the transition, use out-of-tree builds in all continuous integration jobs. Based on a patch by Marc-André Lureau. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Thomas Huth <thuth@redhat.com> Reviewed-by: Li-Wen Hsu <lwhsu@freebsd.org> Message-Id: <1576074829-56711-1-git-send-email-pbonzini@redhat.com>
2019-10-25cirrus.yml: add latest Xcode build targetAlex Bennée
CirrusCI provides a mojave-xcode alias for the latest Xcode available. Let's use it to make sure we track the latest releases. Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
2019-05-21cirrus / travis: Add gnu-sed and bash for macOS and FreeBSDThomas Huth
We are going to enable the qemu-iotests during "make check" again, and for running the iotests, we need bash and gnu-sed. Reviewed-by: Li-Wen Hsu <lwhsu@freebsd.org> Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Acked-by: Christian Borntraeger <borntraeger@de.ibm.com> Message-Id: <20190502084506.8009-5-thuth@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
2019-03-08cirrus.yml: Add macOS continuous integration taskThomas Huth
cirrus-ci.com also has the possibility to run CI tasks on macOS. Since most of the QEMU developers do not have access to macOS yet, let's add a CI pipeline for this operating system here, too. Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Acked-by: Ed Maste <emaste@freebsd.org> Acked-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
2019-02-08.cirrus.yml: basic compile and test for FreeBSDEd Maste
Signed-off-by: Ed Maste <emaste@freebsd.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>