Commit Graph

64 Commits

Author SHA1 Message Date
dependabot[bot]
1a37f45fc2
Bump the other-go-modules group with 8 updates
Bumps the other-go-modules group with 8 updates:

| Package | From | To |
| --- | --- | --- |
| [github.com/containernetworking/cni](https://github.com/containernetworking/cni) | `1.2.3` | `1.3.0` |
| [github.com/containernetworking/plugins](https://github.com/containernetworking/plugins) | `1.6.1` | `1.6.2` |
| [github.com/k8snetworkplumbingwg/network-attachment-definition-client](https://github.com/k8snetworkplumbingwg/network-attachment-definition-client) | `1.7.0` | `1.7.6` |
| [github.com/onsi/gomega](https://github.com/onsi/gomega) | `1.36.2` | `1.37.0` |
| [gomodules.xyz/jsonpatch/v2](https://github.com/gomodules/jsonpatch) | `2.4.0` | `2.5.0` |
| [github.com/go-co-op/gocron/v2](https://github.com/go-co-op/gocron) | `2.12.4` | `2.16.1` |
| [github.com/fsnotify/fsnotify](https://github.com/fsnotify/fsnotify) | `1.8.0` | `1.9.0` |
| [golang.org/x/time](https://github.com/golang/time) | `0.8.0` | `0.11.0` |


Updates `github.com/containernetworking/cni` from 1.2.3 to 1.3.0
- [Release notes](https://github.com/containernetworking/cni/releases)
- [Commits](https://github.com/containernetworking/cni/compare/v1.2.3...v1.3.0)

Updates `github.com/containernetworking/plugins` from 1.6.1 to 1.6.2
- [Release notes](https://github.com/containernetworking/plugins/releases)
- [Commits](https://github.com/containernetworking/plugins/compare/v1.6.1...v1.6.2)

Updates `github.com/k8snetworkplumbingwg/network-attachment-definition-client` from 1.7.0 to 1.7.6
- [Release notes](https://github.com/k8snetworkplumbingwg/network-attachment-definition-client/releases)
- [Commits](https://github.com/k8snetworkplumbingwg/network-attachment-definition-client/compare/v1.7.0...v1.7.6)

Updates `github.com/onsi/gomega` from 1.36.2 to 1.37.0
- [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.36.2...v1.37.0)

Updates `gomodules.xyz/jsonpatch/v2` from 2.4.0 to 2.5.0
- [Release notes](https://github.com/gomodules/jsonpatch/releases)
- [Changelog](https://github.com/gomodules/jsonpatch/blob/release-2.0/CHANGELOG.md)
- [Commits](https://github.com/gomodules/jsonpatch/compare/v2.4.0...v2.5.0)

Updates `github.com/go-co-op/gocron/v2` from 2.12.4 to 2.16.1
- [Release notes](https://github.com/go-co-op/gocron/releases)
- [Commits](https://github.com/go-co-op/gocron/compare/v2.12.4...v2.16.1)

Updates `github.com/fsnotify/fsnotify` from 1.8.0 to 1.9.0
- [Release notes](https://github.com/fsnotify/fsnotify/releases)
- [Changelog](https://github.com/fsnotify/fsnotify/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fsnotify/fsnotify/compare/v1.8.0...v1.9.0)

Updates `golang.org/x/time` from 0.8.0 to 0.11.0
- [Commits](https://github.com/golang/time/compare/v0.8.0...v0.11.0)

---
updated-dependencies:
- dependency-name: github.com/containernetworking/cni
  dependency-version: 1.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: other-go-modules
- dependency-name: github.com/containernetworking/plugins
  dependency-version: 1.6.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: other-go-modules
- dependency-name: github.com/k8snetworkplumbingwg/network-attachment-definition-client
  dependency-version: 1.7.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: other-go-modules
- dependency-name: github.com/onsi/gomega
  dependency-version: 1.37.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: other-go-modules
- dependency-name: gomodules.xyz/jsonpatch/v2
  dependency-version: 2.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: other-go-modules
- dependency-name: github.com/go-co-op/gocron/v2
  dependency-version: 2.16.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: other-go-modules
- dependency-name: github.com/fsnotify/fsnotify
  dependency-version: 1.9.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: other-go-modules
- dependency-name: golang.org/x/time
  dependency-version: 0.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: other-go-modules
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-25 03:45:28 +00:00
dependabot[bot]
59414a62c5
Bump golang.org/x/net from 0.36.0 to 0.38.0
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.36.0 to 0.38.0.
- [Commits](https://github.com/golang/net/compare/v0.36.0...v0.38.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-version: 0.38.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-24 16:50:37 +00:00
dependabot[bot]
e5903b3004
Bump golang.org/x/net from 0.33.0 to 0.36.0
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.33.0 to 0.36.0.
- [Commits](https://github.com/golang/net/compare/v0.33.0...v0.36.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-13 01:35:56 +00:00
dependabot[bot]
9fdeb124d9
Bump github.com/onsi/gomega from 1.36.0 to 1.36.2
Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.36.0 to 1.36.2.
- [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.36.0...v1.36.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-10 20:10:41 +00:00
Thomas Ferrandiz
844370708c Bump x/net to v0.33.0 to fix CVE 2025-01-10 16:41:42 +00:00
Thomas Ferrandiz
5bc9a84a84 go mod vendor 2024-12-16 15:36:30 +00:00
Thomas Ferrandiz
5134a8e97f Bump k8s dependencies to v0.31.3 2024-12-13 14:32:11 +00:00
dependabot[bot]
9bfa52ff11 Bump github.com/containernetworking/plugins from 1.5.0 to 1.6.1
Bumps [github.com/containernetworking/plugins](https://github.com/containernetworking/plugins) from 1.5.0 to 1.6.1.
- [Release notes](https://github.com/containernetworking/plugins/releases)
- [Commits](https://github.com/containernetworking/plugins/compare/v1.5.0...v1.6.1)

---
updated-dependencies:
- dependency-name: github.com/containernetworking/plugins
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-11 12:25:31 +01:00
dependabot[bot]
e257b8f5e7
Bump k8s.io/klog/v2 from 2.110.1 to 2.130.1
Bumps [k8s.io/klog/v2](https://github.com/kubernetes/klog) from 2.110.1 to 2.130.1.
- [Release notes](https://github.com/kubernetes/klog/releases)
- [Changelog](https://github.com/kubernetes/klog/blob/main/RELEASE.md)
- [Commits](https://github.com/kubernetes/klog/compare/v2.110.1...v2.130.1)

---
updated-dependencies:
- dependency-name: k8s.io/klog/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-11 03:33:07 +00:00
dependabot[bot]
790dd76c6a
Bump github.com/go-co-op/gocron/v2 from 2.5.0 to 2.12.4
Bumps [github.com/go-co-op/gocron/v2](https://github.com/go-co-op/gocron) from 2.5.0 to 2.12.4.
- [Release notes](https://github.com/go-co-op/gocron/releases)
- [Commits](https://github.com/go-co-op/gocron/compare/v2.5.0...v2.12.4)

---
updated-dependencies:
- dependency-name: github.com/go-co-op/gocron/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-10 09:16:38 +00:00
dependabot[bot]
9e98a89f92
Bump github.com/fsnotify/fsnotify from 1.7.0 to 1.8.0
Bumps [github.com/fsnotify/fsnotify](https://github.com/fsnotify/fsnotify) from 1.7.0 to 1.8.0.
- [Release notes](https://github.com/fsnotify/fsnotify/releases)
- [Changelog](https://github.com/fsnotify/fsnotify/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fsnotify/fsnotify/compare/v1.7.0...v1.8.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-09 13:38:33 +00:00
dependabot[bot]
842435da8d
Bump github.com/onsi/gomega from 1.33.1 to 1.36.0
Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.33.1 to 1.36.0.
- [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.33.1...v1.36.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-09 09:36:23 +00:00
dependabot[bot]
6fd60cd939
Bump golang.org/x/time from 0.3.0 to 0.8.0
Bumps [golang.org/x/time](https://github.com/golang/time) from 0.3.0 to 0.8.0.
- [Commits](https://github.com/golang/time/compare/v0.3.0...v0.8.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-09 03:30:35 +00:00
Thomas Ferrandiz
deecbb07f3 Revert "Bump several dependencies to keep up-to-date"
This reverts commit b5459ab5ed.
2024-12-06 13:51:25 +00:00
Thomas Ferrandiz
b5459ab5ed Bump several dependencies to keep up-to-date 2024-12-06 13:42:37 +00:00
dependabot[bot]
fa95f66408 ---
updated-dependencies:
- dependency-name: github.com/containernetworking/plugins
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-24 11:29:13 +02:00
dependabot[bot]
44e552728f build(deps): bump github.com/onsi/gomega from 1.32.0 to 1.33.1
Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.32.0 to 1.33.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.32.0...v1.33.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-14 11:17:08 +02:00
dependabot[bot]
494db85dfc build(deps): bump github.com/go-co-op/gocron/v2 from 2.2.9 to 2.5.0
Bumps [github.com/go-co-op/gocron/v2](https://github.com/go-co-op/gocron) from 2.2.9 to 2.5.0.
- [Release notes](https://github.com/go-co-op/gocron/releases)
- [Commits](https://github.com/go-co-op/gocron/compare/v2.2.9...v2.5.0)

---
updated-dependencies:
- dependency-name: github.com/go-co-op/gocron/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-13 07:44:26 +02:00
dependabot[bot]
17bbcd64cc build(deps): bump github.com/containernetworking/cni from 1.1.2 to 1.2.0
Bumps [github.com/containernetworking/cni](https://github.com/containernetworking/cni) from 1.1.2 to 1.2.0.
- [Release notes](https://github.com/containernetworking/cni/releases)
- [Commits](https://github.com/containernetworking/cni/compare/v1.1.2...v1.2.0)

---
updated-dependencies:
- dependency-name: github.com/containernetworking/cni
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-10 11:05:19 +02:00
dependabot[bot]
e134bb4575 build(deps): bump github.com/containernetworking/plugins
Bumps [github.com/containernetworking/plugins](https://github.com/containernetworking/plugins) from 1.4.0 to 1.4.1.
- [Release notes](https://github.com/containernetworking/plugins/releases)
- [Commits](https://github.com/containernetworking/plugins/compare/v1.4.0...v1.4.1)

---
updated-dependencies:
- dependency-name: github.com/containernetworking/plugins
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-03 10:00:22 +02:00
Manuel Buil
8825da9f90 Update net-attach version to v1.7
Signed-off-by: Manuel Buil <mbuil@suse.com>
2024-04-19 11:16:05 +02:00
dependabot[bot]
f4d47d3e25 build(deps): bump k8s.io/api from 0.29.2 to 0.29.3
Bumps [k8s.io/api](https://github.com/kubernetes/api) from 0.29.2 to 0.29.3.
- [Commits](https://github.com/kubernetes/api/compare/v0.29.2...v0.29.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-15 14:41:02 +02:00
dependabot[bot]
9c2fc02491 build(deps): bump github.com/go-co-op/gocron/v2 from 2.2.5 to 2.2.9
Bumps [github.com/go-co-op/gocron/v2](https://github.com/go-co-op/gocron) from 2.2.5 to 2.2.9.
- [Release notes](https://github.com/go-co-op/gocron/releases)
- [Commits](https://github.com/go-co-op/gocron/compare/v2.2.5...v2.2.9)

---
updated-dependencies:
- dependency-name: github.com/go-co-op/gocron/v2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-15 13:52:43 +02:00
dependabot[bot]
49e4420564 build(deps): bump github.com/onsi/gomega from 1.31.1 to 1.32.0
Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.31.1 to 1.32.0.
- [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.31.1...v1.32.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-15 12:59:12 +02:00
dependabot[bot]
05d4405bf9 build(deps): bump google.golang.org/protobuf from 1.30.0 to 1.33.0
Bumps google.golang.org/protobuf from 1.30.0 to 1.33.0.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-12 15:28:19 +02:00
Manuel Buil
cd53175861 Update k8s deps
Signed-off-by: Manuel Buil <mbuil@suse.com>
2024-03-18 12:59:45 +01:00
Doug Smith
209cfb0712
Merge pull request #430 from manuelbuil/sweepingGoMod
Bump github.com/imdario/mergo from 0.3.12 to 0.3.16
2024-03-14 10:36:32 -04:00
dependabot[bot]
4c9f82ee8c build(deps): bump github.com/fsnotify/fsnotify from 1.5.4 to 1.7.0
Bumps [github.com/fsnotify/fsnotify](https://github.com/fsnotify/fsnotify) from 1.5.4 to 1.7.0.
- [Release notes](https://github.com/fsnotify/fsnotify/releases)
- [Changelog](https://github.com/fsnotify/fsnotify/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fsnotify/fsnotify/compare/v1.5.4...v1.7.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-11 07:35:03 +01:00
dependabot[bot]
b03433ae31 build(deps): bump github.com/go-co-op/gocron/v2 from 2.1.0 to 2.2.5
Bumps [github.com/go-co-op/gocron/v2](https://github.com/go-co-op/gocron) from 2.1.0 to 2.2.5.
- [Release notes](https://github.com/go-co-op/gocron/releases)
- [Commits](https://github.com/go-co-op/gocron/compare/v2.1.0...v2.2.5)

---
updated-dependencies:
- dependency-name: github.com/go-co-op/gocron/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-07 07:43:00 +01:00
Manuel Buil
d16b53146c Bump github.com/imdario/mergo from 0.3.12 to 0.3.16
Signed-off-by: Manuel Buil <mbuil@suse.com>
2024-03-01 11:25:52 +01:00
dependabot[bot]
9630fb5382 build(deps): bump gomodules.xyz/jsonpatch/v2 from 2.2.0 to 2.4.0
Bumps [gomodules.xyz/jsonpatch/v2](https://github.com/gomodules/jsonpatch) from 2.2.0 to 2.4.0.
- [Release notes](https://github.com/gomodules/jsonpatch/releases)
- [Changelog](https://github.com/gomodules/jsonpatch/blob/release-2.0/CHANGELOG.md)
- [Commits](https://github.com/gomodules/jsonpatch/compare/v2.2.0...v2.4.0)

---
updated-dependencies:
- dependency-name: gomodules.xyz/jsonpatch/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-01 10:52:44 +01:00
dependabot[bot]
f2b7816af0 build(deps): bump github.com/onsi/gomega from 1.30.0 to 1.31.1
Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.30.0 to 1.31.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.30.0...v1.31.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-01 10:19:38 +01:00
Manuel Buil
0db08642fc Migrate to go1.21
Signed-off-by: Manuel Buil <mbuil@suse.com>
2024-02-29 14:36:34 +01:00
Manuel Buil
72d455d694 Update containernetworking deps
Signed-off-by: Manuel Buil <mbuil@suse.com>
2024-02-22 12:23:35 +01:00
Miguel Duarte Barroso
41366842f5 build: update gocron to v2
Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>
2023-12-20 16:47:09 +01:00
Zenghui Shi
7f0537f197 update golang.org/x/net to v0.17.0
fix CVE-2023-39325

Signed-off-by: Zenghui Shi <zshi@redhat.com>
2023-11-13 15:48:17 +08:00
dependabot[bot]
446e1c53a7
build(deps): bump golang.org/x/net from 0.1.0 to 0.7.0
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.1.0 to 0.7.0.
- [Release notes](https://github.com/golang/net/releases)
- [Commits](https://github.com/golang/net/compare/v0.1.0...v0.7.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-18 03:17:19 +00:00
Miguel Duarte Barroso
f5469aed61 ci, go1.19: update revive action to 2.4.1
Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>
2023-02-03 14:30:56 -06:00
Paulo Gomes
f5a820aa63 Bump Go version to 1.19
Signed-off-by: Paulo Gomes <pjbgf@linux.com>
2023-02-03 14:24:28 -06:00
nicklesimba
3de4e9a566 Added tests for ipv6 ranges that end in zeroes
Signed-off-by: nicklesimba <simha.nikhil@gmail.com>
2023-02-03 14:22:27 -06:00
Miguel Duarte Barroso
67c60adcd0 build: remove controller-runtime dependency 2022-08-19 14:28:28 +02:00
Miguel Duarte Barroso
d425c31e0d storage, etcd: update vendoring after removing etcd
Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>
2022-07-18 13:54:23 +02:00
nicklesimba
c97defb4ce Vendoring changes to include go-cron scheduling
Signed-off-by: nicklesimba <simha.nikhil@gmail.com>
2022-07-05 14:42:47 -05:00
dependabot[bot]
48f38dc061
build(deps): bump github.com/containernetworking/cni from 0.7.1 to 0.8.1
Bumps [github.com/containernetworking/cni](https://github.com/containernetworking/cni) from 0.7.1 to 0.8.1.
- [Release notes](https://github.com/containernetworking/cni/releases)
- [Commits](https://github.com/containernetworking/cni/compare/v0.7.1...v0.8.1)

---
updated-dependencies:
- dependency-name: github.com/containernetworking/cni
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-10 18:07:33 +00:00
Miguel Duarte Barroso
b04af49b2e build: update vendor for k8s-1.23 dependencies
Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>
2022-06-10 16:40:32 +02:00
Miguel Duarte Barroso
d7a11a042c build, go1.17: vendoring for backwards compatible IP parsing
Update the `k8s.io/utils` package to feature the `ParseCIDRSloppy` and
`ParseIPSloppy` functions, which perform a backwards compatible CIDR and
IP parsing, by allowing leading zeroes in the addresses - something
which golang1.17 rejects.

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>
2022-05-25 12:57:51 +02:00
Miguel Duarte Barroso
59f1052972
IP control loop (#185)
* build: generate ip pool clientSet/informers/listers

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>

* vendor: update vendor stuff

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>

* build: vendor net-attach-def-client types

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>

* config: look for the whereabouts config file in multiple places

The reconciler controller will have access to the whereabouts
configuration via a mount point. As such, we need a way to specify its
path.

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>

* reconcile-loop: requires the IP ranges in normalized format

The IP reconcile loop also requires the IP ranges in a normalized
format; as such, we export it into a function, which will be used in a
follow-up commit.

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>

* config: allow IPAM config parsing from a NetConfList

Currently whereabouts is only able to parse network configurations in
the strict [0] format - i.e. **do not accept** a plugin list - [1].

The `ip-control-loop` must recover the full plugin configuration, which
may be in the network configuration format.

This commit allows whereabouts to now understand both formats.

Furthermore, the current CNI release - v1.0.Z - removed the support for
[0], meaning that only the configuration list format is now supported
[2].

[0] - https://github.com/containernetworking/cni/blob/v0.8.1/SPEC.md#network-configuration
[1] - https://github.com/containernetworking/cni/blob/v0.8.1/SPEC.md#network-configuration-lists
[2] - https://github.com/containernetworking/cni/blob/master/SPEC.md#released-versions

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>

* reconcile-loop: add a controller

Listen to pod deletion, and for every deleted pod, assure their IPs
are gone.

The rough algorithm goes like this:
  - for every network-status in the pod's annotations:
    - read associated net-attach-def from the k8s API
    - extract the range from the net-attach-def
    - find the corresponding IP pool
    - look for allocations belonging to the deleted pod
    - delete them using `IPManagement(..., types.Deallocate, ...)`

All the API reads go through the informer cache, which is kept updated
whenever the objects are updated on the API.

The dockerfiles are also updated, to ship this new binary.

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>

* e2e tests: remove manual cluster reconciliation

This would leave the `ip-control-loop` as the reconciliation tool.

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>

* unit tests: assure stale IPAllocation cleanup

This commit adds a unit where it is checked that the pod deletion leads
to the cleanup of a stale IP address.

This commit features the automatic provisioning of the controller informer cache
with the data present on the fake clientset tracker (the "fake" datastore).

This way, users can just create the client with provisioned data, and
that'll trickle down to the informer cache of the pod controller.

Because the `network-attachment-definitions` resources feature dashes,
the heuristic function that guesses - yes, guesses. very deterministic
... - the name of the resource can't be used - [0]. As such, it was
needed to create an alternate `newFakeNetAttachDefClient` where it is
possible to specify the correct resource name.

[0] - 2fd7267afc/vendor/k8s.io/client-go/testing/fixture.go (L331)

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>

* unit tests: move helper funcs to other files

The helper files are tagged with the `test` build tag, to prevent them
from being shipped on the production code binary.

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>

* control loop, queueing: use a rate-limiting queue

Using a queue allows us to re-queue errors.

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>

* control loop: add IPAllocation cleanup related events

Adds two new events related to garbage collection of the whereabouts IP
addresses:
  - when an IP address is garbage collected
  - when a cleanup operation fails and is not re-queued

The former event looks like:
```
116s        Normal    IPAddressGarbageCollected   pod/macvlan1-worker1 \
            successful cleanup of IP address [192.168.2.1] from network \
            whereabouts-conf
```

The latter event looks like:
```
10s         Warning    IPAddressGarbageCollectionFailed    failed to garbage \
            collect addresses for pod default/macvlan1-worker1
```

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>

* e2e tests: check out statefulset scenarios

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>

* e2e tests: test different scale up/down order and instance deltas

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>

* ci: test e2e bash scripts last

These ugly tests do not cleanup after themselves; this way, the golang
based tests (which **do** cleanup after themselves) will not be impacted by
these left-overs.

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>

* ip control loop, unit tests: test negative scenarios

Check the event thrown when a request is dropped from the queue, and
assure reconciling an allocation is impossible without having access to
the attachment configuration data.

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>

* e2e tests: test fix for issue #182

Issue [0] reports an error when a pod associated to a `StatefulSet`
whose IPPool is already full is deleted. According to it, the new pod -
scheduled by the `StatefulSet` - cannot run because the IPPool is
already full, and the old pod's IP cannot be garbage collected because
we match by pod reference - and the "new" pod is stuck in `creating`
phase.

[0] - https://github.com/k8snetworkplumbingwg/whereabouts/issues/182

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>

* ip-control-loop: strip pod before queueing it

The ip reconcile loop only requires the pod metadata and its network
status annotatations to garbage collect the stale IP addresses.

As such, we remove the status and spec parameters from the pod before
queueing it.

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>

* reconcile-loop: focus on networks w/ whereabouts IPAM type

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>
2022-04-13 10:49:18 -04:00
Miguel Duarte Barroso
bc61dd9497 build: vendor project
Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>
2022-02-28 11:46:38 +01:00
Miguel Duarte Barroso
29dab4d915 vendoring: now controller-gen should not be required
Since we now run `go install` to get the `controller-gen` dependency,
referencing it in the go modules is no longer required.

Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>
2022-02-24 11:41:33 +01:00
Miguel Duarte Barroso
31e7f75cf4 build: bump k8s to 0.22.6
Signed-off-by: Miguel Duarte Barroso <mdbarroso@redhat.com>
2022-02-08 14:36:39 +01:00