Skip to content

coverage-output: distinguish 'no coverage configured' from a failed artifact download #25

Description

@monsieurleberre

From the pre-open review of #23. In csharp-ci.yaml and scala-ci.yaml, the coverage-output job downloads the coverage artifact with continue-on-error: true, then defaults to an empty coverage value if the file is absent. That collapses two distinct cases:

  1. No coverage shard ran → empty is correct (badge intentionally skipped). ✅
  2. A coverage shard ran (artifact uploaded with if-no-files-found: error) but the download itself failed (throttling, retention, infra) → empty silently produces a blank/stale coverage badge on an otherwise-green run. ❌

Fix: pass whether any shard requested coverage into the job; if so, drop continue-on-error so a missing-but-expected artifact fails loud; if not, skip the download step via if:. At minimum emit a ::warning:: when the file is unexpectedly absent.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions