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

SchSeba / sriov-network-operator-1
64%
master: 64%

Build:
Build:
LAST BUILD BRANCH: conditions/network-crds
DEFAULT BRANCH: master
Repo Added 27 Jul 2022 12:48PM UTC
Token MCzExkrUqCmca7JovFWU5quDblYDZ2Jzk regen
Build 819 Last
Files 114
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 fix/daemon-test-flake
branch: fix/daemon-test-flake
CHANGE BRANCH
x
Reset
Sync Branches
  • fix/daemon-test-flake
  • add_device_injector_validation
  • add_hugepages_func_test
  • add_logs
  • add_mtu_func_test
  • add_predicate_for_nodes
  • add_rbac_to_nri
  • add_rdma_documentation
  • add_resync
  • add_retry_on_delete
  • allow_to_remove_default_pool
  • block_resource_injector
  • bug_remove_nic_config_from_host
  • bump-dependencies-pr1027
  • bump_cni_version
  • bump_controller_runtime_0.20.2
  • bump_ginkgo_version
  • bump_k8s_1.30
  • bump_k8s_version_ci
  • bump_kube-rbac-proxy_v0.21.2
  • bump_mock_package
  • bump_ocp_version_4.18
  • bumps_1.24
  • change_vlan_max
  • check_MCP_after_pod_restart
  • check_lock_down_on_mlx_plugin
  • ci_improvements
  • clean_ci_images
  • conditions/github-action-update
  • conditions/network-crds
  • conditions/nodestate
  • conditions/operator-config
  • conditions/operator-config-v2
  • conditions/policy-poolconfig
  • conditions/redeploy-script-fix
  • create_desing_proposal_template
  • create_platform_and_orchestrator_packages
  • daemon_redesign
  • design_conditions
  • design_conditions_implementation
  • design_externally_manage
  • device_plugin_redesign
  • devtask-d6444829-add-corerabbit-yaml-configuration-for-th
  • documentation-re-org
  • documentation_update
  • drain-controller-test-fix
  • drain_controller
  • drain_daemon
  • drain_improve
  • enable_delve
  • enable_feature_gate
  • enable_mtu_test
  • extend_time
  • externally_manage
  • externally_manage_tests
  • fast-leader-election
  • fix-webhook-image-user
  • fix_aws_test
  • fix_device_plugin_label
  • fix_drain_handler
  • fix_drain_issue
  • fix_drain_issue_v2
  • fix_empty_nodeselector_in_policy
  • fix_githubaction_artifact
  • fix_ip_link_command_tests
  • fix_k8s_ci
  • fix_k8s_ci_multus
  • fix_k8s_ci_virtual_cluster
  • fix_k8s_ci_virtual_cluster_1
  • fix_lock_race
  • fix_log_test
  • fix_matchcondition
  • fix_mlx_plugin
  • fix_mlx_plugin_1
  • fix_mtu_disconnected_test
  • fix_mtu_test_1
  • fix_ocp_ci
  • fix_ocp_ci_login
  • fix_policy_order
  • fix_race_condition
  • fix_rdma_test
  • fix_render
  • fix_return_error
  • fix_root_device_overlap
  • fix_sriov_test_for_sno
  • fix_status_patch
  • fix_test
  • fix_unittest
  • fix_virtual_cluster_script
  • fix_waiting_for_dp_when_no_policy
  • fix_webhook
  • func_e2e_fixes
  • improve_drain_check
  • improve_hypershift_check
  • improve_logs
  • improve_nic_selection
  • install_kmod_for_mstfwreset
  • interface_redesign
  • master
  • move_systemd_to_host_package
  • multiple_bumps
  • ocpbugs-64886
  • parallel_drain
  • parallel_drain_design
  • platform_and_orchestrator_packages_design
  • rdma-functest
  • rdma-subsytem-mode
  • readd_altname_docs
  • reduce_rbac_resource_injector
  • refs/pull/3/merge
  • remove_DP_from_nodestate_spec
  • remove_client
  • remove_drain_on_none_vfs
  • remove_leader_election
  • remove_leader_election_test
  • remove_timeout
  • run_make_bundle
  • security_improvements
  • skip_drain_on_reboot
  • skip_drain_on_reboot_single_node
  • skip_virtual_nic_udev
  • support_BF2_connectx
  • support_PSA
  • support_aws
  • support_ib_netlink
  • support_k8s_cluster_version
  • support_post_quantum
  • support_vfio_ib_in_webhook
  • support_virtual_cluster
  • sync-2025-02-03
  • systemd
  • temp_fix_ocp_ci
  • test-separate-daemon-drain-fixes
  • unit_test_no_mock
  • unit_tests
  • unit_tests_1
  • update_bundle_to_stable
  • update_ci_system
  • update_github_actions
  • update_ocp_ci_version
  • use_context_to_annotate
  • virtual_webhook

