* [PATCH datacenter-manager] add `make coverage` build target
@ 2026-08-24 9:01 Lukas Wagner
2026-08-25 6:40 ` Lukas Wagner
0 siblings, 1 reply; 2+ messages in thread
From: Lukas Wagner @ 2026-08-24 9:01 UTC (permalink / raw)
To: pdm-devel
This uses the `tarpaulin` to generate a test coverage report in the
'./coverage' directory.
Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
---
.gitignore | 2 ++
Makefile | 7 +++++++
tarpaulin.toml | 22 ++++++++++++++++++++++
3 files changed, 31 insertions(+)
create mode 100644 tarpaulin.toml
diff --git a/.gitignore b/.gitignore
index eb4a27ea..8de2bdad 100644
--- a/.gitignore
+++ b/.gitignore
@@ -20,3 +20,5 @@
/ui/target
Cargo.lock
proxmox-datacenter-manager-[0-9].*/
+
+/coverage
diff --git a/Makefile b/Makefile
index 537e6faa..685170d0 100644
--- a/Makefile
+++ b/Makefile
@@ -148,6 +148,7 @@ upload-ui:
distclean: clean
clean: clean-deb
$(CARGO) clean
+ rm -rf ./coverage
$(MAKE) -C docs clean
$(MAKE) -C $(COMPLETION_DIR) clean
$(MAKE) -C $(UI_DIR) clean
@@ -179,3 +180,9 @@ tidy:
$(CARGO) fmt
$(MAKE) -C $(UI_DIR) tidy
+
+.PHONY: coverage
+coverage:
+ $(CARGO) tarpaulin
+
+ @echo "\nCoverage report in ./coverage/tarpaulin-report.html"
diff --git a/tarpaulin.toml b/tarpaulin.toml
new file mode 100644
index 00000000..01740418
--- /dev/null
+++ b/tarpaulin.toml
@@ -0,0 +1,22 @@
+[test_config]
+
+# Skip the clean step and proceed without cleaning the target directory.
+skip-clean = true
+
+# Count hits for coverage, useful for more detailed reporting.
+count = true
+
+# List of file paths to exclude from testing.
+exclude-files = [
+ "proxmox-datacenter-manager*",
+ "ui/*"
+]
+
+# Specify the engine to use for collecting coverage (default: "trace").
+engine = "Llvm"
+
+[report]
+# Directory to output coverage files and reports.
+output-dir = "./coverage"
+
+out = ["Html"]
--
2.47.3
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH datacenter-manager] add `make coverage` build target
2026-08-24 9:01 [PATCH datacenter-manager] add `make coverage` build target Lukas Wagner
@ 2026-08-25 6:40 ` Lukas Wagner
0 siblings, 0 replies; 2+ messages in thread
From: Lukas Wagner @ 2026-08-25 6:40 UTC (permalink / raw)
To: Lukas Wagner, pdm-devel
On Mon Aug 24, 2026 at 11:01 AM CEST, Lukas Wagner wrote:
> This uses the `tarpaulin` to generate a test coverage report in the
> './coverage' directory.
>
> Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
> ---
Forgot to pass --notes to git-format patch, so here they are:
Notes:
`tarpaulin` is not packaged for Debian at the moment, so one has to
install it via `cargo install --locked cargo-tarpaulin`.
We could consider packaging it ourselves, however, last time I checked
some of the (transitive) dependencies were a bit inconvenient, so maybe
we'd have to vendor them, similar to how we do it with `proxmox-biome`.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-08-25 6:40 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-24 9:01 [PATCH datacenter-manager] add `make coverage` build target Lukas Wagner
2026-08-25 6:40 ` Lukas Wagner
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox