Commit Graph
141 Commits
Author SHA1 Message Date
Philip LaineandGitHub 1bcd58a7cd Implement mock for Netbird API and client (#184)
This makes testing of the operator a lot simpler by enabling a quick way
to implement the crud endpoints for all the resources used.

Signed-off-by: Philip Laine <philip.laine@gmail.com>
2026-04-15 10:25:45 +02:00
Philip LaineandGitHub 9c4ca73712 Implement group resource (#181)
This change implements a new group resource. 

It also sets the standard for a resource reference will be done through
out the controller. A resource reference can either be done by ID or as
a local named reference to the actual resource. This allows end users to
chose if they want to manage things completely in the cluster or not.

Part of #172

Signed-off-by: Philip Laine <philip.laine@gmail.com>
2026-04-15 10:16:10 +02:00
Philip LaineandGitHub 26479a19c0 Implement new setup key resource (#178)
This change implements a new resource called SetupKey that manages the
lifecycle of setup keys and stores them in secrets.

A major change here is that we are also switching to using SSA for
resource management.

Part of #172

Signed-off-by: Philip Laine <philip.laine@gmail.com>
2026-04-13 12:20:35 +02:00
Philip LaineandGitHub 3efacfd4c8 Update controller-gen version and switch to using go tool (#170)
This makes updating of the versions a lot easier. Also we need to update
the controller gen version to support apply configuration.
2026-04-02 11:05:16 +02:00
Philip LaineandGitHub f1c382e6f2 Revert "Cleanup routing peer deployment creation" (#159)
Reverts netbirdio/kubernetes-operator#155
2026-03-23 17:56:43 +01:00
Philip LaineandGitHub a20570b692 Cleanup resource delete reconcile (#158)
This fixes resource delete to always run even when there are no
finalizers.
2026-03-23 15:52:14 +01:00
Philip LaineandGitHub 3a36cb6961 Cleanup routing peer deployment creation (#155)
This refactors the deployment creation for the routing peer to use the
create or update method. Keeping this a lot cleaner. It also changes to
set controller reference using the util method.
2026-03-23 11:44:09 +01:00
Nicolas FratiandGitHub b7ecf3c95d Release v0.3.0 rc.2 (#156) 2026-03-23 10:20:56 +01:00
Philip LaineandGitHub 8adc8855e5 Add support for private gateway (#154)
This change adds support for TCPRoutes when using a private gateway
class. This is similar to annotating services today. It also moves the
gateway classes to the Helm chart as it makes things a lot simpler for
the end user as they no longer have to define them.

Signed-off-by: Philip Laine <philip.laine@gmail.com>
2026-03-23 09:59:48 +01:00
Nicolas FratiandGitHub 2aa814f031 release candidate 0.3.0-rc.1 (#152) 2026-03-20 13:15:41 +01:00
Philip LaineandGitHub 54b2ab8efc Use Gateway listener to reference routing peer (#150)
This just changes how a routing peer is referenced. In my head this
model makes more sense, especially as we need at least one listener
right now.

Signed-off-by: Philip Laine <philip.laine@gmail.com>
2026-03-20 10:01:06 +01:00
Philip LaineandGitHub 39ab189fae Share NBResource between different routes (#149)
This changes the behavior of the Netbird resource so that they can be
shared between routes rather than having one unique created per route.
This is important as we may want to have different route types pointing
to the same service.

Signed-off-by: Philip Laine <philip.laine@gmail.com>
2026-03-19 18:28:35 +01:00
Philip LaineandGitHub e83dc472e2 Remove webhook for setup key resource (#148)
The webhook for the NBSetupKey does a mix of runtime validation and
configuration validation. The validation of secret key ref has been
switched to using CEL rules to achieve the same thing.

The other logic is just being removed as it is goes against common
practice in Kubernetes. We should not block secret deletion if a pod is
using the secret. Existing pods will keep running while new pods will
not be able to be created. This is expected behavior in other tools and
should be dealt with during reconcile.

Checking that secrets exist and other dependency problems should be done
during reconcile and then bubbled up with conditions instead.

Signed-off-by: Philip Laine <philip.laine@gmail.com>
2026-03-19 15:48:38 +01:00
Philip LaineandGitHub 7acd175882 Gateway API support (#117)
This change adds support for the new proxy service to the operator
through Gateway API. This change attempts to standardize concepts around
the Gateway API to allow for compatibility with other projects.

Fixes #111
Fixes #44

Signed-off-by: Philip Laine <philip.laine@gmail.com>
2026-03-19 13:01:58 +01:00
Philip LaineandGitHub ccf819d2ff Make runtime namespace configurable (#145)
Making the runtime namespace configurable makes it possible to run
locally outside of the cluster. This is useful for quick development
testing.

Signed-off-by: Philip Laine <philip.laine@gmail.com>
2026-03-18 12:00:31 +01:00
Philip LaineandGitHub 8267cc406a Remove option to disable http2 for metrics server (#143)
HTTP2 was disabled to mitigate security risks from CVE-2023-44487 and
CVE-2023-39325 which have long since been fixed in Go. Removing the
option that was false by default enables http2 and also reduces some
confusion about why it is an option in the first place.

Signed-off-by: Philip Laine <philip.laine@gmail.com>
2026-03-18 09:56:43 +01:00
Philip LaineandGitHub 9313fef43d Share Netbird client between all reconcilers (#122)
This changes the reconcilers to take a netbird client rather than
creating their own on setup.

Signed-off-by: Philip Laine <philip.laine@gmail.com>
2026-03-16 11:23:26 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
dca7782571 Bump github.com/netbirdio/netbird from 0.66.3 to 0.66.4 (#139)
Bumps
[github.com/netbirdio/netbird](https://github.com/netbirdio/netbird)
from 0.66.3 to 0.66.4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/netbirdio/netbird/releases">github.com/netbirdio/netbird's
releases</a>.</em></p>
<blockquote>
<h2>v0.66.4</h2>
<h2>Release Notes for v0.66.4</h2>
<h3>What's New</h3>
<h4>Management Improvements</h4>
<ul>
<li>
<p>Create a <strong>shallow copy of the account when buffering</strong>
to improve memory safety and performance.<br />
<a
href="https://redirect.github.com/netbirdio/netbird/pull/5572">netbirdio/netbird#5572</a></p>
</li>
<li>
<p>Set <strong>network map components by default</strong> and optimize
<strong>memory usage</strong>.<br />
<a
href="https://redirect.github.com/netbirdio/netbird/pull/5575">netbirdio/netbird#5575</a></p>
</li>
</ul>
<h4>Self-Hosted Improvements</h4>
<ul>
<li>Removed <strong>extra proxy domain instructions</strong> from the
getting started guide to simplify setup.<br />
<a
href="https://redirect.github.com/netbirdio/netbird/pull/5573">netbirdio/netbird#5573</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/netbirdio/netbird/compare/v0.66.3...v0.66.4">https://github.com/netbirdio/netbird/compare/v0.66.3...v0.66.4</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/netbirdio/netbird/commit/b5489d4986e6131f663ba24e330cbb3af4b92580"><code>b5489d4</code></a>
[management] set components network map by default and optimize memory
usage ...</li>
<li><a
href="https://github.com/netbirdio/netbird/commit/7a23c57cf8157f1c62619e68c6c104202c58a96b"><code>7a23c57</code></a>
[self-hosted] Remove extra proxy domain from getting started (<a
href="https://redirect.github.com/netbirdio/netbird/issues/5573">#5573</a>)</li>
<li><a
href="https://github.com/netbirdio/netbird/commit/11f891220e2ee5b1395e33a2e7a3672cd07f4bef"><code>11f8912</code></a>
[management] create a shallow copy of the account when buffering (<a
href="https://redirect.github.com/netbirdio/netbird/issues/5572">#5572</a>)</li>
<li>See full diff in <a
href="https://github.com/netbirdio/netbird/compare/v0.66.3...v0.66.4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/netbirdio/netbird&package-manager=go_modules&previous-version=0.66.3&new-version=0.66.4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-12 21:49:10 +01:00
Philip LaineandGitHub 9a422a4d17 Add checks for manifest and code generation (#140)
Manifest generation has drifted from what is committed to the repo. This
change adds checks for both manifests and code generation to make sure
it is up to date in every PR.
2026-03-12 21:40:51 +01:00
Philip LaineandGitHub 47b1f55c45 Set Go toolchain to v1.26.1 and apply modernizations (#138)
This change makes sure that we use the latest Go version when building
and applies some modernization fixes.
2026-03-12 21:40:36 +01:00
Philip LaineandGitHub 0fde3631b2 Remove unused scheme passed to reconcilers (#121)
The scheme is part of the manager so we do not need to pass it in the
struct.
2026-03-12 21:39:56 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Philip Laine
81f7a2bd51 Bump sigs.k8s.io/controller-runtime from 0.20.0 to 0.23.3 (#134)
Bumps
[sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime)
from 0.20.0 to 0.23.3.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/kubernetes-sigs/controller-runtime/releases">sigs.k8s.io/controller-runtime's
releases</a>.</em></p>
<blockquote>
<h2>v0.23.3</h2>
<h2>What's Changed</h2>
<ul>
<li>🐛 Ensure DefaulterRemoveUnknownOrOmitableFields is still working
even if objects are equal by <a
href="https://github.com/k8s-infra-cherrypick-robot"><code>@​k8s-infra-cherrypick-robot</code></a>
in <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/pull/3469">kubernetes-sigs/controller-runtime#3469</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/kubernetes-sigs/controller-runtime/compare/v0.23.2...v0.23.3">https://github.com/kubernetes-sigs/controller-runtime/compare/v0.23.2...v0.23.3</a></p>
<h2>v0.23.2</h2>
<h2>What's Changed</h2>
<ul>
<li>🐛 Fix fake client's SSA status patch resource version check by <a
href="https://github.com/k8s-infra-cherrypick-robot"><code>@​k8s-infra-cherrypick-robot</code></a>
in <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/pull/3446">kubernetes-sigs/controller-runtime#3446</a></li>
<li> Reduce memory usage of default webhooks by <a
href="https://github.com/k8s-infra-cherrypick-robot"><code>@​k8s-infra-cherrypick-robot</code></a>
in <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/pull/3467">kubernetes-sigs/controller-runtime#3467</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/kubernetes-sigs/controller-runtime/compare/v0.23.1...v0.23.2">https://github.com/kubernetes-sigs/controller-runtime/compare/v0.23.1...v0.23.2</a></p>
<h2>v0.23.1</h2>
<h2>What's Changed</h2>
<ul>
<li>🐛 Cache reader: Wait for cache sync when ReaderFailOnMissingInformer
is true by <a
href="https://github.com/k8s-infra-cherrypick-robot"><code>@​k8s-infra-cherrypick-robot</code></a>
in <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/pull/3433">kubernetes-sigs/controller-runtime#3433</a></li>
<li>🐛 Fix panic when using CRs with embedded pointer structs by <a
href="https://github.com/k8s-infra-cherrypick-robot"><code>@​k8s-infra-cherrypick-robot</code></a>
in <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/pull/3436">kubernetes-sigs/controller-runtime#3436</a></li>
<li>🌱 Test cache reader waits for cache sync by <a
href="https://github.com/k8s-infra-cherrypick-robot"><code>@​k8s-infra-cherrypick-robot</code></a>
in <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/pull/3438">kubernetes-sigs/controller-runtime#3438</a></li>
<li>🐛 Fakeclient: Fix status apply if existing object has
managedFields set by <a
href="https://github.com/k8s-infra-cherrypick-robot"><code>@​k8s-infra-cherrypick-robot</code></a>
in <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/pull/3437">kubernetes-sigs/controller-runtime#3437</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/kubernetes-sigs/controller-runtime/compare/v0.23.0...v0.23.1">https://github.com/kubernetes-sigs/controller-runtime/compare/v0.23.0...v0.23.1</a></p>
<h2>v0.23.0</h2>
<h2>🔆 Highlights</h2>
<ul>
<li>Client: Add subresource Apply support by <a
href="https://github.com/alvaroaleman"><code>@​alvaroaleman</code></a>
in <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/pull/3321">kubernetes-sigs/controller-runtime#3321</a></li>
<li>Conversion: Enable implementation of conversion outside of API
packages by <a
href="https://github.com/sbueringer"><code>@​sbueringer</code></a> in <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/pull/3335">kubernetes-sigs/controller-runtime#3335</a></li>
<li>Priorityqueue: Various improvements, bug fixes and now enabled per
default</li>
<li>Webhooks: Generic Validator and Defaulter by <a
href="https://github.com/alvaroaleman"><code>@​alvaroaleman</code></a>
in <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/pull/3360">kubernetes-sigs/controller-runtime#3360</a></li>
</ul>
<h2>⚠️ Breaking changes</h2>
<ul>
<li>Dependencies: Update to k8s.io/* v1.35 by <a
href="https://github.com/alvaroaleman"><code>@​alvaroaleman</code></a>
<a
href="https://github.com/dongjiang1989"><code>@​dongjiang1989</code></a>
<a href="https://github.com/kannon92"><code>@​kannon92</code></a> (<a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/issues/3316">#3316</a>,
<a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/issues/3349">#3349</a>,
<a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/issues/3386">#3386</a>,
<a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/issues/3391">#3391</a>,
<a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/issues/3401">#3401</a>)</li>
<li>Client: Add subresource Apply support by <a
href="https://github.com/alvaroaleman"><code>@​alvaroaleman</code></a>
in <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/pull/3321">kubernetes-sigs/controller-runtime#3321</a></li>
<li>Events: Migration to the new events API by <a
href="https://github.com/clebs"><code>@​clebs</code></a> in <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/pull/3262">kubernetes-sigs/controller-runtime#3262</a>
<ul>
<li>Using the new <code>GetEventRecorderFor</code> requires updating
your rbac for events to use the <code>events.k8s.io</code> apiGroup
rather than the `` (core) apiGroup</li>
</ul>
</li>
<li>Fakeclient: Set ResourceVersion for SSA Create by <a
href="https://github.com/alvaroaleman"><code>@​alvaroaleman</code></a>
in <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/pull/3311">kubernetes-sigs/controller-runtime#3311</a></li>
<li>Webhooks: Generic Validator and Defaulter by <a
href="https://github.com/alvaroaleman"><code>@​alvaroaleman</code></a>
in <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/pull/3360">kubernetes-sigs/controller-runtime#3360</a>
<ul>
<li>Existing code of the form
<code>builder.WebhookManagedBy(mgr).For(&amp;corev1.Deployment{})</code>
has to be changed to <code>builder.WebhookManagedBy(mgr,
&amp;appsv1.Deployment{})</code></li>
<li>Existing webhook implementations have to be changed to take the
concrete object rather than <code>runtime.Object</code>, for example
from <code>ValidateCreate(ctx context.Context, obj runtime.Object)
(admission.Warnings, error)</code> to <code>ValidateCreate(ctx
context.Context, obj *appsv1.Deployment) (admission.Warnings,
error)</code></li>
</ul>
</li>
</ul>
<h2> Features</h2>
<ul>
<li>Cache: Allow fine-granular SyncPeriod configuration by <a
href="https://github.com/sbueringer"><code>@​sbueringer</code></a> in <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/pull/3376">kubernetes-sigs/controller-runtime#3376</a></li>
<li>Client: Add FieldOwner option to client.Options by <a
href="https://github.com/aerfio"><code>@​aerfio</code></a> in <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/pull/3389">kubernetes-sigs/controller-runtime#3389</a></li>
<li>Client: Add FieldValidation option to client.Options by <a
href="https://github.com/aerfio"><code>@​aerfio</code></a> in <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/pull/3393">kubernetes-sigs/controller-runtime#3393</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/kubernetes-sigs/controller-runtime/commit/f9589b9f2b9dddf8532b432bb8315f2820ab9971"><code>f9589b9</code></a>
Merge pull request <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/issues/3469">#3469</a>
from k8s-infra-cherrypick-robot/cherry-pick-3468-to-...</li>
<li><a
href="https://github.com/kubernetes-sigs/controller-runtime/commit/25615ad1d1229db805cec6b0f3f29f284fe53be1"><code>25615ad</code></a>
Ensure DefaulterRemoveUnknownOrOmitableFields is still working even if
object...</li>
<li><a
href="https://github.com/kubernetes-sigs/controller-runtime/commit/8122a6266696b980fc9219c2fbb48bb4ce60d12b"><code>8122a62</code></a>
Merge pull request <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/issues/3467">#3467</a>
from k8s-infra-cherrypick-robot/cherry-pick-3463-to-...</li>
<li><a
href="https://github.com/kubernetes-sigs/controller-runtime/commit/35093c6117da44c29f3a03d06e379d606814018d"><code>35093c6</code></a>
Reduce memory usage of default webhooks</li>
<li><a
href="https://github.com/kubernetes-sigs/controller-runtime/commit/4dbfa5c66aa24a35003c41507385c2a91e94d404"><code>4dbfa5c</code></a>
[release-0.23] 🐛 Fix fake client's SSA status patch resource version
check (#...</li>
<li><a
href="https://github.com/kubernetes-sigs/controller-runtime/commit/f52bbb8bb1a2275cbe90dec8d6c12d5cacb1a7de"><code>f52bbb8</code></a>
Merge pull request <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/issues/3437">#3437</a>
from k8s-infra-cherrypick-robot/cherry-pick-3430-to-...</li>
<li><a
href="https://github.com/kubernetes-sigs/controller-runtime/commit/4f41337fdd898537c6633a174cd539cb2e0c4d15"><code>4f41337</code></a>
Merge pull request <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/issues/3438">#3438</a>
from k8s-infra-cherrypick-robot/cherry-pick-3434-to-...</li>
<li><a
href="https://github.com/kubernetes-sigs/controller-runtime/commit/e29a1b93fae5c5f22c992c57b11dcf90ccc35c53"><code>e29a1b9</code></a>
seedling: Test cache reader waits for cache sync</li>
<li><a
href="https://github.com/kubernetes-sigs/controller-runtime/commit/83c8dc31c46c621c336c8a7749ee41658b6d17e1"><code>83c8dc3</code></a>
bug: Fakeclient: Fix status apply if existing object has managedFields
set</li>
<li><a
href="https://github.com/kubernetes-sigs/controller-runtime/commit/bf6bcd55b4d5eba00273426d61db313dcd2a6c7f"><code>bf6bcd5</code></a>
Merge pull request <a
href="https://redirect.github.com/kubernetes-sigs/controller-runtime/issues/3436">#3436</a>
from k8s-infra-cherrypick-robot/cherry-pick-3431-to-...</li>
<li>Additional commits viewable in <a
href="https://github.com/kubernetes-sigs/controller-runtime/compare/v0.20.0...v0.23.3">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=sigs.k8s.io/controller-runtime&package-manager=go_modules&previous-version=0.20.0&new-version=0.23.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Philip Laine <philip.laine@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Philip Laine <philip.laine@gmail.com>
2026-03-11 14:18:09 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
ad42dfe3e5 Bump github.com/onsi/ginkgo/v2 from 2.21.0 to 2.28.1 (#132)
Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from
2.21.0 to 2.28.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/onsi/ginkgo/releases">github.com/onsi/ginkgo/v2's
releases</a>.</em></p>
<blockquote>
<h2>v2.28.1</h2>
<h2>2.28.1</h2>
<p>Update all dependencies. This auto-updated the required version of Go
to 1.24, consistent with the fact that Go 1.23 has been out of support
for almost six months.</p>
<h2>v2.28.0</h2>
<h2>2.28.0</h2>
<p>Ginkgo's SemVer filter now supports filtering multiple components by
SemVer version:</p>
<pre lang="go"><code>It(&quot;should work in a specific version range
(1.0.0, 2.0.0) and third-party dependency redis in [8.0.0, ~)&quot;,
SemVerConstraint(&quot;&gt;= 3.2.0&quot;),
ComponentSemVerConstraint(&quot;redis&quot;, &quot;&gt;= 8.0.0&quot;)
func() {
// This test will only run when version is between 1.0.0 (exclusive) and
2.0.0 (exclusive) and redis version is &gt;= 8.0.0
})
</code></pre>
<p>can be filtered in or out with an invocation like:</p>
<pre lang="bash"><code>ginkgo --sem-ver-filter=&quot;2.1.1,
redis=8.2.0&quot;
</code></pre>
<p>Huge thanks to <a
href="https://github.com/Icarus9913"><code>@​Icarus9913</code></a> for
working on this!</p>
<h2>v2.27.5</h2>
<h2>2.27.5</h2>
<h3>Fixes</h3>
<p>Don't make a new formatter for each GinkgoT(); that's just silly and
uses precious memory</p>
<h2>v2.27.4</h2>
<h2>2.27.4</h2>
<h3>Fixes</h3>
<ul>
<li>CurrentTreeConstructionNodeReport: fix for nested container nodes
[59bc751]</li>
</ul>
<h2>v2.27.3</h2>
<h2>2.27.3</h2>
<h3>Fixes</h3>
<p>report exit result in case of failure [1c9f356]
fix data race [ece19c8]</p>
<h2>v2.27.2</h2>
<h2>2.27.2</h2>
<h3>Fixes</h3>
<ul>
<li>inline automaxprocs to simplify dependencies; this will be removed
when Go 1.26 comes out [a69113a]</li>
</ul>
<h3>Maintenance</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md">github.com/onsi/ginkgo/v2's
changelog</a>.</em></p>
<blockquote>
<h2>2.28.1</h2>
<p>Update all dependencies. This auto-updated the required version of Go
to 1.24, consistent with the fact that Go 1.23 has been out of support
for almost six months.</p>
<h2>2.28.0</h2>
<p>Ginkgo's SemVer filter now supports filtering multiple components by
SemVer version:</p>
<pre lang="go"><code>It(&quot;should work in a specific version range
(1.0.0, 2.0.0) and third-party dependency redis in [8.0.0, ~)&quot;,
SemVerConstraint(&quot;&gt;= 3.2.0&quot;),
ComponentSemVerConstraint(&quot;redis&quot;, &quot;&gt;= 8.0.0&quot;)
func() {
// This test will only run when version is between 1.0.0 (exclusive) and
2.0.0 (exclusive) and redis version is &gt;= 8.0.0
})
</code></pre>
<p>can be filtered in or out with an invocation like:</p>
<pre lang="bash"><code>ginkgo --sem-ver-filter=&quot;2.1.1,
redis=8.2.0&quot;
</code></pre>
<p>Huge thanks to <a
href="https://github.com/Icarus9913"><code>@​Icarus9913</code></a> for
working on this!</p>
<h2>2.27.5</h2>
<h3>Fixes</h3>
<p>Don't make a new formatter for each GinkgoT(); that's just silly and
uses precious memory</p>
<h2>2.27.4</h2>
<h3>Fixes</h3>
<ul>
<li>CurrentTreeConstructionNodeReport: fix for nested container nodes
[59bc751]</li>
</ul>
<h2>2.27.3</h2>
<h3>Fixes</h3>
<p>report exit result in case of failure [1c9f356]
fix data race [ece19c8]</p>
<h2>2.27.2</h2>
<h3>Fixes</h3>
<ul>
<li>inline automaxprocs to simplify dependencies; this will be removed
when Go 1.26 comes out [a69113a]</li>
</ul>
<h3>Maintenance</h3>
<ul>
<li>Fix syntax errors and typo [a99c6e0]</li>
<li>Fix paragraph position error [f993df5]</li>
</ul>
<h2>2.27.1</h2>
<h3>Fixes</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/onsi/ginkgo/commit/5d1d628ac86668c8f944c8c491c3d1ab86b3bed4"><code>5d1d628</code></a>
v2.28.1</li>
<li><a
href="https://github.com/onsi/ginkgo/commit/676f985d26d9b5d02f73086760883f7086bb5386"><code>676f985</code></a>
update test mu language</li>
<li><a
href="https://github.com/onsi/ginkgo/commit/8032100d256f25df9be61f2623fc244c9ea0cafb"><code>8032100</code></a>
appease go vet</li>
<li><a
href="https://github.com/onsi/ginkgo/commit/41ca8077223910d4d20e099204a8520057ab8b82"><code>41ca807</code></a>
bump dependencies</li>
<li><a
href="https://github.com/onsi/ginkgo/commit/2b2305b02aad8f5316b0bfcaabe5b9789d988db6"><code>2b2305b</code></a>
v2.28.0</li>
<li><a
href="https://github.com/onsi/ginkgo/commit/71d2d89adc9387d4f4fc579438b5631d9180d687"><code>71d2d89</code></a>
feat: support component semantic version filtering</li>
<li><a
href="https://github.com/onsi/ginkgo/commit/8cbbcb4709d306183de94f0699dd92affeb6f5b0"><code>8cbbcb4</code></a>
Fix doclink for ginkgo run</li>
<li><a
href="https://github.com/onsi/ginkgo/commit/a92830749ce9b1271ffac08abce793ae937fe9d4"><code>a928307</code></a>
v2.27.5</li>
<li><a
href="https://github.com/onsi/ginkgo/commit/0d0e96db305b01ce8642008053b857363ca87ecb"><code>0d0e96d</code></a>
don't make a new formatter for each GinkgoT(); that's just silly and
uses pre...</li>
<li><a
href="https://github.com/onsi/ginkgo/commit/867ce95f5142649695406f751f883c99ea45c0d5"><code>867ce95</code></a>
v2.27.4</li>
<li>Additional commits viewable in <a
href="https://github.com/onsi/ginkgo/compare/v2.21.0...v2.28.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/onsi/ginkgo/v2&package-manager=go_modules&previous-version=2.21.0&new-version=2.28.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-11 12:48:11 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
57ac526208 Bump github.com/netbirdio/netbird from 0.66.0 to 0.66.3 (#137)
Bumps
[github.com/netbirdio/netbird](https://github.com/netbirdio/netbird)
from 0.66.0 to 0.66.3.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/netbirdio/netbird/releases">github.com/netbirdio/netbird's
releases</a>.</em></p>
<blockquote>
<h2>v0.66.3</h2>
<h2>Release Notes for v0.66.3</h2>
<h3>What's New</h3>
<h4>Client Improvements</h4>
<ul>
<li>Fixed <strong>&quot;reset connection&quot; error after wake from
sleep</strong> to improve reconnection stability.<br />
<a
href="https://redirect.github.com/netbirdio/netbird/pull/5522">netbirdio/netbird#5522</a></li>
<li>Fixed <strong>exit node menu not refreshing on Windows</strong>.<br
/>
<a
href="https://redirect.github.com/netbirdio/netbird/pull/5553">netbirdio/netbird#5553</a></li>
</ul>
<h4>Management Improvements</h4>
<ul>
<li>Added <strong>per-target options to the reverse proxy</strong>
(management + proxy).<br />
<a
href="https://redirect.github.com/netbirdio/netbird/pull/5501">netbirdio/netbird#5501</a></li>
<li>Avoided breaking <strong>single account mode when switching
domains</strong>.<br />
<a
href="https://redirect.github.com/netbirdio/netbird/pull/5511">netbirdio/netbird#5511</a></li>
<li>Added <strong>stable domain resolution for the combined
server</strong>.<br />
<a
href="https://redirect.github.com/netbirdio/netbird/pull/5515">netbirdio/netbird#5515</a></li>
<li>Fixed <strong>domain uniqueness validation</strong>.<br />
<a
href="https://redirect.github.com/netbirdio/netbird/pull/5529">netbirdio/netbird#5529</a></li>
<li>Added <strong>activity events for domain operations</strong>.<br />
<a
href="https://redirect.github.com/netbirdio/netbird/pull/5548">netbirdio/netbird#5548</a></li>
<li>Switched proxy registration to use <strong>real IP
address</strong>.<br />
<a
href="https://redirect.github.com/netbirdio/netbird/pull/5525">netbirdio/netbird#5525</a></li>
<li>Cached <strong>PKCE state</strong> to improve login flow
reliability.<br />
<a
href="https://redirect.github.com/netbirdio/netbird/pull/5516">netbirdio/netbird#5516</a></li>
<li>Count <strong>login request duration metrics only for successful
logins</strong>.<br />
<a
href="https://redirect.github.com/netbirdio/netbird/pull/5545">netbirdio/netbird#5545</a></li>
<li>Aggregated <strong>gRPC metrics by account ID</strong>.<br />
<a
href="https://redirect.github.com/netbirdio/netbird/pull/5486">netbirdio/netbird#5486</a></li>
</ul>
<h4>Proxy Improvements</h4>
<ul>
<li>Refactored <strong>proxy metrics</strong> and added <strong>usage
logs</strong>.<br />
<a
href="https://redirect.github.com/netbirdio/netbird/pull/5533">netbirdio/netbird#5533</a></li>
</ul>
<h4>CI &amp; Misc</h4>
<ul>
<li>Added <strong>PR title validation workflow</strong>.<br />
<a
href="https://redirect.github.com/netbirdio/netbird/pull/5503">netbirdio/netbird#5503</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/netbirdio/netbird/compare/v0.66.2...v0.66.3">https://github.com/netbirdio/netbird/compare/v0.66.2...v0.66.3</a></p>
<h2>v0.66.2</h2>
<h2>What's Changed</h2>
<ul>
<li>[management] Store connected proxies in DB by <a
href="https://github.com/pascal-fischer"><code>@​pascal-fischer</code></a>
in <a
href="https://redirect.github.com/netbirdio/netbird/pull/5472">netbirdio/netbird#5472</a></li>
<li>[management] Fix embedded IdP metrics to count local and generic
OIDC users by <a
href="https://github.com/braginini"><code>@​braginini</code></a> in <a
href="https://redirect.github.com/netbirdio/netbird/pull/5498">netbirdio/netbird#5498</a></li>
<li>[client] Fix SSH JWT auth failure with Azure Entra ID iat backdating
by <a href="https://github.com/hbzhost"><code>@​hbzhost</code></a> in <a
href="https://redirect.github.com/netbirdio/netbird/pull/5471">netbirdio/netbird#5471</a></li>
<li>[misc] Add ISSUE_TEMPLATE configuration file by <a
href="https://github.com/mlsmaycon"><code>@​mlsmaycon</code></a> in <a
href="https://redirect.github.com/netbirdio/netbird/pull/5500">netbirdio/netbird#5500</a></li>
<li>[management] Replace in-memory expose tracker with SQL-backed
operations by <a
href="https://github.com/mlsmaycon"><code>@​mlsmaycon</code></a> in <a
href="https://redirect.github.com/netbirdio/netbird/pull/5494">netbirdio/netbird#5494</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/hbzhost"><code>@​hbzhost</code></a> made
their first contribution in <a
href="https://redirect.github.com/netbirdio/netbird/pull/5471">netbirdio/netbird#5471</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/netbirdio/netbird/commit/5585adce18cea6ba6e5673039b5d1f104006cedc"><code>5585adc</code></a>
[management] add activity events for domains (<a
href="https://redirect.github.com/netbirdio/netbird/issues/5548">#5548</a>)</li>
<li><a
href="https://github.com/netbirdio/netbird/commit/f88429982306156f9edecb3ae8046135c9f0398a"><code>f884299</code></a>
[proxy] refactor metrics and add usage logs (<a
href="https://redirect.github.com/netbirdio/netbird/issues/5533">#5533</a>)</li>
<li><a
href="https://github.com/netbirdio/netbird/commit/15aa6bae1b393459fe2300b815be1fe69331b20e"><code>15aa6ba</code></a>
[client] Fix exit node menu not refreshing on Windows (<a
href="https://redirect.github.com/netbirdio/netbird/issues/5553">#5553</a>)</li>
<li><a
href="https://github.com/netbirdio/netbird/commit/11eb725ac8c56fb2430f0b940903ccba9c15c781"><code>11eb725</code></a>
[management] only count login request duration for successful logins (<a
href="https://redirect.github.com/netbirdio/netbird/issues/5545">#5545</a>)</li>
<li><a
href="https://github.com/netbirdio/netbird/commit/30c02ab78c7bf05d610a636f7a2446144dd0ba01"><code>30c02ab</code></a>
[management] use the cache for the pkce state (<a
href="https://redirect.github.com/netbirdio/netbird/issues/5516">#5516</a>)</li>
<li><a
href="https://github.com/netbirdio/netbird/commit/3acd86e34686caaf43748f9d780cb2252c229110"><code>3acd86e</code></a>
[client] &quot;reset connection&quot; error on wake from sleep (<a
href="https://redirect.github.com/netbirdio/netbird/issues/5522">#5522</a>)</li>
<li><a
href="https://github.com/netbirdio/netbird/commit/5c20f13c48768a80d9e963f2d14565ff16f99563"><code>5c20f13</code></a>
[management] fix domain uniqueness (<a
href="https://redirect.github.com/netbirdio/netbird/issues/5529">#5529</a>)</li>
<li><a
href="https://github.com/netbirdio/netbird/commit/e6587b071dac374ed2f4ca3d2219977d2e13ff02"><code>e6587b0</code></a>
[management] use realip for proxy registration (<a
href="https://redirect.github.com/netbirdio/netbird/issues/5525">#5525</a>)</li>
<li><a
href="https://github.com/netbirdio/netbird/commit/85451ab4cd48101ba2d68832db4902e3cca9bf1b"><code>85451ab</code></a>
[management] Add stable domain resolution for combined server (<a
href="https://redirect.github.com/netbirdio/netbird/issues/5515">#5515</a>)</li>
<li><a
href="https://github.com/netbirdio/netbird/commit/a7f3ba03eb6a284d9355192e1c3992a7ab6ef088"><code>a7f3ba0</code></a>
[management] aggregate grpc metrics by accountID (<a
href="https://redirect.github.com/netbirdio/netbird/issues/5486">#5486</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/netbirdio/netbird/compare/v0.66.0...v0.66.3">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/netbirdio/netbird&package-manager=go_modules&previous-version=0.66.0&new-version=0.66.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-11 11:46:52 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
55d12bfa13 Bump github.com/onsi/gomega from 1.35.1 to 1.39.1 (#136)
Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from
1.35.1 to 1.39.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/onsi/gomega/releases">github.com/onsi/gomega's
releases</a>.</em></p>
<blockquote>
<h2>v1.39.1</h2>
<h2>1.39.1</h2>
<p>Update all dependencies. This auto-updated the required version of Go
to 1.24, consistent with the fact that Go 1.23 has been out of support
for almost six months.</p>
<h2>v1.39.0</h2>
<h2>1.39.0</h2>
<h3>Features</h3>
<p>Add <code>MatchErrorStrictly</code> which only passes if
<code>errors.Is(actual, expected)</code> returns true.
<code>MatchError</code>, by contrast, will fallback to string
comparison.</p>
<h2>v1.38.3</h2>
<h2>1.38.3</h2>
<h3>Fixes</h3>
<p>make string formatitng more consistent for users who use
format.Object directly</p>
<h2>v1.38.2</h2>
<h2>1.38.2</h2>
<ul>
<li>roll back to go 1.23.0 [c404969]</li>
</ul>
<h2>v1.38.1</h2>
<h2>1.38.1</h2>
<h3>Fixes</h3>
<p>Numerous minor fixes and dependency bumps</p>
<h2>v1.38.0</h2>
<h2>1.38.0</h2>
<h3>Features</h3>
<ul>
<li>gstruct handles extra unexported fields [4ee7ed0]</li>
</ul>
<h3>Fixes</h3>
<ul>
<li>support [] in IgnoringTopFunction function signatures (<a
href="https://redirect.github.com/onsi/gomega/issues/851">#851</a>)
[36bbf72]</li>
</ul>
<h3>Maintenance</h3>
<ul>
<li>Bump golang.org/x/net from 0.40.0 to 0.41.0 (<a
href="https://redirect.github.com/onsi/gomega/issues/846">#846</a>)
[529d408]</li>
<li>Fix typo [acd1f55]</li>
<li>Bump google.golang.org/protobuf from 1.36.5 to 1.36.6 (<a
href="https://redirect.github.com/onsi/gomega/issues/835">#835</a>)
[bae65a0]</li>
<li>Bump nokogiri from 1.18.4 to 1.18.8 in /docs (<a
href="https://redirect.github.com/onsi/gomega/issues/842">#842</a>)
[8dda91f]</li>
<li>Bump golang.org/x/net from 0.39.0 to 0.40.0 (<a
href="https://redirect.github.com/onsi/gomega/issues/843">#843</a>)
[212d812]</li>
<li>Bump github.com/onsi/ginkgo/v2 from 2.23.3 to 2.23.4 (<a
href="https://redirect.github.com/onsi/gomega/issues/839">#839</a>)
[59bd7f9]</li>
<li>Bump nokogiri from 1.18.1 to 1.18.4 in /docs (<a
href="https://redirect.github.com/onsi/gomega/issues/834">#834</a>)
[328c729]</li>
<li>Bump uri from 1.0.2 to 1.0.3 in /docs (<a
href="https://redirect.github.com/onsi/gomega/issues/826">#826</a>)
[9a798a1]</li>
<li>Bump golang.org/x/net from 0.37.0 to 0.39.0 (<a
href="https://redirect.github.com/onsi/gomega/issues/841">#841</a>)
[04a72c6]</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/onsi/gomega/blob/master/CHANGELOG.md">github.com/onsi/gomega's
changelog</a>.</em></p>
<blockquote>
<h2>1.39.1</h2>
<p>Update all dependencies. This auto-updated the required version of Go
to 1.24, consistent with the fact that Go 1.23 has been out of support
for almost six months.</p>
<h2>1.39.0</h2>
<h3>Features</h3>
<p>Add <code>MatchErrorStrictly</code> which only passes if
<code>errors.Is(actual, expected)</code> returns true.
<code>MatchError</code>, by contrast, will fallback to string
comparison.</p>
<h2>1.38.3</h2>
<h3>Fixes</h3>
<p>make string formatitng more consistent for users who use
format.Object directly</p>
<h2>1.38.2</h2>
<ul>
<li>roll back to go 1.23.0 [c404969]</li>
</ul>
<h2>1.38.1</h2>
<h3>Fixes</h3>
<p>Numerous minor fixes and dependency bumps</p>
<h2>1.38.0</h2>
<h3>Features</h3>
<ul>
<li>gstruct handles extra unexported fields [4ee7ed0]</li>
</ul>
<h3>Fixes</h3>
<ul>
<li>support [] in IgnoringTopFunction function signatures (<a
href="https://redirect.github.com/onsi/gomega/issues/851">#851</a>)
[36bbf72]</li>
</ul>
<h3>Maintenance</h3>
<ul>
<li>Bump golang.org/x/net from 0.40.0 to 0.41.0 (<a
href="https://redirect.github.com/onsi/gomega/issues/846">#846</a>)
[529d408]</li>
<li>Fix typo [acd1f55]</li>
<li>Bump google.golang.org/protobuf from 1.36.5 to 1.36.6 (<a
href="https://redirect.github.com/onsi/gomega/issues/835">#835</a>)
[bae65a0]</li>
<li>Bump nokogiri from 1.18.4 to 1.18.8 in /docs (<a
href="https://redirect.github.com/onsi/gomega/issues/842">#842</a>)
[8dda91f]</li>
<li>Bump golang.org/x/net from 0.39.0 to 0.40.0 (<a
href="https://redirect.github.com/onsi/gomega/issues/843">#843</a>)
[212d812]</li>
<li>Bump github.com/onsi/ginkgo/v2 from 2.23.3 to 2.23.4 (<a
href="https://redirect.github.com/onsi/gomega/issues/839">#839</a>)
[59bd7f9]</li>
<li>Bump nokogiri from 1.18.1 to 1.18.4 in /docs (<a
href="https://redirect.github.com/onsi/gomega/issues/834">#834</a>)
[328c729]</li>
<li>Bump uri from 1.0.2 to 1.0.3 in /docs (<a
href="https://redirect.github.com/onsi/gomega/issues/826">#826</a>)
[9a798a1]</li>
<li>Bump golang.org/x/net from 0.37.0 to 0.39.0 (<a
href="https://redirect.github.com/onsi/gomega/issues/841">#841</a>)
[04a72c6]</li>
</ul>
<h2>1.37.0</h2>
<h3>Features</h3>
<ul>
<li>add To/ToNot/NotTo aliases for AsyncAssertion [5666f98]</li>
</ul>
<h2>1.36.3</h2>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/onsi/gomega/commit/1a25a36414f51967615277623eed3b85b0ca6ce8"><code>1a25a36</code></a>
v1.39.1</li>
<li><a
href="https://github.com/onsi/gomega/commit/406faee2de82aa2584ea4d76b0e2662f70ae4d2c"><code>406faee</code></a>
bump all deps</li>
<li><a
href="https://github.com/onsi/gomega/commit/49561ad293853e660030f8397b07607127e3ebb7"><code>49561ad</code></a>
v1.39.0</li>
<li><a
href="https://github.com/onsi/gomega/commit/8f7f42585ccc794dcb3a4979ac7d67e00fb070ae"><code>8f7f425</code></a>
document MatchErrorStrictly</li>
<li><a
href="https://github.com/onsi/gomega/commit/bae643da0469185d9502e8d7528da137f4c62320"><code>bae643d</code></a>
add matcher relecting errors.Is behavior</li>
<li><a
href="https://github.com/onsi/gomega/commit/a3ca2ca026268dc6acfc60a2e8393b33b428c507"><code>a3ca2ca</code></a>
v1.38.3</li>
<li><a
href="https://github.com/onsi/gomega/commit/4dada364c7635fffe6b8a6b45a7588dabd64cdf4"><code>4dada36</code></a>
fix failing have http tests</li>
<li><a
href="https://github.com/onsi/gomega/commit/d40c6917ce1a2c9299bda4b900b59d80bdefc689"><code>d40c691</code></a>
make string formatitng more consistent for users who use format.Object
directly</li>
<li><a
href="https://github.com/onsi/gomega/commit/2a37b463cac790e945d16f52c1c13a4e835511a1"><code>2a37b46</code></a>
doc: fix typos</li>
<li><a
href="https://github.com/onsi/gomega/commit/ee26170d3a0a21d5702f4164df42eb99c50221d7"><code>ee26170</code></a>
docs: fix HaveValue example</li>
<li>Additional commits viewable in <a
href="https://github.com/onsi/gomega/compare/v1.35.1...v1.39.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/onsi/gomega&package-manager=go_modules&previous-version=1.35.1&new-version=1.39.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-11 11:40:12 +01:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
b1f75037a7 Bump the k8s group across 1 directory with 3 updates (#129)
Bumps the k8s group with 2 updates in the / directory:
[k8s.io/api](https://github.com/kubernetes/api) and
[k8s.io/client-go](https://github.com/kubernetes/client-go).

Updates `k8s.io/api` from 0.32.0 to 0.35.2
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/kubernetes/api/commit/8a137cde6e07bb0d73e40cb0bf8d7d550507989f"><code>8a137cd</code></a>
Update dependencies to v0.35.2 tag</li>
<li><a
href="https://github.com/kubernetes/api/commit/bbcbaa8f86658a1eee90e6844f7de6ed1cd90a71"><code>bbcbaa8</code></a>
Merge remote-tracking branch 'origin/master' into release-1.35</li>
<li><a
href="https://github.com/kubernetes/api/commit/5bced611d53f8403fba7dba4665af3c8efeef2df"><code>5bced61</code></a>
Bump golang.org/x/crypto to v0.45.0</li>
<li><a
href="https://github.com/kubernetes/api/commit/39e2e26f9bf7798ac89794b9e8d635920f0b0f94"><code>39e2e26</code></a>
Merge pull request <a
href="https://redirect.github.com/kubernetes/api/issues/135131">#135131</a>
from Dev1622/sig-storage/mock-expand-flake-fix</li>
<li><a
href="https://github.com/kubernetes/api/commit/c22b4a13de033ea7608b21b9ba169ef53b4eabbd"><code>c22b4a1</code></a>
vendor: update vendor and license metadata after replacing BeTrue usage
in cs...</li>
<li><a
href="https://github.com/kubernetes/api/commit/e3b1f3dcd880c03e17f16f2ea0fe44ad8f06d94a"><code>e3b1f3d</code></a>
Resolve lint restriction on BeTrue by introducing Succeed() with
contextual e...</li>
<li><a
href="https://github.com/kubernetes/api/commit/3da327cf32bb6abb65297ba4ed78408a6c2ba6af"><code>3da327c</code></a>
Update vendored dependencies</li>
<li><a
href="https://github.com/kubernetes/api/commit/c764b4447eb3f83128ceda98fc196cc4f2b8582d"><code>c764b44</code></a>
Merge pull request <a
href="https://redirect.github.com/kubernetes/api/issues/132919">#132919</a>
from ndixita/pod-level-in-place-pod-resize</li>
<li><a
href="https://github.com/kubernetes/api/commit/aced136bc07bebcc902b4122103c791a074b29ee"><code>aced136</code></a>
Generated files from API changes</li>
<li><a
href="https://github.com/kubernetes/api/commit/02d790d8aae61644814b7333d5c4edf229367e99"><code>02d790d</code></a>
Adding Resources and AllocatedResoures fields to the list of expected
fields ...</li>
<li>Additional commits viewable in <a
href="https://github.com/kubernetes/api/compare/v0.32.0...v0.35.2">compare
view</a></li>
</ul>
</details>
<br />

Updates `k8s.io/apimachinery` from 0.32.0 to 0.35.2
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/kubernetes/apimachinery/commit/72d71eac265e06713c6d83d7034aac609450243f"><code>72d71ea</code></a>
Merge remote-tracking branch 'origin/master' into release-1.35</li>
<li><a
href="https://github.com/kubernetes/apimachinery/commit/e2a2dbc80c5a11d135ad77ef2e27e6e7e248a94b"><code>e2a2dbc</code></a>
Bump golang.org/x/crypto to v0.45.0</li>
<li><a
href="https://github.com/kubernetes/apimachinery/commit/2e9c2280ae353a81c2f50c98c75cbb69658d58f0"><code>2e9c228</code></a>
Merge pull request <a
href="https://redirect.github.com/kubernetes/apimachinery/issues/135131">#135131</a>
from Dev1622/sig-storage/mock-expand-flake-fix</li>
<li><a
href="https://github.com/kubernetes/apimachinery/commit/f274aac1acf7d443b8f5fd1a13196383d9aa7bb6"><code>f274aac</code></a>
vendor: update vendor and license metadata after replacing BeTrue usage
in cs...</li>
<li><a
href="https://github.com/kubernetes/apimachinery/commit/94454433eee330652ed66f69efd230784a1e3648"><code>9445443</code></a>
Resolve lint restriction on BeTrue by introducing Succeed() with
contextual e...</li>
<li><a
href="https://github.com/kubernetes/apimachinery/commit/52154f7cf1a6d9a8759c5f2e85e65cd3cd9bbd7e"><code>52154f7</code></a>
Update vendored dependencies</li>
<li><a
href="https://github.com/kubernetes/apimachinery/commit/5a348c53eef0072c40ddf00a45ace423c2790f2a"><code>5a348c5</code></a>
KEP-5471: Extend tolerations operators (<a
href="https://redirect.github.com/kubernetes/apimachinery/issues/134665">#134665</a>)</li>
<li><a
href="https://github.com/kubernetes/apimachinery/commit/6f8949260573947b3239a9752d3361b23b4ec6a6"><code>6f89492</code></a>
Merge pull request <a
href="https://redirect.github.com/kubernetes/apimachinery/issues/133648">#133648</a>
from richabanker/merged-discovery</li>
<li><a
href="https://github.com/kubernetes/apimachinery/commit/c77dde2b5d65e58856286a199efe4e8e1114d276"><code>c77dde2</code></a>
util/sort: Add MergePreservingRelativeOrder for topological sorting</li>
<li><a
href="https://github.com/kubernetes/apimachinery/commit/729c13d7df38af243f1043cc9671a90decd67ab0"><code>729c13d</code></a>
Merge pull request <a
href="https://redirect.github.com/kubernetes/apimachinery/issues/134624">#134624</a>
from yt2985/podcertificates-beta</li>
<li>Additional commits viewable in <a
href="https://github.com/kubernetes/apimachinery/compare/v0.32.0...v0.35.2">compare
view</a></li>
</ul>
</details>
<br />

Updates `k8s.io/client-go` from 0.32.0 to 0.35.2
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/kubernetes/client-go/commit/a21b32978c420e4af7da3796bca3f37e2245856e"><code>a21b329</code></a>
Update dependencies to v0.35.2 tag</li>
<li><a
href="https://github.com/kubernetes/client-go/commit/2d83546256059105914d2e135f43a42aa13067ee"><code>2d83546</code></a>
Merge remote-tracking branch 'origin/master' into release-1.35</li>
<li><a
href="https://github.com/kubernetes/client-go/commit/56b4af2aeba845840cb3e2544d8ec16f3005aaf2"><code>56b4af2</code></a>
Merge pull request <a
href="https://redirect.github.com/kubernetes/client-go/issues/135591">#135591</a>
from p0lyn0mial/upstream-watchlist-reflector-log-f...</li>
<li><a
href="https://github.com/kubernetes/client-go/commit/891f94c690cb0101a8f4872f966b2783a24ec5e6"><code>891f94c</code></a>
Merge remote-tracking branch 'origin/master' into release-1.35</li>
<li><a
href="https://github.com/kubernetes/client-go/commit/65ffe044e56e8caf2db09c6bce6257ffefbe3f2c"><code>65ffe04</code></a>
Merge pull request <a
href="https://redirect.github.com/kubernetes/client-go/issues/135580">#135580</a>
from serathius/client-go-transformer</li>
<li><a
href="https://github.com/kubernetes/client-go/commit/2fe4ac239ceb8b03e1e9e48b9ffb76ca1357f42d"><code>2fe4ac2</code></a>
downgrade reflector watchlist fallback log to V(4)</li>
<li><a
href="https://github.com/kubernetes/client-go/commit/97256a64959de9fca5f9962b7239340f04c9221f"><code>97256a6</code></a>
Bump golang.org/x/crypto to v0.45.0</li>
<li><a
href="https://github.com/kubernetes/client-go/commit/46360b527ebcd4cb7e99ae1770ad9a613bb0f128"><code>46360b5</code></a>
Merge pull request <a
href="https://redirect.github.com/kubernetes/client-go/issues/135131">#135131</a>
from Dev1622/sig-storage/mock-expand-flake-fix</li>
<li><a
href="https://github.com/kubernetes/client-go/commit/171ef8cd00a575ad4ef083a9c4748463056de9bd"><code>171ef8c</code></a>
Use transformer in consistency checker</li>
<li><a
href="https://github.com/kubernetes/client-go/commit/3878a6464bbe3febe6a3da39f380d0e1e6ccdd06"><code>3878a64</code></a>
vendor: update vendor and license metadata after replacing BeTrue usage
in cs...</li>
<li>Additional commits viewable in <a
href="https://github.com/kubernetes/client-go/compare/v0.32.0...v0.35.2">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-11 11:32:58 +01:00
Philip LaineandGitHub 6694b91a2a Cleanup workflows and pin action versions (#118)
This change does some cleanup of the actions workflows to makes them
faster to run and easier to debug. It pins all of the actions workflows
to specific commit hashes. Dependabot will be enabled in a separate PR
to manage updates.

Signed-off-by: Philip Laine <philip.laine@gmail.com>
2026-03-11 11:24:17 +01:00
Philip LaineandGitHub c94d6197b8 Enable dependabot for both GH actions and Go (#119)
With the changes done in #118 we want to enable automatic workflow
version updates.
2026-03-10 21:32:51 +01:00
Philip LaineandGitHub ade9a53045 Fix flaky e2e tests (#120)
This change fixes flaky e2e tests with two changes. The first is that
the manager container is checked for ready condition rather than
running. The second is that the webhook server has been registered as
part of the health check to verify it is running before reporting ready
state.

Signed-off-by: Philip Laine <philip.laine@gmail.com>
2026-03-10 21:31:54 +01:00
Philip LaineandGitHub 60ce12c74e Update Netbird dependency and Golang version (#112)
This change updates the Netbird dependency to the latest version to
enabled #111 to be implemented with future API additions. This change
requires updating the Go version as the upstream dependency requires it.

An interesting aspect that was required was to pin the dex dependency to
v2. It seems like the Netbird go.mod is doing something unexpected with
their version.

Signed-off-by: Philip Laine <philip.laine@gmail.com>
2026-03-03 10:31:38 +01:00
David FischerandGitHub e228fad4fe fix: rendering of protocols and ports in NBPolicy (#96)
Minor adjustment to the NBPolicy template to make ports and protocols
render as lists instead of strings.

Previously a values file like

```yaml
policies:
  demo-policy:
    name: "Demo Policy"
    sourceGroups:
      - demogroup
      - demogroup2
    ports:
      - 443
      - 80
    protocols:
      - tcp
      - udp
```

would result in a rendered manifest like

```yaml
spec:
  bidirectional: false
  name: Demo Policy
  ports:
    - 80 443
  protocols:
    - tcp udp
  sourceGroups:
    - demogroup
    - demogroup2
```

(.spec.ports[0]: expected numeric (int or float), got string)
2026-03-03 08:58:50 +01:00
GideonandGitHub 38affd24c5 fix: add list and watch verbs for nbroutingpeers in ClusterRole (#107)
## Problem

The `netbird-operator-config` ClusterRole only grants `get` on
`nbroutingpeers`, but the `kubernetes-service-expose` job uses a
reflector/informer internally which requires both `list` and `watch` to
establish a watch stream. This results in the following error at
runtime:

```
E0218 16:28:42.344838       1 reflector.go:204] "Failed to watch" err="failed to list *unstructured.Unstructured: nbroutingpeers.netbird.io \"router\" is forbidden: User \"system:serviceaccount:netbird:netbird-operator-config\" cannot list resource \"nbroutingpeers\" in API group \"netbird.io\" in the namespace \"netbird\""
```

I noticed this error when I enabled the `kubernetesAPI.enabled` flag in
the netbird-oberator-config helm chart.

## Fix

Add `list` and `watch` verbs to the `nbroutingpeers` rule in the
ClusterRole, consistent with how other `netbird.io` resources are
already granted in the same role.

## Related

Similar issue was reported previously in #24 for a different service
account.
2026-03-03 08:32:41 +01:00
Tamer FahmyandGitHub f6765c1cf4 Add missing envsubst utility (#101) (#102)
Fixes: #101
2026-03-03 08:30:27 +01:00
JanandGitHub cbe0e3a2a1 Add optional privileged mode to NBRoutingPeerSpec (#92)
Introduced a new optional boolean field `Privileged` in the
`NBRoutingPeerSpec` to allow deployments to specify if containers should
run in privileged mode. Updated the CRD, Helm templates, and controller
logic to support this feature.

A new function `buildSecurityContext` was added to handle the creation
of the appropriate security context based on the `Privileged` setting.
Tests were updated to cover scenarios where privileged mode is enabled,
disabled, or unspecified. This change allows more granular control over
container security settings, potentially increasing compatibility with
certain workloads that require elevated privileges.

see https://github.com/netbirdio/kubernetes-operator/issues/90

**Note:**
I am not a Go developer and have no experience with this architecture. I
may have overlooked some things.
2026-03-03 08:29:52 +01:00
Philip LaineandGitHub 8ec7c8ded8 Update Golang CI Lint to the latest version (#113)
This change updates Golang CI Lint to the latest version and fixes new
linter errors that came along with the update.

These changes were split out of #112 and are required to update the Go
version.
2026-02-27 19:07:58 +01:00
Bethuel MmbagaandGitHub de74776007 Bump kubernetes-operator chart appVersion to 0.2.2 (#110) 2026-02-26 14:06:30 +03:00
VladandGitHub 5abb241ffa fix port mapping sort (#108) 2026-02-25 16:39:29 +01:00
Bethuel MmbagaandGitHub 19650e6657 Bump kubernetes-operator chart appVersion to 0.2.1 (#100) 2026-02-12 18:45:07 +03:00
Bethuel MmbagaandGitHub 5fb144559c Add support for running as a init sidecar container (#99)
Adds support for injecting the client as a [sidecar
container](https://kubernetes.io/docs/concepts/workloads/pods/sidecar-containers/)
using the `netbird.io/init-sidecar: "true"` pod annotation.
2026-02-11 15:20:52 +03:00
Bethuel MmbagaandGitHub d548240320 Bump netbird-operator-config chart appVersion to 0.2.0 (#98) 2026-02-04 15:08:13 +01:00
Tomás MotaandGitHub 54403eb901 fix potential panic when acessing empty list (#88)
while fixing #87, noticed a couple lines down that if the containers
spec has more than 1 container, the code probably intends to set
Spec.Containers to a list with a single container, but is instead
setting it to an empty list. The very next lines are trying to access
the 1st element of this empty list, which will result in a panic
2025-12-29 21:56:37 +01:00
Tomás MotaandGitHub 54c3139ee2 Remove pod label overwriting (#87)
Pod labels are being set in line 242, and the`podLabels` variable
already contains the extra `"app.kubernetes.io/name": "netbird-router"`
label, so lines 244-246 are effectively just overwriting any labels that
have been set in the crd.

This is blocking us from using this crd because we need a label
disabling istio injection for the peer to work correctly.
2025-12-29 21:53:18 +01:00
Maycon SantosandGitHub 731a3c9ea1 Update Dockerfile.kubectl (#89) 2025-12-17 13:24:51 +01:00
M. EssamandGitHub c86ef5c530 Fix helm chart releaser multiple charts separate version (#84) 2025-12-17 11:23:52 +01:00
M. EssamandGitHub f1b131be7d Refactor uninstallation process (#74)
Docs PR: https://github.com/netbirdio/docs/pull/457

Changes:
* Split kubernetes-operator Chart to operator only chart
(kubernetes-operator) and configuration chart (netbird-operator-config)
* Remove delete validation webhooks for non-needed resources
* Allow abandoning Groups when still linked to a resource for over a
minute after deletion
* Fix duplciate Network Resource retrying heavily
* Fix SetupKey creation duplication
* Skip deleting routing peer since deleting network automatically
deletes it anyway
2025-11-25 20:36:17 +02:00
Christian De LeonandGitHub 6c855c5d4e Fix: extra-dns-labels not being applied to pods (#82)
# Fix: NetBird extra-dns-labels not being applied to pods

## Problem

The `netbird.io/extra-dns-labels` annotation was not working when
applied to pods. Despite the webhook detecting the annotation and adding
it to the NetBird container configuration, the extra DNS labels were not
appearing in the NetBird UI or being applied to registered peers.

## Root Cause

The pod webhook had two issues:

1. **Invalid setup key argument**: The webhook was passing
`--setup-key-file /etc/nbkey` to the NetBird client, but this file path
was never created. The setup key was already being passed via the
`NB_SETUP_KEY` environment variable, making the file-based approach
unnecessary and causing confusion in the client startup.

2. **NetBird CLI flag bug**: The webhook was using the
`--extra-dns-labels` command line flag, but NetBird has a known issue
([netbirdio/netbird#4282](https://github.com/netbirdio/netbird/issues/4282))
where this flag is not properly processed. The workaround is to use the
`NB_EXTRA_DNS_LABELS` environment variable instead.

## Solution

- Removed the `--setup-key-file` argument entirely since the setup key
is provided via environment variable
- Removed all command line arguments from the NetBird container
- Added `NB_EXTRA_DNS_LABELS` environment variable when the
`netbird.io/extra-dns-labels` annotation is present
- NetBird client now uses only environment variables for configuration,
which is more reliable and matches the pattern used by the NBRoutingPeer
controller

## Changes

**Before:**
```go
args := []string{
    "--setup-key-file", "/etc/nbkey",
    "-m", managementURL,
}
// ... add extra-dns-labels to args
```

**After:**
```go
envVars := []corev1.EnvVar{
    {Name: "NB_SETUP_KEY", ValueFrom: ...},
    {Name: "NB_MANAGEMENT_URL", Value: managementURL},
}
// ... conditionally add NB_EXTRA_DNS_LABELS to envVars
```

## Testing

1. Create a deployment with the `netbird.io/setup-key` and
`netbird.io/extra-dns-labels` annotations:
```yaml
annotations:
  netbird.io/setup-key: my-setup-key
  netbird.io/extra-dns-labels: "my-label,another-label"
```

2. Verify the environment variable is set:
```bash
kubectl get pod <pod-name> -o jsonpath='{.spec.containers[?(@.name=="netbird")].env[*]}' | jq .
```

3. Check the NetBird UI to confirm the extra DNS labels appear on the
registered peer

4. Verify the NetBird container logs show successful registration
without errors

## References

- NetBird issue: https://github.com/netbirdio/netbird/issues/4282
- Documentation: [Extra DNS
Labels](https://docs.netbird.io/how-to/routing-traffic-to-private-networks#extra-dns-labels)

---

This fix ensures that the `netbird.io/extra-dns-labels` annotation works
as documented and provides a more robust configuration method by using
environment variables consistently across all NetBird deployments in the
operator.
2025-11-24 19:00:58 +02:00
M. EssamandGitHub d8eb7cb513 Bump Helm appVersion to 0.1.5 (#81) 2025-11-23 12:05:26 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
408e20f999 Bump golang.org/x/net from 0.33.0 to 0.38.0 (#75)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.33.0 to
0.38.0.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/golang/net/commit/e1fcd82abba34df74614020343be8eb1fe85f0d9"><code>e1fcd82</code></a>
html: properly handle trailing solidus in unquoted attribute value in
foreign...</li>
<li><a
href="https://github.com/golang/net/commit/ebed060e8f30f20235f74808c22125fd86b15edd"><code>ebed060</code></a>
internal/http3: fix build of tests with GOEXPERIMENT=nosynctest</li>
<li><a
href="https://github.com/golang/net/commit/1f1fa29e0a46fffe18c43a9da8daa5a0b180dfa9"><code>1f1fa29</code></a>
publicsuffix: regenerate table</li>
<li><a
href="https://github.com/golang/net/commit/12150816f701c912a32a376754ab28dd3878833a"><code>1215081</code></a>
http2: improve error when server sends HTTP/1</li>
<li><a
href="https://github.com/golang/net/commit/312450e473eae9f9e6173ad895c80bc5ea2f79ad"><code>312450e</code></a>
html: ensure &lt;search&gt; tag closes &lt;p&gt; and update tests</li>
<li><a
href="https://github.com/golang/net/commit/09731f9bf919b00b344c763894cd1920b3d96d90"><code>09731f9</code></a>
http2: improve handling of lost PING in Server</li>
<li><a
href="https://github.com/golang/net/commit/55989e24b972a90ab99308fdc7ea1fb58a96fef1"><code>55989e2</code></a>
http2/h2c: use ResponseController for hijacking connections</li>
<li><a
href="https://github.com/golang/net/commit/2914f46773171f4fa13e276df1135bafef677801"><code>2914f46</code></a>
websocket: re-recommend gorilla/websocket</li>
<li><a
href="https://github.com/golang/net/commit/99b3ae0643f9a2f9d820fcbba5f9e4c83b23bd48"><code>99b3ae0</code></a>
go.mod: update golang.org/x dependencies</li>
<li><a
href="https://github.com/golang/net/commit/85d1d54551b68719346cb9fec24b911da4e452a1"><code>85d1d54</code></a>
go.mod: update golang.org/x dependencies</li>
<li>Additional commits viewable in <a
href="https://github.com/golang/net/compare/v0.33.0...v0.38.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=golang.org/x/net&package-manager=go_modules&previous-version=0.33.0&new-version=0.38.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/netbirdio/kubernetes-operator/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-31 15:03:54 +01:00
M. EssamandGitHub 4b98bf9ff9 Add feature to add default labels to all resources (#62)
Fixes #41 
Thanks to @mhartmann-jaconi for the Helm changes in #42
2025-10-07 13:59:50 +03:00
dependabot[bot]andGitHub 1b36287705 Bump golang.org/x/oauth2 from 0.23.0 to 0.27.0 (#64)
Bumps [golang.org/x/oauth2](https://github.com/golang/oauth2) from
0.23.0 to 0.27.0
2025-08-19 16:21:15 +03:00