• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

NVIDIA / nodewright
83%

Build:
DEFAULT BRANCH: main
Repo Added 06 Apr 2026 08:06PM UTC
Token 3f4eNWf03K70W7qbtipVwIsuuz4TJsoKd regen
Build 432 Last
Files 59
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH main
branch: SELECT
CHANGE BRANCH
x
Sync Branches
  • No branch selected
  • agent/remove-kube-rbac-proxy
  • chart-release
  • cherry-pick-chart
  • cherrypick
  • chore/377-addlicense
  • chore/docs-chart-nodewright-prose
  • chore/go-1.26.5
  • chore/k8s-1.36.2-bump
  • chore/k8s-tests-nodewright-rename
  • chore/k8s-tests-readme-nodewright-prose
  • chore/update-chart
  • chore/update-golang-patch
  • ci/exclude-generated-from-coverage
  • ci/publish-chart-ghcr
  • ci/retry-transient-network-fetches
  • dependabot/github_actions/actions/cache-6
  • dependabot/github_actions/actions/checkout-7
  • dependabot/github_actions/actions/download-artifact-8
  • dependabot/github_actions/actions/setup-go-7
  • dependabot/github_actions/actions/upload-artifact-7
  • dependabot/github_actions/actions/upload-artifact-7.0.1
  • dependabot/github_actions/azure/setup-helm-5
  • dependabot/github_actions/coverallsapp/github-action-2.3.8
  • dependabot/github_actions/github/codeql-action/init-4.37.4
  • dependabot/go_modules/operator/github.com/go-logr/logr-1.4.4
  • dependabot/go_modules/operator/github.com/google/cel-go-0.29.0
  • dependabot/go_modules/operator/github.com/onsi/ginkgo/v2-2.32.0
  • dependabot/go_modules/operator/github.com/onsi/ginkgo/v2-2.32.1
  • dependabot/go_modules/operator/github.com/onsi/gomega-1.42.1
  • dependabot/go_modules/operator/github.com/prometheus/client_golang-1.24.0
  • dependabot/go_modules/operator/github.com/prometheus/client_golang-1.24.1
  • dependabot/go_modules/operator/github.com/sethvargo/go-envconfig-1.4.0
  • dependabot/go_modules/operator/github.com/sethvargo/go-envconfig-1.4.3
  • dependabot/go_modules/operator/github.com/spf13/pflag-1.0.10
  • dependabot/go_modules/operator/github.com/stretchr/testify-1.12.1
  • dependabot/go_modules/operator/go.opentelemetry.io/otel/sdk-1.43.0
  • dependabot/go_modules/operator/go.uber.org/zap-1.28.0
  • dependabot/go_modules/operator/golang-x-022d82f60c
  • dependabot/go_modules/operator/golang-x-f4f1f3a0f0
  • dependabot/go_modules/operator/google.golang.org/grpc-1.82.1
  • dependabot/go_modules/operator/kubernetes-44e4af7f7b
  • dependabot/go_modules/operator/kubernetes-c00f186a85
  • docs/374-stale-annotation-refs
  • docs/agent-image-path
  • docs/release-validation-suite
  • feat/436-nodewright-namespace
  • feat/439-runtime-required-taint-key
  • feat/cli-update-state
  • feat/ctlptl-local-registry
  • feat/metrics-rename
  • feat/skyhook-ready-condition
  • feat/uninstall-enhancement-collapsed
  • feat/webhook-bootstrap-lease
  • feature/package-as-jobs
  • fix-chart-bump
  • fix/403-event-text-rename
  • fix/403-text-rename
  • fix/440-chart-hardcoded-names
  • fix/456-dp-webhook-cache-race
  • fix/api-rename
  • fix/chart
  • fix/chart-pdb-replicas-type-mismatch
  • fix/chart-selector-migration
  • fix/cli-version-examples
  • fix/cordon-ownership
  • fix/core-e2e-flakiness-cleanup-timeout-catch
  • fix/dag-strands-dependency-free-package
  • fix/deploymentpolicy-webhook-cache-delete
  • fix/distroless-registry-resolution
  • fix/docs-restructure
  • fix/downgrade-after-uninstall-cleanup
  • fix/drain-exempt-package-pods-by-label
  • fix/flaky-config-sync-gate-test
  • fix/fully-qualify-kubectl-image
  • fix/issue-224-release-attestations
  • fix/issue-238-k8s-test-versions
  • fix/issue-259-drain-config
  • fix/makefile_namechange
  • fix/operator-events-rbac
  • fix/package-image-port-parsing
  • fix/quantity-semantic-compare
  • fix/reap-old-logs-retry-budget
  • fix/reject-inline-image-digest
  • fix/rollback-webhook-bootstrap-lease
  • fix/skip-issue
  • fix/uninstall-cancel-cleanup-timeout
  • fix/update-changelog-generation
  • jobs-migration/300-annotation-helpers
  • jobs-migration/301-job-builders
  • jobs-migration/302-job-controller
  • jobs-migration/302b-job-reconcile
  • jobs-migration/302c-job-reconcile
  • jobs-migration/303a-swap
  • jobs-migration/303b-pause-suspend
  • jobs-migration/304-e2e-jobs
  • jobs-migration/305-release-notes
  • jobs-migration/372-chart-job-env-options
  • jobs-migration/373-timeout-retry
  • jobs-migration/397-flaky-metrics-timeout
  • jobs-migration/411-disable-no-resume
  • jobs-migration/411-nodestate-lost-update
  • jobs-migration/426-interrupt-resurrect
  • jobs-migration/430-docs-surfaces
  • main
  • release-bump-chart
  • release-chart
  • runtime-required-cordon
  • test/nodewright-upgrade-migration
  • test/unit-coverage-pure-logic
  • update-ci-signing
  • update-docs
  • update-docs-chart
  • worktree-chore+go-bump
  • worktree-chore+update-golang
  • worktree-ci-test-pools
  • worktree-config-bug
  • worktree-configmap-clobber-bug
  • worktree-feat+auto-taint-on-reboot-tracking
  • worktree-investigate-reapply-reboot
  • worktree-workqueue-experinment

