2092 Commits

Author SHA1 Message Date
dependabot[bot]
899a3e5fe8 build(deps): bump actions/setup-go from 6 to 7
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 6 to 7.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](https://github.com/actions/setup-go/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-21 14:54:26 +00:00
Daniel Finneran
3294dccbc2 Merge pull request #1630 from kube-vip/dependabot/docker/golang-1.26.5-alpine3.23
build(deps): bump golang from 1.26.4-alpine3.23 to 1.26.5-alpine3.23
2026-07-21 17:32:34 +03:00
Daniel Finneran
7a92d97866 Merge pull request #1636 from mkowalski/upstream-route-reassert-2
routing table mode: re-assert the VIP route on every healthy check cycle
2026-07-21 16:44:08 +03:00
dependabot[bot]
5fd466abc7 build(deps): bump golang from 1.26.4-alpine3.23 to 1.26.5-alpine3.23
Bumps golang from 1.26.4-alpine3.23 to 1.26.5-alpine3.23.

---
updated-dependencies:
- dependency-name: golang
  dependency-version: 1.26.5-alpine3.23
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-21 13:43:41 +00:00
Daniel Finneran
035164300c Merge pull request #1631 from kube-vip/dependabot/go_modules/golang.org/x/sys-0.47.0
Bump golang.org/x/sys from 0.46.0 to 0.47.0
2026-07-21 16:42:31 +03:00
Daniel Finneran
c13730d1b5 Merge pull request #1617 from kube-vip/dependabot/github_actions/docker/metadata-action-6.2.0
Bump docker/metadata-action from 6.1.0 to 6.2.0
2026-07-21 16:41:45 +03:00
Daniel Finneran
4235833c70 Merge pull request #1626 from p-strusiewiczsurmacki-mobica/fix/nftables-input-chain
Fixed tables creation when nftables is used, IP deletion on leadership loss and race condition in backend
2026-07-21 16:41:13 +03:00
Daniel Finneran
453e2d7a53 Merge pull request #1635 from GabboPenna/feature/nftables-egress-table-name
fix(egress): isolate nftables tables by instance
2026-07-21 16:39:46 +03:00
Gabriel
b440187e2d Adds an opt-in flag/env var ( --allowInterfaceNotUp  /  vip_allow_interface_not_up ) that lets kube-vip continue operating even when its bind interface is not up. This supports assigning the VIP even when the interface is down. Disabled by default; no change to existing behavior.
Signed-off-by: Gabriel <gabriel.stedman@proton.me>
2026-07-21 13:12:22 +01:00
Gabriele Pennacchia
60c786b537 fix(egress): isolate nftables tables by instance
Signed-off-by: Gabriele Pennacchia <gabriele@pennacchia.it>
2026-07-20 14:50:51 +02:00
Patryk Strusiewicz-Surmacki
eace4b2cc9 Fixed tables creation when nftables is used, IP deletion on leadership loss and race condition in backend.
Signed-off-by: Patryk Strusiewicz-Surmacki <patryk.pawel.strusiewicz-surmacki@external.telekom.de>
2026-07-16 13:44:28 +02:00
Mat Kowalski
719950614b routing table mode: re-assert the VIP route on every healthy check cycle
In order to workaround https://github.com/FRRouting/frr/issues/22654
where zebra misses updates if multiple are bundled in the same netlink
event, we are introducing a new mechanism.

On every cycle we are re-asserting the route with an idempotent
RouteReplace. Because for a no-op replace kernel emits no notification,
we are alternating the realm attribute on every cycle. Thanks to this,
every re-asstertion is a real change which emits the notification.

Wire impact of this change is none. The prefix, nexthop, metric never
change so BGP daemons do not send UPDATE to peers.

Another option was delete+add but that one would have a real wire impact
if performed too slow.

Signed-off-by: Mat Kowalski <mko@redhat.com>
2026-07-15 14:56:25 +02:00
dependabot[bot]
2ec9c9283e Bump golang.org/x/sys from 0.46.0 to 0.47.0
Bumps [golang.org/x/sys](https://github.com/golang/sys) from 0.46.0 to 0.47.0.
- [Commits](https://github.com/golang/sys/compare/v0.46.0...v0.47.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sys
  dependency-version: 0.47.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-14 12:40:00 +00:00
dependabot[bot]
b4e8760612 Bump docker/metadata-action from 6.1.0 to 6.2.0
Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 6.1.0 to 6.2.0.
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Commits](https://github.com/docker/metadata-action/compare/v6.1.0...v6.2.0)

---
updated-dependencies:
- dependency-name: docker/metadata-action
  dependency-version: 6.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-14 12:37:38 +00:00
Daniel Finneran
18fd79aa5d Merge pull request #1628 from p-strusiewiczsurmacki-mobica/fix/arp-test-endpointslices
Use endpointslices for all dualstack tests in ARP mode
2026-07-14 13:33:12 +01:00
Daniel Finneran
4b66e20ad0 Merge pull request #1627 from mkowalski/honor-configured-kubeconfig
Honor the explicitly configured kubeconfig path in manager and backend health checks
2026-07-14 13:32:53 +01:00
Daniel Finneran
ec1d1af7bc Merge pull request #1624 from fossabot/add-license-scan-badge
Add license scan report and status
2026-07-14 13:20:31 +01:00
Daniel Finneran
4c36ffdfbc Merge pull request #1600 from thebhdn/feat/vip-lose-leadership
feat: lose leadership when interface is down
2026-07-14 13:20:06 +01:00
Daniel Finneran
250d668d61 Merge pull request #1596 from ichaytay/support-l2-ib
Added support in ipoib interfaces in ARP mode. Fixes #694
2026-07-14 13:04:47 +01:00
dependabot[bot]
a4be8cd56a Bump github.com/osrg/gobgp/v4 from 4.6.0 to 4.7.0 (#1621)
Bumps [github.com/osrg/gobgp/v4](https://github.com/osrg/gobgp) from 4.6.0 to 4.7.0.
- [Release notes](https://github.com/osrg/gobgp/releases)
- [Commits](https://github.com/osrg/gobgp/compare/v4.6.0...v4.7.0)

---
updated-dependencies:
- dependency-name: github.com/osrg/gobgp/v4
  dependency-version: 4.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-10 09:54:20 +02:00
dependabot[bot]
f5463fb956 Bump go.etcd.io/etcd/client/pkg/v3 from 3.6.12 to 3.6.13 (#1622)
Bumps [go.etcd.io/etcd/client/pkg/v3](https://github.com/etcd-io/etcd) from 3.6.12 to 3.6.13.
- [Release notes](https://github.com/etcd-io/etcd/releases)
- [Commits](https://github.com/etcd-io/etcd/compare/v3.6.12...v3.6.13)

---
updated-dependencies:
- dependency-name: go.etcd.io/etcd/client/pkg/v3
  dependency-version: 3.6.13
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-10 09:54:03 +02:00
Patryk Strusiewicz-Surmacki
42a216a6e5 Use endpointslices for all dualstack tests in ARP mode
Signed-off-by: Patryk Strusiewicz-Surmacki <patryk.pawel.strusiewicz-surmacki@external.telekom.de>
2026-07-09 18:07:48 +02:00
Mat Kowalski
50babb8c2c backend: honor explicitly configured kubeconfig in health checks
Entry.Check hardcoded admin.conf/in-cluster config, so the routing
table mode backend gate could never pass on static pod deployments.
The manager's configured kubeconfig is now handed to the backend.

Signed-off-by: Mat Kowalski <mko@redhat.com>
2026-07-09 16:17:23 +02:00
Mat Kowalski
c84fb65538 manager: honor explicitly configured kubeconfig path
The manager only probed /etc/kubernetes/admin.conf and ~/.kube/config
before falling back to in-cluster config, ignoring k8sConfigPath /
k8s_config_file entirely. OpenShift static pods authenticate with
/etc/kubernetes/kubeconfig, so an explicitly configured path now takes
precedence, with kubernetes_addr able to point at the local API server.

Signed-off-by: Mat Kowalski <mko@redhat.com>
2026-07-09 16:17:22 +02:00
Bohdan Leshchenko
8f8bd0291a feat: restart on error
Signed-off-by: Bohdan Leshchenko <bohdan.leshchenko1@gmail.com>
2026-07-08 20:49:00 +02:00
Bohdan Leshchenko
8ae99df6e1 chore: remove unnecessary ctx
Signed-off-by: Bohdan Leshchenko <bohdan.leshchenko1@gmail.com>
2026-07-08 20:49:00 +02:00
Bohdan Leshchenko
f8fdcf8c46 feat: lose leadership when interface is down
Signed-off-by: Bohdan Leshchenko <bohdan.leshchenko1@gmail.com>
2026-07-08 20:49:00 +02:00
fossabot
ef20a3fa97 Add license scan report and status
Signed off by: fossabot <badges@fossa.com>
2026-07-07 05:34:42 -04:00
Daniel Finneran
3a97e9d91b Merge pull request #1615 from mattcarp12/feat/cmd-todos
Feat: Add help text to kubeadm and manifest subcommands
2026-07-07 09:10:49 +01:00
Daniel Finneran
d72cabeb11 Merge pull request #1592 from p-strusiewiczsurmacki-mobica/feat/nftables-vip-address
Added nftables for vip/address.go
2026-07-07 09:08:40 +01:00
Daniel Finneran
549677c5c6 Merge pull request #1562 from p-strusiewiczsurmacki-mobica/feat/debouncer
Added debouncer for watch events
2026-07-07 09:06:03 +01:00
Daniel Finneran
be0a7ddbec This enables BFD in kube-vip (#1595)
* This enables BFD in kube-vip

Signed-off-by: Dan Finneran <dan@thebsdbox.co.uk>

* Fixes from co-pilot

Signed-off-by: Dan Finneran <dan@thebsdbox.co.uk>

* Some small logging additionals and a skaffold file

Signed-off-by: Dan Finneran <dan@thebsdbox.co.uk>

* Moves logging level back to the global setting

Signed-off-by: Dan Finneran <dan@thebsdbox.co.uk>

---------

Signed-off-by: Dan Finneran <dan@thebsdbox.co.uk>
2026-07-02 18:35:44 +02:00
dependabot[bot]
5f7fded6de Bump github.com/onsi/gomega from 1.41.0 to 1.42.1 (#1611)
Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.41.0 to 1.42.1.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.41.0...v1.42.1)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-version: 1.42.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-01 18:17:22 +02:00
Patryk Strusiewicz-Surmacki
69f9f2db32 Fixed BGP metrics (#1616)
Signed-off-by: Patryk Strusiewicz-Surmacki <patryk.pawel.strusiewicz-surmacki@external.telekom.de>
Co-authored-by: Patryk Strusiewicz-Surmacki <patryk.pawel.strusiewicz-surmacki@external.telekom.de>
2026-07-01 18:15:47 +02:00
Patryk Strusiewicz-Surmacki
dfeffa75d9 Use non-iptables image for services tests in the CI
Signed-off-by: Patryk Strusiewicz-Surmacki <patryk.pawel.strusiewicz-surmacki@external.telekom.de>
2026-07-01 17:14:01 +02:00
Patryk Strusiewicz-Surmacki
5a5f6f780e Added nftables for vip/address.go
Signed-off-by: Patryk Strusiewicz-Surmacki <patryk.pawel.strusiewicz-surmacki@external.telekom.de>
2026-07-01 16:57:29 +02:00
Matthew Carpenter
2699ce3833 add help text to kubeadm and manifest subcommands
Signed-off-by: Matthew Carpenter <mattcarp88@gmail.com>
2026-06-30 12:50:56 +00:00
dependabot[bot]
f2c350a4ec Bump github.com/gookit/slog from 0.6.0 to 0.7.1 (#1613)
Bumps [github.com/gookit/slog](https://github.com/gookit/slog) from 0.6.0 to 0.7.1.
- [Release notes](https://github.com/gookit/slog/releases)
- [Commits](https://github.com/gookit/slog/compare/v0.6.0...v0.7.1)

---
updated-dependencies:
- dependency-name: github.com/gookit/slog
  dependency-version: 0.7.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-30 13:21:18 +02:00
dependabot[bot]
8a277c0e76 Bump github.com/google/go-containerregistry from 0.21.6 to 0.21.7 (#1612)
Bumps [github.com/google/go-containerregistry](https://github.com/google/go-containerregistry) from 0.21.6 to 0.21.7.
- [Release notes](https://github.com/google/go-containerregistry/releases)
- [Commits](https://github.com/google/go-containerregistry/compare/v0.21.6...v0.21.7)

---
updated-dependencies:
- dependency-name: github.com/google/go-containerregistry
  dependency-version: 0.21.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-30 13:20:24 +02:00
dependabot[bot]
3a30addb22 Bump github.com/onsi/ginkgo/v2 from 2.29.0 to 2.32.0 (#1610)
Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.29.0 to 2.32.0.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/ginkgo/compare/v2.29.0...v2.32.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-version: 2.32.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-30 13:20:04 +02:00
dependabot[bot]
980011ce48 Bump k8s.io/client-go from 0.36.1 to 0.36.2 (#1609)
Bumps [k8s.io/client-go](https://github.com/kubernetes/client-go) from 0.36.1 to 0.36.2.
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kubernetes/client-go/compare/v0.36.1...v0.36.2)

---
updated-dependencies:
- dependency-name: k8s.io/client-go
  dependency-version: 0.36.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-30 13:19:44 +02:00
Marcel Fest
4708b07343 Bump version to v1.2.1 v1.2.1 2026-06-25 21:13:27 +02:00
dependabot[bot]
52c964f085 Bump go.etcd.io/etcd/client/v3 from 3.6.11 to 3.6.12 (#1588)
Bumps [go.etcd.io/etcd/client/v3](https://github.com/etcd-io/etcd) from 3.6.11 to 3.6.12.
- [Release notes](https://github.com/etcd-io/etcd/releases)
- [Commits](https://github.com/etcd-io/etcd/compare/v3.6.11...v3.6.12)

---
updated-dependencies:
- dependency-name: go.etcd.io/etcd/client/v3
  dependency-version: 3.6.12
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-25 21:07:30 +02:00
Mateusz Kowalski
fcd3eec73e kube-vip: wire HTTP health check into routing table mode (#1604)
Signed-off-by: Mat Kowalski <mko@redhat.com>
2026-06-25 21:06:56 +02:00
Patryk Strusiewicz-Surmacki
12928dc0e3 Upgraded x/crypto and x/net libraries (#1608)
Signed-off-by: Patryk Strusiewicz-Surmacki <patryk.pawel.strusiewicz-surmacki@external.telekom.de>
Co-authored-by: Patryk Strusiewicz-Surmacki <patryk.pawel.strusiewicz-surmacki@external.telekom.de>
2026-06-23 17:37:42 +02:00
dependabot[bot]
13c6b5ebb7 Bump go.etcd.io/etcd/client/pkg/v3 from 3.6.11 to 3.6.12 (#1589)
Bumps [go.etcd.io/etcd/client/pkg/v3](https://github.com/etcd-io/etcd) from 3.6.11 to 3.6.12.
- [Release notes](https://github.com/etcd-io/etcd/releases)
- [Commits](https://github.com/etcd-io/etcd/compare/v3.6.11...v3.6.12)

---
updated-dependencies:
- dependency-name: go.etcd.io/etcd/client/pkg/v3
  dependency-version: 3.6.12
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-22 15:44:17 +02:00
dependabot[bot]
fd924e47de Bump sigs.k8s.io/kind from 0.31.0 to 0.32.0 (#1586)
Bumps [sigs.k8s.io/kind](https://github.com/kubernetes-sigs/kind) from 0.31.0 to 0.32.0.
- [Release notes](https://github.com/kubernetes-sigs/kind/releases)
- [Changelog](https://github.com/kubernetes-sigs/kind/blob/main/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/kind/compare/v0.31.0...v0.32.0)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/kind
  dependency-version: 0.32.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-22 11:56:38 +02:00
dependabot[bot]
21f44e1cf6 Bump go.etcd.io/etcd/api/v3 from 3.6.11 to 3.6.12 (#1587)
Bumps [go.etcd.io/etcd/api/v3](https://github.com/etcd-io/etcd) from 3.6.11 to 3.6.12.
- [Release notes](https://github.com/etcd-io/etcd/releases)
- [Commits](https://github.com/etcd-io/etcd/compare/v3.6.11...v3.6.12)

---
updated-dependencies:
- dependency-name: go.etcd.io/etcd/api/v3
  dependency-version: 3.6.12
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-22 11:56:22 +02:00
Patryk Strusiewicz-Surmacki
f8402e86bf Fixed deadlock on AddIP() call in StartVipService (#1594)
Signed-off-by: Patryk Strusiewicz-Surmacki <patryk.pawel.strusiewicz-surmacki@external.telekom.de>
Co-authored-by: Patryk Strusiewicz-Surmacki <patryk.pawel.strusiewicz-surmacki@external.telekom.de>
2026-06-22 11:55:57 +02:00
Patryk Strusiewicz-Surmacki
3de813f7b0 Fix minor error handling issue in pkg/bgp/peer.go (#1601)
Signed-off-by: Patryk Strusiewicz-Surmacki <patryk.pawel.strusiewicz-surmacki@external.telekom.de>
Co-authored-by: Patryk Strusiewicz-Surmacki <patryk.pawel.strusiewicz-surmacki@external.telekom.de>
2026-06-22 10:30:09 +02:00