[client] Feature/upload bundle (#3734)

Add an upload bundle option with the flag --upload-bundle; by default, the upload will use a NetBird address, which can be replaced using the flag --upload-bundle-url.

The upload server is available under the /upload-server path. The release change will push a docker image to netbirdio/upload image repository.

The server supports using s3 with pre-signed URL for direct upload and local file for storing bundles.
This commit is contained in:
Maycon Santos
2025-04-29 00:43:50 +02:00
committed by GitHub
parent d8dc107bee
commit 2f44fe2e23
18 changed files with 1100 additions and 287 deletions

View File

@ -0,0 +1,16 @@
package types
const (
// ClientHeader is the header used to identify the client
ClientHeader = "x-nb-client"
// ClientHeaderValue is the value of the ClientHeader
ClientHeaderValue = "netbird"
// GetURLPath is the path for the GetURL request
GetURLPath = "/upload-url"
)
// GetURLResponse is the response for the GetURL request
type GetURLResponse struct {
URL string
Key string
}