Skip to content

fix: reconnect port forwarding if pod is restarted (crw-11119)#314

Draft
adietish wants to merge 5 commits into
redhat-developer:mainfrom
adietish:crw-11119
Draft

fix: reconnect port forwarding if pod is restarted (crw-11119)#314
adietish wants to merge 5 commits into
redhat-developer:mainfrom
adietish:crw-11119

Conversation

@adietish

@adietish adietish commented Jun 4, 2026

Copy link
Copy Markdown
Collaborator

@coderabbitai

coderabbitai Bot commented Jun 4, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Enterprise

Run ID: dd361e67-cf62-4277-b188-6081a786b787

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@codecov-commenter

codecov-commenter commented Jun 4, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 51.53584% with 142 lines in your changes missing coverage. Please review.
✅ Project coverage is 25.84%. Comparing base (71098f6) to head (474685f).
⚠️ Report is 358 commits behind head on main.

Files with missing lines Patch % Lines
...com/redhat/devtools/gateway/DevSpacesConnection.kt 4.08% 90 Missing and 4 partials ⚠️
...hat/devtools/gateway/openshift/DevWorkspacePods.kt 60.65% 11 Missing and 13 partials ⚠️
...in/com/redhat/devtools/gateway/PodRollReconnect.kt 79.74% 5 Missing and 11 partials ⚠️
...com/redhat/devtools/gateway/WorkspacePodTracker.kt 79.31% 0 Missing and 6 partials ⚠️
.../redhat/devtools/gateway/server/RemoteIDEServer.kt 93.75% 1 Missing ⚠️
.../gateway/view/steps/DevSpacesWorkspacesStepView.kt 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##            main     #314       +/-   ##
==========================================
+ Coverage   0.00%   25.84%   +25.84%     
==========================================
  Files          4      104      +100     
  Lines         26     4414     +4388     
  Branches       0      830      +830     
==========================================
+ Hits           0     1141     +1141     
- Misses        26     3108     +3082     
- Partials       0      165      +165     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

adietish and others added 4 commits June 19, 2026 17:29
Signed-off-by: Andre Dietisheim <adietish@redhat.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Signed-off-by: Andre Dietisheim <adietish@redhat.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Signed-off-by: Andre Dietisheim <adietish@redhat.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
…methods

Signed-off-by: Andre Dietisheim <adietish@redhat.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
…pod roll

- Add retry loop (maxRetries, retryDelay) for transient failures during
  pod roll reconnect; permanent failures fail immediately.
- Distinguish TimeoutCancellationException from cancellation exceptions:
  retry it, propagate cancellation exceptions.
- Updated logging to reflect retry attempt count and omit stack trace
  for timeout failures.
- Rename readyTimeout -> READY_TIMEOUT (constant), double value 60->120s.
- Add cachePod() to seed cache without cluster query during pod roll.
- Update findFirstRunning() to return newest pod by creationTimestamp
  and exclude terminating pods (deletionTimestamp).
- Add comprehensive tests for retry, timeout, permanent failure, and
  cancellation scenarios.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants