fix(netbird): require explicit port in exposedAddress (#75)#79
Merged
mikkeldamsgaard merged 2 commits intomainfrom Apr 21, 2026
Merged
fix(netbird): require explicit port in exposedAddress (#75)#79mikkeldamsgaard merged 2 commits intomainfrom
mikkeldamsgaard merged 2 commits intomainfrom
Conversation
NetBird clients build their gRPC dial target from server.config.exposedAddress using Go's net/url parser, which surfaces "missing port in address" when no port is present (e.g. "https://netbird.example.com"). The README example showed a port-less URL, so users following it hit a confusing daemon error at first connect. Add a fail-fast Helm template validation that rejects port-less exposedAddress values with an actionable error pointing at the right form (e.g. "https://netbird.example.com:443"). Update README, values comment, and seed examples to use ":443" explicitly. Update the three OIDC e2e values files that previously used port-less localhost URLs. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #75.
Summary
netbird.validate.exposedAddress) fails the install/upgrade with an actionable error whenserver.config.exposedAddressis set without an explicit port. NetBird clients build their gRPC dial target from this URL using Go'snet/urlparser, which fails withmissing port in addresswhen the port is absent — even when it would match the scheme default.values.yamlcomment, and seed examples to use:443explicitly, with a callout above the minimal-config examples explaining the requirement.e2e-values-oidc-{embedded,keycloak,zitadel}.yaml) that previously used port-lesshttps://netbird.localhost.:443.Per
CLAUDE.mdrule #13,Chart.yamlversionandartifacthub.io/changesare unchanged — those go through/release. The CHANGELOGUnreleasedsection has the user-facing entry.Test plan
make lint— passes (2 charts)make unittest— 198 netbird tests pass (6 new), 11 snapshotsmake e2e-sqlite— PASS (chart deploys, PAT auth + peer registration)make e2e-postgres— PASSmake e2e-mysql— PASSmake e2e-oidc-keycloak— PASS (uses updated port-included exposedAddress)make e2e-oidc-zitadel— PASShelm template charts/netbird --set server.config.exposedAddress=https://netbird.example.com→ errors with…must include an explicit port…🤖 Generated with Claude Code