Move flannel annotations into flannel setup, and use patch helpers to manage other node labels and annotations
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
Adds helper function for building JsonPatch operation lists,
which allows modifying a resource without having to manually
refresh the object and retry the change on conflict.
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
Flannel and VPN setup shouldn't be done in generic agent config as it is only
used with embeded executor's flannel CNI.
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
Allows properly delegating CNI startup to executor, so that it can be plugged in as platform and distro specific implimentation without relying on cli flag hacks
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
Allows importing pkg/metrics without pulling in pkg/etcd, which was causing an import loop in a follow-up commit.
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
We do not use any vulnerable code from this project, but we should bump it anyway to pacify scanners
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
The legacy Docker snapshotter flattens application/vnd.docker.distribution.manifest.v2+json manifests to application/vnd.oci.image.manifest.v1+json when saving. Switching to the containerd snapshotter allows us to keep the original manifest digest when pulling and saving image tarballs.
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
* tunnel: handle pod IP reuse
a valid tunnel/session may be deleted when an IP is reused while a
Complete pod (for example a job) was using that IP but is being gc'ed.
This causes timeouts to webhooks after directDial is attempted because
session was removed.
Solution is to track the owner of the IP and delete the entry only when
the the owner pod is deleted.
Signed-off-by: Julian Vassev <jvassev@gmail.com>
* Pass GOOS into Dockerfile.local build args
Fixes issue with build-windows job not actually building for windows
* Remove `go generate` from package-cli
We no longer use codegen in this repo
* Fix go:embed path separator on Windows
* Bump hcsshim for containerd 2.1 compat on windows
* Include failing lister in error message
* Bump k3s-io/api and k3s-io/helm-controller for embedded CRD windows path fix
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
Fixes issue where the apiserver on control-plane-only nodes does not
actually wait for a connection to etcd to be available before starting.
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
* Add Prime assets upload
Signed-off-by: Rafael Breno <rafael_breno@outlook.com>
* fixes
Signed-off-by: Rafael Breno <rafael_breno@outlook.com>
---------
Signed-off-by: Rafael Breno <rafael_breno@outlook.com>
Apparently Kubernetes objects may not have TypeMeta (APIVersion and Kind) fields set if they come from a List response - so we can't count on the objects passed to the handler having these properly set.
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
Fixes an issue where remotedialer clients may run into a deadlock when closing connections. This prevents the client from reconnecting to the server, and as the Close function has deadlocked, any health-checks that rely on checking remotedialer connection state will continue to pass as it claims to still be connected.
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
* Streamline E2E startup test
- Remove ineffective testlet on prefer-bundled-bin
- Minimize waiting for kubeconfig testlet
- Only kill docker containers for cri-dockerd testlet
* Migrate bad token testlet from E2E to Integration test
Signed-off-by: Derek Nola <derek.nola@suse.com>