From 34e1f55a7c75895d73e48f24fe6a708f48ff9873 Mon Sep 17 00:00:00 2001 From: Alexander Tomokhov Date: Mon, 18 Mar 2024 14:38:26 +0400 Subject: [PATCH 1/5] fix ci: pass coverage.xml to sonar-scanner --- .drone.yml | 4 ++-- flake.nix | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.drone.yml b/.drone.yml index 2be4c77..55595e9 100644 --- a/.drone.yml +++ b/.drone.yml @@ -5,8 +5,8 @@ name: default steps: - name: Run Tests and Generate Coverage Report commands: - - nix flake check -L - - sonar-scanner -Dsonar.projectKey=SelfPrivacy-REST-API -Dsonar.sources=. -Dsonar.host.url=http://analyzer.lan:9000 -Dsonar.login="$SONARQUBE_TOKEN" + - VM_TEST_OUT_PATH="$(nix build .#checks.x86_64-linux.default --no-link --print-out-paths --print-build-logs)" + - sonar-scanner -Dsonar.projectKey=SelfPrivacy-REST-API -Dsonar.sources=. -Dsonar.host.url=http://analyzer.lan:9000 -Dsonar.login="$SONARQUBE_TOKEN" -Dsonar.python.coverage.reportPaths="$VM_TEST_OUT_PATH/coverage.xml" -Dsonar.python.version=3.10 environment: SONARQUBE_TOKEN: from_secret: SONARQUBE_TOKEN diff --git a/flake.nix b/flake.nix index fee8e79..5335029 100644 --- a/flake.nix +++ b/flake.nix @@ -150,9 +150,9 @@ testScript = '' start_all() machine.succeed("cd ${vmtest-src-dir} && coverage run --data-file=/tmp/.coverage -m pytest -p no:cacheprovider -v >&2") - machine.succeed("coverage xml --rcfile=${vmtest-src-dir}/.coveragerc --data-file=/tmp/.coverage >&2") - machine.copy_from_vm("coverage.xml", ".") - machine.succeed("coverage report >&2") + machine.succeed("cd ${vmtest-src-dir} && coverage xml --data-file=/tmp/.coverage -o /tmp/coverage.xml >&2") + machine.copy_from_vm("/tmp/coverage.xml", ".") + machine.succeed("coverage report --rcfile=.coveragerc --data-file=/tmp/.coverage >&2") ''; }; }; -- 2.42.0 From e60f907720eddb803c8e4d5c16d1d44fe9196807 Mon Sep 17 00:00:00 2001 From: Alexander Tomokhov Date: Wed, 3 Apr 2024 19:43:31 +0400 Subject: [PATCH 2/5] coverage: replace source absolute path with '.' --- flake.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/flake.nix b/flake.nix index 5335029..492fdf6 100644 --- a/flake.nix +++ b/flake.nix @@ -85,6 +85,7 @@ rclone redis restic + sonar-scanner-cli self.packages.${system}.pytest-vm # FIXME consider loading this explicitly only after ArchLinux issue is solved self.checks.x86_64-linux.default.driverInteractive @@ -151,6 +152,7 @@ start_all() machine.succeed("cd ${vmtest-src-dir} && coverage run --data-file=/tmp/.coverage -m pytest -p no:cacheprovider -v >&2") machine.succeed("cd ${vmtest-src-dir} && coverage xml --data-file=/tmp/.coverage -o /tmp/coverage.xml >&2") + machine.succeed("sed 's/${pkgs.lib.strings.escapeShellArg self.outPath}<\/source>/.<\/source>/g' /tmp/coverage.xml") machine.copy_from_vm("/tmp/coverage.xml", ".") machine.succeed("coverage report --rcfile=.coveragerc --data-file=/tmp/.coverage >&2") ''; -- 2.42.0 From 43a3b71e29113f7aec109e6ed1cd3ecc4171a58b Mon Sep 17 00:00:00 2001 From: Alexander Tomokhov Date: Sun, 7 Apr 2024 20:46:37 +0400 Subject: [PATCH 3/5] WIP: test1 --- flake.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/flake.nix b/flake.nix index 492fdf6..33491d5 100644 --- a/flake.nix +++ b/flake.nix @@ -150,9 +150,9 @@ }; testScript = '' start_all() - machine.succeed("cd ${vmtest-src-dir} && coverage run --data-file=/tmp/.coverage -m pytest -p no:cacheprovider -v >&2") + machine.succeed("cd ${vmtest-src-dir} && coverage run --data-file=/tmp/.coverage -m pytest -p no:cacheprovider tests/test_binds.py -v >&2") machine.succeed("cd ${vmtest-src-dir} && coverage xml --data-file=/tmp/.coverage -o /tmp/coverage.xml >&2") - machine.succeed("sed 's/${pkgs.lib.strings.escapeShellArg self.outPath}<\/source>/.<\/source>/g' /tmp/coverage.xml") + machine.succeed("sed -E 's|${pkgs.lib.strings.escapeRegex self.outPath}|.|g' /tmp/coverage.xml") machine.copy_from_vm("/tmp/coverage.xml", ".") machine.succeed("coverage report --rcfile=.coveragerc --data-file=/tmp/.coverage >&2") ''; -- 2.42.0 From 943d3a4d7e2b01f5aa359ebeb026aabd6e4ef44c Mon Sep 17 00:00:00 2001 From: Alexander Tomokhov Date: Sun, 14 Apr 2024 03:23:20 +0400 Subject: [PATCH 4/5] WIP: test 2 --- flake.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 33491d5..ae4e173 100644 --- a/flake.nix +++ b/flake.nix @@ -150,7 +150,7 @@ }; testScript = '' start_all() - machine.succeed("cd ${vmtest-src-dir} && coverage run --data-file=/tmp/.coverage -m pytest -p no:cacheprovider tests/test_binds.py -v >&2") + machine.succeed("cd ${vmtest-src-dir} && coverage run --data-file=/tmp/.coverage -m pytest -p no:cacheprovider -v >&2") machine.succeed("cd ${vmtest-src-dir} && coverage xml --data-file=/tmp/.coverage -o /tmp/coverage.xml >&2") machine.succeed("sed -E 's|${pkgs.lib.strings.escapeRegex self.outPath}|.|g' /tmp/coverage.xml") machine.copy_from_vm("/tmp/coverage.xml", ".") -- 2.42.0 From 1988460ab706189eb1ef69e81504365bb8157645 Mon Sep 17 00:00:00 2001 From: Alexander Tomokhov Date: Sun, 14 Apr 2024 14:12:21 +0400 Subject: [PATCH 5/5] WIP: test 3 --- .drone.yml | 2 +- flake.nix | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.drone.yml b/.drone.yml index 55595e9..bf2a81e 100644 --- a/.drone.yml +++ b/.drone.yml @@ -6,7 +6,7 @@ steps: - name: Run Tests and Generate Coverage Report commands: - VM_TEST_OUT_PATH="$(nix build .#checks.x86_64-linux.default --no-link --print-out-paths --print-build-logs)" - - sonar-scanner -Dsonar.projectKey=SelfPrivacy-REST-API -Dsonar.sources=. -Dsonar.host.url=http://analyzer.lan:9000 -Dsonar.login="$SONARQUBE_TOKEN" -Dsonar.python.coverage.reportPaths="$VM_TEST_OUT_PATH/coverage.xml" -Dsonar.python.version=3.10 + - sonar-scanner -Dsonar.projectKey=SelfPrivacy-REST-API -Dsonar.sources="$PWD" -Dsonar.host.url=http://analyzer.lan:9000 -Dsonar.login="$SONARQUBE_TOKEN" -Dsonar.python.coverage.reportPaths="$VM_TEST_OUT_PATH/coverage.xml" -Dsonar.python.version=3.10 environment: SONARQUBE_TOKEN: from_secret: SONARQUBE_TOKEN diff --git a/flake.nix b/flake.nix index ae4e173..d72b10b 100644 --- a/flake.nix +++ b/flake.nix @@ -152,7 +152,8 @@ start_all() machine.succeed("cd ${vmtest-src-dir} && coverage run --data-file=/tmp/.coverage -m pytest -p no:cacheprovider -v >&2") machine.succeed("cd ${vmtest-src-dir} && coverage xml --data-file=/tmp/.coverage -o /tmp/coverage.xml >&2") - machine.succeed("sed -E 's|${pkgs.lib.strings.escapeRegex self.outPath}|.|g' /tmp/coverage.xml") + machine.succeed("head /tmp/coverage.xml >&2") + machine.succeed("sed -i -E 's|${pkgs.lib.strings.escapeRegex self.outPath}|.|g' /tmp/coverage.xml") machine.copy_from_vm("/tmp/coverage.xml", ".") machine.succeed("coverage report --rcfile=.coveragerc --data-file=/tmp/.coverage >&2") ''; -- 2.42.0