01 Jul 2026 07:03AM UTC coverage: 63.753% (-0.03%) from 63.78%
28503380159

push

github

SchSeba
fix(daemon): prevent test suite timeout flake during cleanup

The daemon test suite was flaking in CI because the envtest API server's
watch connection would intermittently break mid-run. When this happened:

1. The informer's watch disconnected during test execution
2. BeforeEach deleted and recreated the SriovNetworkNodeState object
3. On reflector reconnect, the re-list delivered the new object as an
   Update event (same key, different resourceVersion)
4. The controller's predicates (AnnotationChangedPredicate |
   GenerationChangedPredicate) filtered the event because both the old
   cached object and new object had identical generation (1) and drain
   annotations (DrainIdle)
5. The reconciler was never triggered, causing BeforeEach to hang waiting
   for SyncStatus == Succeeded

This is a test-only issue. In production, nodeStates are never
delete+recreated with pre-set drain annotations. The drain controller
adds annotations after creation, which always triggers the
AnnotationChangedPredicate.

Fix:
- Add a unique incrementing annotation (test.sriov.openshift.io/create-seq)
  to each newly created nodeState so the AnnotationChangedPredicate always
  passes after a re-list
- Bump this annotation on each poll iteration in BeforeEach so the
  informer sees a changed annotation whenever it reconnects
- Reduce retryTime from 5s to 1s so the annotation is bumped more
  frequently and the reconciler is triggered faster
- Set waitTime to 5 minutes (well under Go's 10m test timeout) to give
  the reflector adequate reconnection time in worst-case scenarios
- Register DeferCleanup(cancel) last in BeforeAll LIFO order to ensure
  the parent context is canceled before other cleanup, allowing the
  manager and podRecreator goroutines to exit promptly

Signed-off-by: Sebastian Sch <sebassch@gmail.com>

9709 of 15229 relevant lines covered (63.75%)

0.71 hits per line

Relevant lines Covered
Build:
Build:
15229 RELEVANT LINES 9709 COVERED LINES
0.71 HITS PER LINE
Source Files on fix/daemon-test-flake
  • Tree
  • List 110
  • Changed 4
  • Source Changed 0
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
28503380159 fix/daemon-test-flake fix(daemon): prevent test suite timeout flake during cleanup The daemon test suite was flaking in CI because the envtest API server's watch connection would intermittently break mid-run. When this happened: 1. The informer's watch disconnected d... push 01 Jul 2026 08:22AM UTC SchSeba github
63.75
28483543464 fix/daemon-test-flake fix(daemon): prevent test suite timeout flake during cleanup The daemon test suite was flaking in CI because the envtest API server's watch connection would intermittently break mid-run. When this happened: 1. The informer's watch disconnected d... push 01 Jul 2026 12:04AM UTC SchSeba github
63.77
28447074443 fix/daemon-test-flake fix(daemon): prevent test suite timeout flake during cleanup The DeferCleanup calls in the daemon test's BeforeAll had a LIFO execution order that could cause a hang: pr.Stop() ran first with an un-cancellable context.Background() Delete call. If... push 30 Jun 2026 01:27PM UTC SchSeba github
63.78
28433899007 fix/daemon-test-flake fix(daemon): prevent test suite timeout flake during cleanup The DeferCleanup calls in the daemon test's BeforeAll had a LIFO execution order that could cause a hang: pr.Stop() ran first with an un-cancellable context.Background() Delete call. If... push 30 Jun 2026 09:33AM UTC SchSeba github
63.56
28393873528 fix/daemon-test-flake fix(daemon): prevent test suite timeout flake during cleanup The DeferCleanup calls in the daemon test's BeforeAll had a LIFO execution order that could cause a hang: pr.Stop() ran first with an un-cancellable context.Background() Delete call. If... push 29 Jun 2026 06:39PM UTC SchSeba github
63.53
28392851068 fix/daemon-test-flake fix(daemon): prevent test suite timeout flake during cleanup The DeferCleanup calls in the daemon test's BeforeAll had a LIFO execution order that could cause a hang: pr.Stop() ran first with an un-cancellable context.Background() Delete call. If... push 29 Jun 2026 06:21PM UTC SchSeba github
63.57
See All Builds (707)

Badge your Repo: sriov-network-operator-1

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 · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc