Skip to main content

HelmRelease Verifier

Small Python CLI to verify Flux HelmRelease deployments via the Kubernetes API and publish JUnit-compatible results.

Local Run

Prerequisites:

  • Python 3.11+
  • kubeconfig/context with access to target cluster

Single release (pipeline-like):

uv run helmrelease-verifier verify \
  -r <release> \
  -e <app-version> \
  -o ./results.xml

If -n/--namespace is omitted, the current kube context namespace is used.

Short alias (same command, fewer keystrokes):

uv run hrv verify -r <release> -e <app-version>

Dynamic pytest sweep across HelmReleases:

uv run hrv verify -A -r "api|service"

All targets in current namespace (omit -r):

uv run hrv verify -o pytest-report.html

All targets in all namespaces:

uv run hrv verify -A -o pytest-report.html

Controller selection (repeatable):

uv run hrv verify -A -c flux -c argo -r "sample"

Current Argo CD support is a discovery and pytest stub path. It is intended as extension scaffolding and reports argo.stub test cases.

Default sweep behavior: no rollout waiting (-w 0). This is ideal for full-cluster audits.

Optional bounded wait per release (seconds):

uv run hrv verify -A -w 30

Optional parallel execution:

uv run hrv verify -A -P 4

Namespace and release filtering:

uv run hrv verify -n "^(dev|stage|prod)-apps$" -r "service$"

Generated by discovery mode:

  • Default HTML report: pytest-report.html
  • Override/add outputs with -o:
    • .html => pytest HTML report
    • .xml => JUnit XML
  • Examples:
    • -o pytest-report.html
    • -o results.xml
    • -o pytest-report.html -o results.xml

Using pipx (from repo checkout):

pipx run --spec . helmrelease-verifier -h

Run tests:

uv run pytest

Tool unit tests do not generate an HTML report by default.

If needed:

uv run pytest --html=pytest-report.html --self-contained-html

CI Integration Examples

Ready-to-copy examples:

  • GitHub Actions: examples/github-actions/verify-helmreleases.yml
  • Azure DevOps Pipelines: examples/azure-pipelines/verify-helmreleases.yml

Both examples publish the dynamic pytest HTML report as build artifact and fail the job when one or more HelmReleases fail verification. Both examples intentionally use uv for consistent developer and CI behavior; PyPI publishing is handled by the release workflow.

Repository workflows:

  • CI: .github/workflows/ci.yml
  • Release to PyPI (tag-triggered): .github/workflows/release.yml

Metadata

Release files for helmrelease-verifier 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for helmrelease-verifier 0.1.0
File Size Uploaded
helmrelease_verifier-0.1.0.tar.gz 12.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for helmrelease-verifier 0.1.0
File Interpreter ABI Platform
helmrelease_verifier-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 26.8 kB

Release files / helmrelease_verifier-0.1.0.tar.gz

Download URL helmrelease_verifier-0.1.0.tar.gz
Size 12.7 kB
Tags Source
SHA-256 checksum
How to use checksums
c619cdddf8e3d3ad9358d3a4be16ef51275e52d2ce8fc50933f5eac7b3599032
BLAKE2b-256 checksum
How to use checksums
2f5aaf201930e30b2d2fb5a7e4c178bb0ca0351e7a4bdc461cb12675eaec399f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 24, 2026.

Transparency log

Release files / helmrelease_verifier-0.1.0-py3-none-any.whl

Download URL helmrelease_verifier-0.1.0-py3-none-any.whl
Size 14.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8c22c35a283760c0d2f889e59aa4d6b557a0b39a0484a5571cfb312b3a8ca1a9
BLAKE2b-256 checksum
How to use checksums
ed2d9542f336ff02db0acc4737f42c3cefba8b490ea7f7a53f069b78998a094d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 24, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page