From 553a3f52a72e33e429109b2f3e07ba9afa54ce2c Mon Sep 17 00:00:00 2001 From: Erik Norvell Date: Sun, 18 Sep 2022 11:09:02 +0200 Subject: [PATCH 1/9] Added job for simple coverage analysis with single thread gcov/lcov tools --- .gitlab-ci.yml | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 624322e87b..9b90e547e0 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -491,6 +491,27 @@ sanitizer-test-on-main-scheduled: - ep_015.g192 - "./*/logs" +# GCOV/LCOV coverage analysis of self_test suite +coverage-test-on-main-scheduled: + extends: + - .test-job-linux-needs-testv-dir + - .rules-main-scheduled + tags: + - coverage-test + stage: test + script: + - make GCOV=1 -j + - ./scripts/self_test.py --create -t 1 + - ./scripts/self_test.py --create -t 1 scripts/config/self_test_evs.prm + - ./scripts/ivas_pytests/self_test_b.py --create_only --numprocesses 1 --encref IVAS_cod --decref IVAS_dec --encdut IVAS_cod --decdut IVAS_dec + - lcov -c -d obj -o coverage.info + - genhtml coverage.info -o coverage + artifacts: + - name: "main-coverage-sha-$CI_COMMIT_SHORT_SHA" + - when: always + paths: + - coverage.info + - coverage # --------------------------------------------------------------- # Other jobs -- GitLab From de5eaeb487f67dce479ba97d755462107fe68cb2 Mon Sep 17 00:00:00 2001 From: Erik Norvell Date: Sun, 18 Sep 2022 11:12:03 +0200 Subject: [PATCH 2/9] Fixed syntax error in coverage-test-on-main-scheduled --- .gitlab-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 9b90e547e0..ec212c927f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -507,8 +507,8 @@ coverage-test-on-main-scheduled: - lcov -c -d obj -o coverage.info - genhtml coverage.info -o coverage artifacts: - - name: "main-coverage-sha-$CI_COMMIT_SHORT_SHA" - - when: always + name: "main-coverage-sha-$CI_COMMIT_SHORT_SHA" + when: always paths: - coverage.info - coverage -- GitLab From 01becc5b47fbc36918fb2c3de6e45573278b0c60 Mon Sep 17 00:00:00 2001 From: Erik Norvell Date: Sun, 18 Sep 2022 11:16:31 +0200 Subject: [PATCH 3/9] Added check on COVERAGE_TEST value for scheduling job --- .gitlab-ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ec212c927f..45e988cc02 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -499,6 +499,9 @@ coverage-test-on-main-scheduled: tags: - coverage-test stage: test + rules: + # only run in scheduled pipeline that passes this env vars + - if: $COVERAGE_TEST script: - make GCOV=1 -j - ./scripts/self_test.py --create -t 1 -- GitLab From 7a749ac8da2c301689a8033a69e69a40ca10106f Mon Sep 17 00:00:00 2001 From: norvell Date: Sun, 18 Sep 2022 09:27:05 +0000 Subject: [PATCH 4/9] Remove .rules-main-scheduled to see if this prevents manual triggering --- .gitlab-ci.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 45e988cc02..fc8048b3dd 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -495,7 +495,6 @@ sanitizer-test-on-main-scheduled: coverage-test-on-main-scheduled: extends: - .test-job-linux-needs-testv-dir - - .rules-main-scheduled tags: - coverage-test stage: test -- GitLab From 3fa5790c65711f7c7f66953b63580a203a7ddbc2 Mon Sep 17 00:00:00 2001 From: norvell Date: Mon, 19 Sep 2022 05:49:31 +0000 Subject: [PATCH 5/9] Added rule for webpage trigger --- .gitlab-ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index fc8048b3dd..87b5edbb40 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -13,6 +13,7 @@ workflow: - if: $CI_PIPELINE_SOURCE == 'merge_request_event' # Runs for merge requests - if: $CI_PIPELINE_SOURCE == 'push' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH # Pushes to main - if: $CI_PIPELINE_SOURCE == 'schedule' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH # Scheduled in main + - if: $CI_PIPELINE_SOURCE == 'web' # Triggered from webpage stages: -- GitLab From 38145519aecdcb778c0ea9e1899f451327398404 Mon Sep 17 00:00:00 2001 From: norvell Date: Mon, 19 Sep 2022 06:52:07 +0000 Subject: [PATCH 6/9] Cleanup of .gitlab-ci.yml --- .gitlab-ci.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 87b5edbb40..13b103f0fa 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -13,7 +13,6 @@ workflow: - if: $CI_PIPELINE_SOURCE == 'merge_request_event' # Runs for merge requests - if: $CI_PIPELINE_SOURCE == 'push' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH # Pushes to main - if: $CI_PIPELINE_SOURCE == 'schedule' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH # Scheduled in main - - if: $CI_PIPELINE_SOURCE == 'web' # Triggered from webpage stages: @@ -496,6 +495,7 @@ sanitizer-test-on-main-scheduled: coverage-test-on-main-scheduled: extends: - .test-job-linux-needs-testv-dir + - .rules-main-scheduled tags: - coverage-test stage: test @@ -503,6 +503,7 @@ coverage-test-on-main-scheduled: # only run in scheduled pipeline that passes this env vars - if: $COVERAGE_TEST script: + - *print-common-info - make GCOV=1 -j - ./scripts/self_test.py --create -t 1 - ./scripts/self_test.py --create -t 1 scripts/config/self_test_evs.prm -- GitLab From 0b6f586886d14806e08013e76e84a5c2133120f5 Mon Sep 17 00:00:00 2001 From: norvell Date: Mon, 19 Sep 2022 07:53:53 +0000 Subject: [PATCH 7/9] Allow jobs triggered by api --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 13b103f0fa..9985837d09 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -13,7 +13,7 @@ workflow: - if: $CI_PIPELINE_SOURCE == 'merge_request_event' # Runs for merge requests - if: $CI_PIPELINE_SOURCE == 'push' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH # Pushes to main - if: $CI_PIPELINE_SOURCE == 'schedule' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH # Scheduled in main - + - if: $CI_PIPELINE_SOURCE == 'api' # Triggered by api stages: - maintenance -- GitLab From ec35ed51260441858d7605ee942cada1725a3adc Mon Sep 17 00:00:00 2001 From: norvell Date: Mon, 19 Sep 2022 07:56:26 +0000 Subject: [PATCH 8/9] Add api trigger to .rules-main-scheduled to test pipeline --- .gitlab-ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 9985837d09..d5fccc915c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -72,6 +72,7 @@ stages: extends: .rules-basis rules: - if: $CI_PIPELINE_SOURCE == 'schedule' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH + - if: $CI_PIPELINE_SOURCE == 'api' # templates to define stages and platforms -- GitLab From 02f2ac45a7244d2cc9d42275abcb3f496a9af74b Mon Sep 17 00:00:00 2001 From: norvell Date: Mon, 19 Sep 2022 08:05:19 +0000 Subject: [PATCH 9/9] Cleanup, removing api trigger option. --- .gitlab-ci.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d5fccc915c..ecda7b19bb 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -13,7 +13,6 @@ workflow: - if: $CI_PIPELINE_SOURCE == 'merge_request_event' # Runs for merge requests - if: $CI_PIPELINE_SOURCE == 'push' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH # Pushes to main - if: $CI_PIPELINE_SOURCE == 'schedule' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH # Scheduled in main - - if: $CI_PIPELINE_SOURCE == 'api' # Triggered by api stages: - maintenance @@ -72,7 +71,6 @@ stages: extends: .rules-basis rules: - if: $CI_PIPELINE_SOURCE == 'schedule' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH - - if: $CI_PIPELINE_SOURCE == 'api' # templates to define stages and platforms -- GitLab