21 Aug 2026 06:06PM UTC coverage: 83.363% (+0.02%) from 83.348%
32511617447

push

github

web-flow
ci: retry transient registry and download failures (#517)

* ci: retry transient registry and download failures

A reset connection from Docker Hub's CDN failed the whole e2e/lifecycle
job with "kindest/node:v1.33.12 is not published or cannot be inspected",
an error that reads like a bad version pin rather than the blip it was.
None of the registry reads or binary downloads in CI retried.

Add scripts/retry.sh, a shared wrapper that re-runs a command with
doubling backoff and exits with the command's own status. It buffers each
attempt's stdout and replays only the winning one: callers capture these
reads in $(...) or pipe them to jq, so a failed attempt that already
wrote a partial response would otherwise be concatenated with the retry
that succeeded and silently corrupt the result.

Wrap the reads that flake with it:

- operator/Makefile validate-kind-node-image, the step that failed. Both
  operator-ci and agent-ci call the target, so both are covered.
- scripts/latest-distroless.sh, all three oras reads.
- .github/actions/resolve-oci-digest already had a retry loop, but
  defaulted to one attempt and both callers took the default, so it never
  engaged. Default to three.

Binary downloads use curl's own --retry-all-errors instead; plain --retry
does not cover connection resets. The two git-cliff installs piped curl
into tar, where a retry restarting at byte 0 would replay bytes into a
half-read stream, so they download to a file first.

Since inspect returns the same status for a reset and an absent tag,
a tag that genuinely does not exist now takes about fifteen seconds to
report instead of failing instantly.

Signed-off-by: Alex Yuskauskas <ayuskauskas@nvidia.com>

* fix(ci): do not emit failed-attempt stdout from retry.sh

The failure path replayed the last attempt's buffered stdout, which
contradicted the buffering the wrapper exists for: attempts 1..n-1 were
discarded but attempt n was not, and docs/contributing/development.md
already promi... (continued)

10678 of 12809 relevant lines covered (83.36%)

8.88 hits per line

Relevant lines Covered
Build:
Build:
12809 RELEVANT LINES 10678 COVERED LINES
8.88 HITS PER LINE
Source Files on main
  • Tree
  • List 59
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
32511617447 main ci: retry transient registry and download failures (#517) * ci: retry transient registry and download failures A reset connection from Docker Hub's CDN failed the whole e2e/lifecycle job with "kindest/node:v1.33.12 is not published or cannot be ... push 21 Aug 2026 06:25PM UTC web-flow github
83.36
32508101980 ci/retry-transient-network-fetches Merge f05faf880 into bf15c952f Pull #517 21 Aug 2026 05:43PM UTC web-flow github
83.41
32424428926 main ci(operator): run the operator-agent suite when the operator changes (#493) push 21 Aug 2026 03:53PM UTC web-flow github
83.35
32427041561 ci/retry-transient-network-fetches Merge 08b108802 into bf15c952f Pull #517 20 Aug 2026 11:23PM UTC web-flow github
83.46
32412305856 docs/release-validation-suite Merge 79d640a6f into ece034f56 Pull #493 20 Aug 2026 08:25PM UTC web-flow github
83.53
32398326397 main ci(operator): exclude generated deepcopy from reported coverage (#501) * ci(operator): exclude generated deepcopy from reported coverage zz_generated.deepcopy.go is ~916 statements at 49.8%, about a quarter of all uncovered code in the repo. It ... push 20 Aug 2026 05:53PM UTC web-flow github
83.36
32395082278 ci/exclude-generated-from-coverage Merge a693c7909 into 6c8fdbfe3 Pull #501 20 Aug 2026 05:21PM UTC web-flow github
83.37
32395053214 main chore(deps): bump golang.org/x/mod (#505) Bumps the golang-x group with 1 update in the /operator directory: [golang.org/x/mod](https://github.com/golang/mod). Updates `golang.org/x/mod` from 0.38.0 to 0.40.0 - [Commits](https://github.com/gola... push 20 Aug 2026 05:21PM UTC web-flow github
80.29
32394875234 dependabot/go_modules/operator/github.com/stretchr/testify-1.12.1 Merge bfe1bc9d0 into fb5979c2e Pull #506 20 Aug 2026 05:19PM UTC web-flow github
80.28
32394958982 dependabot/go_modules/operator/golang-x-022d82f60c Merge 5ca41ec2e into 5b64b98dc Pull #505 20 Aug 2026 05:19PM UTC web-flow github
80.34
See All Builds (432)

Badge your Repo: nodewright

We detected this repo isn’t badged! Grab the embed code to the right, add it to your repo to show off your code coverage, and when the badge is live hit the refresh button to remove this message.

Could not find badge in README.

Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

Refresh
  • Settings
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc