[PR #4428] [MERGED] [management/client] Integrate Job API with Job Stream and Client Engine #20370

Open
opened 2026-08-05 05:07:10 -04:00 by saavagebueno · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/netbirdio/netbird/pull/4428
Author: @aliamerj
Created: 9/1/2025
Status: Merged
Merged: 9/23/2025
Merged by: @aliamerj

Base: feature/remote-debugHead: remote-debug/integration


📝 Commits (10+)

📊 Changes

24 files changed (+560 additions, -363 deletions)

View changed files

📝 client/android/client.go (+2 -2)
📝 client/cmd/debug.go (+1 -1)
📝 client/cmd/status.go (+1 -1)
📝 client/cmd/up.go (+2 -1)
📝 client/embed/embed.go (+3 -1)
📝 client/internal/connect.go (+9 -4)
client/internal/debug/upload.go (+101 -0)
📝 client/internal/debug/upload_test.go (+2 -2)
📝 client/internal/engine.go (+99 -32)
📝 client/internal/engine_test.go (+18 -34)
📝 client/ios/NetBirdSDK/client.go (+3 -2)
client/jobexec/executor.go (+35 -0)
📝 client/server/debug.go (+1 -95)
📝 client/server/server.go (+3 -92)
📝 client/status/status.go (+94 -5)
📝 client/status/status_test.go (+1 -1)
📝 client/ui/debug.go (+3 -3)
📝 management/server/grpcserver.go (+5 -5)
📝 management/server/jobChannel.go (+50 -26)
📝 management/server/peer.go (+14 -12)

...and 4 more files

📄 Description

Describe your changes

This PR connects the Job API with the peer job stream and updates both server and client code to work together.

What was done:

  • Integrated Job API with the JobManager stream channel.
  • Updated server logic to send and track jobs through the channel.
  • Implemented client-side handling in the engine for job requests and responses.
  • Adjusted existing code to align with the new unified job flow.

Stack

  • feature/remote-debug - ⚠️ No PR associated with branch

Checklist

  • Is it a bug fix
  • Is a typo/documentation fix
  • Is a feature enhancement
  • It is a refactor
  • Created tests that fail without the change (if possible)

By submitting this pull request, you confirm that you have read and agree to the terms of the Contributor License Agreement.

Documentation

Select exactly one:

  • I added/updated documentation for this change
  • Documentation is not needed for this change (explain why)

Docs PR URL (required if "docs added" is checked)

Paste the PR link from https://github.com/netbirdio/docs here:

https://github.com/netbirdio/docs/pull/__


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/netbirdio/netbird/pull/4428 **Author:** [@aliamerj](https://github.com/aliamerj) **Created:** 9/1/2025 **Status:** ✅ Merged **Merged:** 9/23/2025 **Merged by:** [@aliamerj](https://github.com/aliamerj) **Base:** `feature/remote-debug` ← **Head:** `remote-debug/integration` --- ### 📝 Commits (10+) - [`08641b7`](https://github.com/netbirdio/netbird/commit/08641b735dfec70ed60eef8f8cc1ebeb76462655) integrate api - [`171925d`](https://github.com/netbirdio/netbird/commit/171925d3c9a7a3002bd7d4c8a08bceb5ee2a6f07) fix typo and fix validation - [`e47e648`](https://github.com/netbirdio/netbird/commit/e47e6484fbfea637dad7c0aa1f32a6c535cfb20d) use real daemon address - [`dec307f`](https://github.com/netbirdio/netbird/commit/dec307f7d61ac0fab496c92df09097c287c7d847) redo the connect via address - [`f1cc9e4`](https://github.com/netbirdio/netbird/commit/f1cc9e4b8895c48e906ded9d49fb85264ddb1b79) Refactor the debug bundle generator to be ready to use from engine (#4469) - [`9cb9fc4`](https://github.com/netbirdio/netbird/commit/9cb9fc4085b1a50938f791948fe80497e93951d1) fix tests - [`7fba07b`](https://github.com/netbirdio/netbird/commit/7fba07b414c321349e1b4334852ed191d397e10a) fix lint - [`7c60ad6`](https://github.com/netbirdio/netbird/commit/7c60ad60edf81466fb76fa96806754fa84f6d1ce) fix bug with stream - [`36215b8`](https://github.com/netbirdio/netbird/commit/36215b8023fec7c9c590ac940f1f571777f38fd5) try refactor status 1 - [`426a6f2`](https://github.com/netbirdio/netbird/commit/426a6f21f3b0c35b152a673e4118bcf026dfa339) fix convert fullStatus to statusOutput & add logFile ### 📊 Changes **24 files changed** (+560 additions, -363 deletions) <details> <summary>View changed files</summary> 📝 `client/android/client.go` (+2 -2) 📝 `client/cmd/debug.go` (+1 -1) 📝 `client/cmd/status.go` (+1 -1) 📝 `client/cmd/up.go` (+2 -1) 📝 `client/embed/embed.go` (+3 -1) 📝 `client/internal/connect.go` (+9 -4) ➕ `client/internal/debug/upload.go` (+101 -0) 📝 `client/internal/debug/upload_test.go` (+2 -2) 📝 `client/internal/engine.go` (+99 -32) 📝 `client/internal/engine_test.go` (+18 -34) 📝 `client/ios/NetBirdSDK/client.go` (+3 -2) ➕ `client/jobexec/executor.go` (+35 -0) 📝 `client/server/debug.go` (+1 -95) 📝 `client/server/server.go` (+3 -92) 📝 `client/status/status.go` (+94 -5) 📝 `client/status/status_test.go` (+1 -1) 📝 `client/ui/debug.go` (+3 -3) 📝 `management/server/grpcserver.go` (+5 -5) 📝 `management/server/jobChannel.go` (+50 -26) 📝 `management/server/peer.go` (+14 -12) _...and 4 more files_ </details> ### 📄 Description ## Describe your changes This PR connects the Job API with the peer job stream and updates both server and client code to work together. #### What was done: - Integrated Job API with the JobManager stream channel. - Updated server logic to send and track jobs through the channel. - Implemented client-side handling in the engine for job requests and responses. - Adjusted existing code to align with the new unified job flow. ## Issue ticket number and link #4354 ## Stack - `feature/remote-debug` - :warning: No PR associated with branch <!-- branch-stack --> - \#4428 :point\_left: ### Checklist - [x] Is it a bug fix - [ ] Is a typo/documentation fix - [x] Is a feature enhancement - [ ] It is a refactor - [ ] Created tests that fail without the change (if possible) > By submitting this pull request, you confirm that you have read and agree to the terms of the [Contributor License Agreement](https://github.com/netbirdio/netbird/blob/main/CONTRIBUTOR_LICENSE_AGREEMENT.md). ## Documentation Select exactly one: - [ ] I added/updated documentation for this change - [x] Documentation is **not needed** for this change (explain why) ### Docs PR URL (required if "docs added" is checked) Paste the PR link from <https://github.com/netbirdio/docs> here: <https://github.com/netbirdio/docs/pull/>\_\_ --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
saavagebueno added the pull-request label 2026-08-05 05:07:10 -04:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: DYNR/netbird#20370