[PATCH v2 1/5] travis.yml: Move gprof/gcov test across to gitlab

Thomas Huth posted 5 patches 5 years ago
Maintainers: "Philippe Mathieu-Daudé" <philmd@redhat.com>, Wainer dos Santos Moschetta <wainersm@redhat.com>, Fam Zheng <fam@euphon.net>, Thomas Huth <thuth@redhat.com>, "Alex Bennée" <alex.bennee@linaro.org>
There is a newer version of this series
[PATCH v2 1/5] travis.yml: Move gprof/gcov test across to gitlab
Posted by Thomas Huth 5 years ago
From: Philippe Mathieu-Daudé <philmd@redhat.com>

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>
Message-Id: <20201108204535.2319870-10-philmd@redhat.com>
[thuth: Add gcovr and bsdmainutils which are required for the
        coverage-summary.sh script to the ubuntu docker file,
        and use 'check' as test target]
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 .gitlab-ci.yml                             | 12 ++++++++++++
 .travis.yml                                | 15 ---------------
 MAINTAINERS                                |  2 +-
 scripts/{travis => ci}/coverage-summary.sh |  2 +-
 tests/docker/dockerfiles/ubuntu2004.docker |  2 ++
 5 files changed, 16 insertions(+), 17 deletions(-)
 rename scripts/{travis => ci}/coverage-summary.sh (92%)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 7c0db64710..1070efce3f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -468,6 +468,18 @@ check-deprecated:
     MAKE_CHECK_ARGS: check-tcg
   allow_failure: true
 
+# gprof/gcov are GCC features
+gprof-gcov:
+  <<: *native_build_job_definition
+  variables:
+    IMAGE: ubuntu2004
+    CONFIGURE_ARGS: --enable-gprof --enable-gcov
+    MAKE_CHECK_ARGS: check
+    TARGETS: aarch64-softmmu mips64-softmmu ppc64-softmmu
+             riscv64-softmmu s390x-softmmu x86_64-softmmu
+  after_script:
+    - ${CI_PROJECT_DIR}/scripts/ci/coverage-summary.sh
+
 build-oss-fuzz:
   <<: *native_build_job_definition
   variables:
diff --git a/.travis.yml b/.travis.yml
index 5f1dea873e..05fa1ca905 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -52,7 +52,6 @@ addons:
       - ninja-build
       - sparse
       - uuid-dev
-      - gcovr
       # Tests dependencies
       - genisoimage
 
@@ -166,20 +165,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
-
-
     # Using newer GCC with sanitizers
     - name: "GCC9 with sanitizers (softmmu)"
       dist: bionic
diff --git a/MAINTAINERS b/MAINTAINERS
index 00626941f1..472e54f786 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -3203,7 +3203,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 d7086cf9ca..8d9fb4de40 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"
diff --git a/tests/docker/dockerfiles/ubuntu2004.docker b/tests/docker/dockerfiles/ubuntu2004.docker
index 8519584d2b..9750016e51 100644
--- a/tests/docker/dockerfiles/ubuntu2004.docker
+++ b/tests/docker/dockerfiles/ubuntu2004.docker
@@ -1,8 +1,10 @@
 FROM ubuntu:20.04
 ENV PACKAGES flex bison \
+    bsdmainutils \
     ccache \
     clang-10\
     gcc \
+    gcovr \
     genisoimage \
     gettext \
     git \
-- 
2.27.0


Re: [PATCH v2 1/5] travis.yml: Move gprof/gcov test across to gitlab
Posted by Wainer dos Santos Moschetta 5 years ago
On 2/5/21 6:18 AM, Thomas Huth wrote:
> From: Philippe Mathieu-Daudé <philmd@redhat.com>
>
> 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>
> Message-Id: <20201108204535.2319870-10-philmd@redhat.com>
> [thuth: Add gcovr and bsdmainutils which are required for the
>          coverage-summary.sh script to the ubuntu docker file,
>          and use 'check' as test target]
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>   .gitlab-ci.yml                             | 12 ++++++++++++
>   .travis.yml                                | 15 ---------------
>   MAINTAINERS                                |  2 +-
>   scripts/{travis => ci}/coverage-summary.sh |  2 +-
>   tests/docker/dockerfiles/ubuntu2004.docker |  2 ++
>   5 files changed, 16 insertions(+), 17 deletions(-)
>   rename scripts/{travis => ci}/coverage-summary.sh (92%)

Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>


>
> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> index 7c0db64710..1070efce3f 100644
> --- a/.gitlab-ci.yml
> +++ b/.gitlab-ci.yml
> @@ -468,6 +468,18 @@ check-deprecated:
>       MAKE_CHECK_ARGS: check-tcg
>     allow_failure: true
>   
> +# gprof/gcov are GCC features
> +gprof-gcov:
> +  <<: *native_build_job_definition
> +  variables:
> +    IMAGE: ubuntu2004
> +    CONFIGURE_ARGS: --enable-gprof --enable-gcov
> +    MAKE_CHECK_ARGS: check
> +    TARGETS: aarch64-softmmu mips64-softmmu ppc64-softmmu
> +             riscv64-softmmu s390x-softmmu x86_64-softmmu
> +  after_script:
> +    - ${CI_PROJECT_DIR}/scripts/ci/coverage-summary.sh
> +
>   build-oss-fuzz:
>     <<: *native_build_job_definition
>     variables:
> diff --git a/.travis.yml b/.travis.yml
> index 5f1dea873e..05fa1ca905 100644
> --- a/.travis.yml
> +++ b/.travis.yml
> @@ -52,7 +52,6 @@ addons:
>         - ninja-build
>         - sparse
>         - uuid-dev
> -      - gcovr
>         # Tests dependencies
>         - genisoimage
>   
> @@ -166,20 +165,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
> -
> -
>       # Using newer GCC with sanitizers
>       - name: "GCC9 with sanitizers (softmmu)"
>         dist: bionic
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 00626941f1..472e54f786 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -3203,7 +3203,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 d7086cf9ca..8d9fb4de40 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"
> diff --git a/tests/docker/dockerfiles/ubuntu2004.docker b/tests/docker/dockerfiles/ubuntu2004.docker
> index 8519584d2b..9750016e51 100644
> --- a/tests/docker/dockerfiles/ubuntu2004.docker
> +++ b/tests/docker/dockerfiles/ubuntu2004.docker
> @@ -1,8 +1,10 @@
>   FROM ubuntu:20.04
>   ENV PACKAGES flex bison \
> +    bsdmainutils \
>       ccache \
>       clang-10\
>       gcc \
> +    gcovr \
>       genisoimage \
>       gettext \
>       git \


Re: [PATCH v2 1/5] travis.yml: Move gprof/gcov test across to gitlab
Posted by Alex Bennée 5 years ago
Thomas Huth <thuth@redhat.com> writes:

> From: Philippe Mathieu-Daudé <philmd@redhat.com>
>
> 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>
> Message-Id: <20201108204535.2319870-10-philmd@redhat.com>
> [thuth: Add gcovr and bsdmainutils which are required for the
>         coverage-summary.sh script to the ubuntu docker file,
>         and use 'check' as test target]
> Signed-off-by: Thomas Huth <thuth@redhat.com>

It looks like coverage-html needs fixing but lets not hold things up for
that:

Reviewed-by: Alex Bennée <alex.bennee@linaro.org>

-- 
Alex Bennée