On 11/8/20 6:45 PM, Philippe Mathieu-Daudé wrote:
> Similarly to commit 8cdb2cef3f1, move the gprof/gcov test to GitLab.
>
> The coverage-summary.sh script is not Travis-CI specific, make it
> generic.
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
> .gitlab-ci.yml | 12 ++++++++++++
> .travis.yml | 14 --------------
> MAINTAINERS | 2 +-
> scripts/{travis => ci}/coverage-summary.sh | 2 +-
> 4 files changed, 14 insertions(+), 16 deletions(-)
> rename scripts/{travis => ci}/coverage-summary.sh (92%)
>
> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> index 80082a602b8..d1583cee5db 100644
> --- a/.gitlab-ci.yml
> +++ b/.gitlab-ci.yml
> @@ -403,6 +403,18 @@ check-deprecated:
> MAKE_CHECK_ARGS: check-tcg
> allow_failure: true
>
> +# gprof/gcov are GCC features
> +build-gprof-gcov:
> + <<: *native_build_job_definition
> + variables:
> + IMAGE: ubuntu2004
> + CONFIGURE_ARGS: --enable-gprof --enable-gcov
> + MAKE_CHECK_ARGS: build-tcg
> + TARGETS: aarch64-softmmu mips64-softmmu ppc64-softmmu
> + riscv64-softmmu s390x-softmmu x86_64-softmmu
> + after_script:
> + - ${CI_PROJECT_DIR}/scripts/ci/coverage-summary.sh
> +
The script uses gcovr and it is not installed in the Ubuntu 20.04
container image:
docker run registry.gitlab.com/qemu-project/qemu/qemu/ubuntu2004 gcovr
Emulate Docker CLI using podman. Create /etc/containers/nodocker to
quiet msg.
Error: executable file not found in $PATH: No such file or directory:
OCI runtime command not found error
- Wainer
> build-oss-fuzz:
> <<: *native_build_job_definition
> variables:
> diff --git a/.travis.yml b/.travis.yml
> index bee6197290d..6087e2909cd 100644
> --- a/.travis.yml
> +++ b/.travis.yml
> @@ -210,20 +210,6 @@ jobs:
> compiler: clang
>
>
> - # gprof/gcov are GCC features
> - - name: "GCC gprof/gcov"
> - dist: bionic
> - addons:
> - apt:
> - packages:
> - - ninja-build
> - env:
> - - CONFIG="--enable-gprof --enable-gcov --disable-libssh
> - --target-list=${MAIN_SOFTMMU_TARGETS}"
> - after_success:
> - - ${SRC_DIR}/scripts/travis/coverage-summary.sh
> -
> -
> # We don't need to exercise every backend with every front-end
> - name: "GCC trace log,simple,syslog (user)"
> env:
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 817c7c93f91..3d8c586d444 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -3121,7 +3121,7 @@ R: Philippe Mathieu-Daudé <philmd@redhat.com>
> S: Maintained
> F: .github/lockdown.yml
> F: .travis.yml
> -F: scripts/travis/
> +F: scripts/ci/
> F: .shippable.yml
> F: tests/docker/
> F: tests/vm/
> diff --git a/scripts/travis/coverage-summary.sh b/scripts/ci/coverage-summary.sh
> similarity index 92%
> rename from scripts/travis/coverage-summary.sh
> rename to scripts/ci/coverage-summary.sh
> index d7086cf9ca6..8d9fb4de401 100755
> --- a/scripts/travis/coverage-summary.sh
> +++ b/scripts/ci/coverage-summary.sh
> @@ -3,7 +3,7 @@
> # Author: Alex Bennée <alex.bennee@linaro.org>
> #
> # Summerise the state of code coverage with gcovr and tweak the output
> -# to be more sane on Travis hosts. As we expect to be executed on a
> +# to be more sane on CI runner. As we expect to be executed on a
> # throw away CI instance we do spam temp files all over the shop. You
> # most likely don't want to execute this script but just call gcovr
> # directly. See also "make coverage-report"