From a29e689f3d9cefcee3073c4e025dd664077db8f1 Mon Sep 17 00:00:00 2001 From: Carlos Eduardo Arango Gutierrez Date: Wed, 30 Oct 2024 15:03:41 +0100 Subject: [PATCH 1/2] [no-relnote] revert PR 1007 Signed-off-by: Carlos Eduardo Arango Gutierrez --- .github/dependabot.yml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 5f2a7b8be..77860e265 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -6,9 +6,6 @@ updates: - package-ecosystem: "gomod" target-branch: main directory: "/" - ignore: - - dependency-name: "sigs.k8s.io/node-feature-discovery" - versions: ["0.16.x"] schedule: interval: "weekly" day: "sunday" @@ -58,9 +55,6 @@ updates: - package-ecosystem: "gomod" target-branch: release-0.16 directory: "/" - ignore: - - dependency-name: "sigs.k8s.io/node-feature-discovery" - versions: ["0.16.x"] schedule: interval: "weekly" day: "sunday" From 4fe51dc4d15b859e36aff180cdc339c893dc7542 Mon Sep 17 00:00:00 2001 From: Evan Lezar Date: Thu, 31 Oct 2024 17:05:52 +0100 Subject: [PATCH 2/2] Bump sigs.k8s.io/node-feature-discovery to v0.16.6 Signed-off-by: Evan Lezar Signed-off-by: Carlos Eduardo Arango Gutierrez --- go.mod | 4 +- go.sum | 11 +- internal/flags/kubeclient.go | 2 +- internal/lm/output.go | 4 +- tests/e2e/common/diagnostics/collector.go | 2 +- tests/e2e/common/diagnostics/options.go | 2 +- tests/e2e/common/kubernetes.go | 4 +- tests/e2e/gpu-feature-discovery_test.go | 2 +- vendor/modules.txt | 16 +- .../clientset/versioned/clientset.go | 4 +- .../clientset/versioned/scheme/doc.go | 2 +- .../clientset/versioned/scheme/register.go | 4 +- .../versioned/typed/nfd/v1alpha1/doc.go | 2 +- .../typed/nfd/v1alpha1/generated_expansion.go | 4 +- .../typed/nfd/v1alpha1/nfd_client.go | 11 +- .../typed/nfd/v1alpha1/nodefeature.go | 6 +- .../typed/nfd/v1alpha1/nodefeaturegroup.go | 195 ++++++++++++++++++ .../typed/nfd/v1alpha1/nodefeaturerule.go | 6 +- .../node-feature-discovery/api/nfd/LICENSE | 176 ++++++++++++++++ .../nfd/v1alpha1/annotations_labels.go | 3 + .../{pkg/apis => api}/nfd/v1alpha1/doc.go | 0 .../{pkg/apis => api}/nfd/v1alpha1/feature.go | 17 +- .../apis => api}/nfd/v1alpha1/generate.sh | 0 .../apis => api}/nfd/v1alpha1/generated.pb.go | 2 +- .../apis => api}/nfd/v1alpha1/generated.proto | 4 +- .../apis => api}/nfd/v1alpha1/register.go | 1 + .../{pkg/apis => api}/nfd/v1alpha1/types.go | 74 ++++++- .../nfd/v1alpha1/zz_generated.deepcopy.go | 192 ++++++++++++++++- 28 files changed, 688 insertions(+), 62 deletions(-) rename vendor/sigs.k8s.io/node-feature-discovery/{pkg => api}/generated/clientset/versioned/clientset.go (97%) rename vendor/sigs.k8s.io/node-feature-discovery/{pkg => api}/generated/clientset/versioned/scheme/doc.go (94%) rename vendor/sigs.k8s.io/node-feature-discovery/{pkg => api}/generated/clientset/versioned/scheme/register.go (94%) rename vendor/sigs.k8s.io/node-feature-discovery/{pkg => api}/generated/clientset/versioned/typed/nfd/v1alpha1/doc.go (94%) rename vendor/sigs.k8s.io/node-feature-discovery/{pkg => api}/generated/clientset/versioned/typed/nfd/v1alpha1/generated_expansion.go (89%) rename vendor/sigs.k8s.io/node-feature-discovery/{pkg => api}/generated/clientset/versioned/typed/nfd/v1alpha1/nfd_client.go (90%) rename vendor/sigs.k8s.io/node-feature-discovery/{pkg => api}/generated/clientset/versioned/typed/nfd/v1alpha1/nodefeature.go (97%) create mode 100644 vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1/nodefeaturegroup.go rename vendor/sigs.k8s.io/node-feature-discovery/{pkg => api}/generated/clientset/versioned/typed/nfd/v1alpha1/nodefeaturerule.go (97%) create mode 100644 vendor/sigs.k8s.io/node-feature-discovery/api/nfd/LICENSE rename vendor/sigs.k8s.io/node-feature-discovery/{pkg/apis => api}/nfd/v1alpha1/annotations_labels.go (95%) rename vendor/sigs.k8s.io/node-feature-discovery/{pkg/apis => api}/nfd/v1alpha1/doc.go (100%) rename vendor/sigs.k8s.io/node-feature-discovery/{pkg/apis => api}/nfd/v1alpha1/feature.go (91%) rename vendor/sigs.k8s.io/node-feature-discovery/{pkg/apis => api}/nfd/v1alpha1/generate.sh (100%) rename vendor/sigs.k8s.io/node-feature-discovery/{pkg/apis => api}/nfd/v1alpha1/generated.pb.go (99%) rename vendor/sigs.k8s.io/node-feature-discovery/{pkg/apis => api}/nfd/v1alpha1/generated.proto (94%) rename vendor/sigs.k8s.io/node-feature-discovery/{pkg/apis => api}/nfd/v1alpha1/register.go (98%) rename vendor/sigs.k8s.io/node-feature-discovery/{pkg/apis => api}/nfd/v1alpha1/types.go (82%) rename vendor/sigs.k8s.io/node-feature-discovery/{pkg/apis => api}/nfd/v1alpha1/zz_generated.deepcopy.go (73%) diff --git a/go.mod b/go.mod index 3c269e2cb..e9a5e59e5 100644 --- a/go.mod +++ b/go.mod @@ -24,7 +24,8 @@ require ( k8s.io/klog/v2 v2.130.1 k8s.io/kubelet v0.31.1 k8s.io/mount-utils v0.31.1 - sigs.k8s.io/node-feature-discovery v0.15.4 + sigs.k8s.io/node-feature-discovery v0.16.6 + sigs.k8s.io/node-feature-discovery/api/nfd v0.16.6 sigs.k8s.io/yaml v1.4.0 tags.cncf.io/container-device-interface v0.8.0 tags.cncf.io/container-device-interface/specs-go v0.8.0 @@ -54,7 +55,6 @@ require ( github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect - github.com/onsi/gomega v1.33.1 // indirect github.com/opencontainers/runc v1.1.14 // indirect github.com/opencontainers/runtime-spec v1.2.0 // indirect github.com/opencontainers/runtime-tools v0.9.1-0.20221107090550-2e043c6bd626 // indirect diff --git a/go.sum b/go.sum index 99c8c6d6e..7be3eb2dc 100644 --- a/go.sum +++ b/go.sum @@ -30,7 +30,6 @@ github.com/go-openapi/jsonreference v0.20.4 h1:bKlDxQxQJgwpUSgOENiMPzCTBVuc7vTdX github.com/go-openapi/jsonreference v0.20.4/go.mod h1:5pZJyJP2MnYCpoeoMAql78cCHauHj0V9Lhc506VOpw4= github.com/go-openapi/swag v0.22.9 h1:XX2DssF+mQKM2DHsbgZK74y/zj4mo9I99+89xUmuZCE= github.com/go-openapi/swag v0.22.9/go.mod h1:3/OXnFfnMAwBD099SwYRk7GD3xOrr1iL7d/XNLXVVwE= -github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 h1:tfuBGBXKqDEevZMzYi5KSi8KkcZtzBcTgAUUtapy0OI= github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI= github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8= github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= @@ -140,8 +139,8 @@ github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9dec golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/exp v0.0.0-20231206192017-f3f8817b8deb h1:c0vyKkb6yr3KR7jEfJaOSv4lG7xPkbN6r52aJz1d8a8= -golang.org/x/exp v0.0.0-20231206192017-f3f8817b8deb/go.mod h1:iRJReGqOEeBhDZGkGbynYwcHlctCvnjTYIamk7uXpHI= +golang.org/x/exp v0.0.0-20240112132812-db7319d0e0e3 h1:hNQpMuAJe5CtcUqCXaWga3FHu+kQvCqcsoVaQgSV60o= +golang.org/x/exp v0.0.0-20240112132812-db7319d0e0e3/go.mod h1:idGWGoKP1toJGkd5/ig9ZLuPcZBC3ewk7SzmH0uou08= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.20.0 h1:utOm6MM3R3dnawAiJgn0y+xvuYRsm1RKM/4giyfDgV0= @@ -219,8 +218,10 @@ k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 h1:pUdcCO1Lk/tbT5ztQWOBi5HBgbBP1 k8s.io/utils v0.0.0-20240711033017-18e509b52bc8/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= -sigs.k8s.io/node-feature-discovery v0.15.4 h1:IoSN/G+Bl94Liu+b862a3gx/rqCKdeUtcPxbL4VnOYg= -sigs.k8s.io/node-feature-discovery v0.15.4/go.mod h1:vp165AxVdzCWYIKuaLkckGo53/D5OR+WSyePSUEIYQw= +sigs.k8s.io/node-feature-discovery v0.16.6 h1:G+n0gStHnLojsLVLgP/ArsC2gwP1fkw7TrHr0MJ4x8k= +sigs.k8s.io/node-feature-discovery v0.16.6/go.mod h1:7qS1l8P6UdfLa/ec8VneMvINbdWbuhTuuQr1wZ7/Jbg= +sigs.k8s.io/node-feature-discovery/api/nfd v0.16.6 h1:07AwnEocbzPG98VIwkskfac6fVwzumZMGt9ePyAa60I= +sigs.k8s.io/node-feature-discovery/api/nfd v0.16.6/go.mod h1:p8V8+A+enKGj31HFeBSpuTjfe6WUdIG0nl0Yze/d/+Q= sigs.k8s.io/structured-merge-diff/v4 v4.4.1 h1:150L+0vs/8DA78h1u02ooW1/fFq/Lwr+sGiqlzvrtq4= sigs.k8s.io/structured-merge-diff/v4 v4.4.1/go.mod h1:N8hJocpFajUSSeSJ9bOZ77VzejKZaXsTtZo4/u7Io08= sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E= diff --git a/internal/flags/kubeclient.go b/internal/flags/kubeclient.go index d0d105753..cc9413e71 100644 --- a/internal/flags/kubeclient.go +++ b/internal/flags/kubeclient.go @@ -25,7 +25,7 @@ import ( coreclientset "k8s.io/client-go/kubernetes" "k8s.io/client-go/rest" "k8s.io/client-go/tools/clientcmd" - nfdclientset "sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned" + nfdclientset "sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned" ) type KubeClientConfig struct { diff --git a/internal/lm/output.go b/internal/lm/output.go index 05f7fc428..0c4737780 100644 --- a/internal/lm/output.go +++ b/internal/lm/output.go @@ -28,8 +28,8 @@ import ( "k8s.io/apimachinery/pkg/api/errors" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/klog/v2" - nfdv1alpha1 "sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1" - nfdclientset "sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned" + nfdclientset "sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned" + nfdv1alpha1 "sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1" "github.com/google/renameio" diff --git a/tests/e2e/common/diagnostics/collector.go b/tests/e2e/common/diagnostics/collector.go index fd3635ee7..ab4ef9b37 100644 --- a/tests/e2e/common/diagnostics/collector.go +++ b/tests/e2e/common/diagnostics/collector.go @@ -25,7 +25,7 @@ import ( "k8s.io/client-go/kubernetes" "k8s.io/klog/v2" - nfdclient "sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned" + nfdclient "sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned" "sigs.k8s.io/yaml" ) diff --git a/tests/e2e/common/diagnostics/options.go b/tests/e2e/common/diagnostics/options.go index 891103e5e..2e61da915 100644 --- a/tests/e2e/common/diagnostics/options.go +++ b/tests/e2e/common/diagnostics/options.go @@ -19,7 +19,7 @@ package diagnostics import ( "k8s.io/client-go/kubernetes" "k8s.io/klog/v2" - nfdclient "sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned" + nfdclient "sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned" ) const ( diff --git a/tests/e2e/common/kubernetes.go b/tests/e2e/common/kubernetes.go index 3598cf909..0c72d7751 100644 --- a/tests/e2e/common/kubernetes.go +++ b/tests/e2e/common/kubernetes.go @@ -29,8 +29,8 @@ import ( "k8s.io/apimachinery/pkg/api/errors" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" clientset "k8s.io/client-go/kubernetes" - nfdv1alpha1 "sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1" - nfdclient "sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned" + nfdclient "sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned" + nfdv1alpha1 "sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1" ) // GetNonControlPlaneNodes gets the nodes that are not tainted for exclusive control-plane usage diff --git a/tests/e2e/gpu-feature-discovery_test.go b/tests/e2e/gpu-feature-discovery_test.go index 713608a17..5bc8aecfd 100644 --- a/tests/e2e/gpu-feature-discovery_test.go +++ b/tests/e2e/gpu-feature-discovery_test.go @@ -31,7 +31,7 @@ import ( extclient "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/util/rand" - nfdclient "sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned" + nfdclient "sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned" "github.com/NVIDIA/k8s-device-plugin/tests/e2e/common" "github.com/NVIDIA/k8s-device-plugin/tests/e2e/common/diagnostics" diff --git a/vendor/modules.txt b/vendor/modules.txt index 32f6b5a89..9855663f8 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -136,8 +136,6 @@ github.com/modern-go/reflect2 # github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 ## explicit github.com/munnerz/goautoneg -# github.com/onsi/gomega v1.33.1 -## explicit; go 1.20 # github.com/opencontainers/runc v1.1.14 ## explicit; go 1.18 github.com/opencontainers/runc/libcontainer/configs @@ -613,12 +611,14 @@ k8s.io/utils/trace ## explicit; go 1.18 sigs.k8s.io/json sigs.k8s.io/json/internal/golang/encoding/json -# sigs.k8s.io/node-feature-discovery v0.15.4 -## explicit; go 1.21 -sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1 -sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned -sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/scheme -sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/typed/nfd/v1alpha1 +# sigs.k8s.io/node-feature-discovery v0.16.6 +## explicit; go 1.22.2 +sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned +sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/scheme +sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1 +# sigs.k8s.io/node-feature-discovery/api/nfd v0.16.6 +## explicit; go 1.22.2 +sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1 # sigs.k8s.io/structured-merge-diff/v4 v4.4.1 ## explicit; go 1.13 sigs.k8s.io/structured-merge-diff/v4/fieldpath diff --git a/vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/clientset.go b/vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/clientset.go similarity index 97% rename from vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/clientset.go rename to vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/clientset.go index 46e3dafe6..9891a3436 100644 --- a/vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/clientset.go +++ b/vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/clientset.go @@ -1,5 +1,5 @@ /* -Copyright 2023 The Kubernetes Authors. +Copyright 2024 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -25,7 +25,7 @@ import ( discovery "k8s.io/client-go/discovery" rest "k8s.io/client-go/rest" flowcontrol "k8s.io/client-go/util/flowcontrol" - nfdv1alpha1 "sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/typed/nfd/v1alpha1" + nfdv1alpha1 "sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1" ) type Interface interface { diff --git a/vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/scheme/doc.go b/vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/scheme/doc.go similarity index 94% rename from vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/scheme/doc.go rename to vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/scheme/doc.go index 6aa6c1e43..0fe2de913 100644 --- a/vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/scheme/doc.go +++ b/vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/scheme/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2023 The Kubernetes Authors. +Copyright 2024 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/scheme/register.go b/vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/scheme/register.go similarity index 94% rename from vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/scheme/register.go rename to vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/scheme/register.go index 89297224c..f822ef608 100644 --- a/vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/scheme/register.go +++ b/vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/scheme/register.go @@ -1,5 +1,5 @@ /* -Copyright 2023 The Kubernetes Authors. +Copyright 2024 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -24,7 +24,7 @@ import ( schema "k8s.io/apimachinery/pkg/runtime/schema" serializer "k8s.io/apimachinery/pkg/runtime/serializer" utilruntime "k8s.io/apimachinery/pkg/util/runtime" - nfdv1alpha1 "sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1" + nfdv1alpha1 "sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1" ) var Scheme = runtime.NewScheme() diff --git a/vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/typed/nfd/v1alpha1/doc.go b/vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1/doc.go similarity index 94% rename from vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/typed/nfd/v1alpha1/doc.go rename to vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1/doc.go index a022e3e2c..ecc546221 100644 --- a/vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/typed/nfd/v1alpha1/doc.go +++ b/vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2023 The Kubernetes Authors. +Copyright 2024 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/typed/nfd/v1alpha1/generated_expansion.go b/vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1/generated_expansion.go similarity index 89% rename from vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/typed/nfd/v1alpha1/generated_expansion.go rename to vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1/generated_expansion.go index 30853f1ca..02d3e3518 100644 --- a/vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/typed/nfd/v1alpha1/generated_expansion.go +++ b/vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1/generated_expansion.go @@ -1,5 +1,5 @@ /* -Copyright 2023 The Kubernetes Authors. +Copyright 2024 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -20,4 +20,6 @@ package v1alpha1 type NodeFeatureExpansion interface{} +type NodeFeatureGroupExpansion interface{} + type NodeFeatureRuleExpansion interface{} diff --git a/vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/typed/nfd/v1alpha1/nfd_client.go b/vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1/nfd_client.go similarity index 90% rename from vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/typed/nfd/v1alpha1/nfd_client.go rename to vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1/nfd_client.go index 5a0a853cf..37a6f340a 100644 --- a/vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/typed/nfd/v1alpha1/nfd_client.go +++ b/vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1/nfd_client.go @@ -1,5 +1,5 @@ /* -Copyright 2023 The Kubernetes Authors. +Copyright 2024 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -22,13 +22,14 @@ import ( "net/http" rest "k8s.io/client-go/rest" - v1alpha1 "sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1" - "sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/scheme" + "sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/scheme" + v1alpha1 "sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1" ) type NfdV1alpha1Interface interface { RESTClient() rest.Interface NodeFeaturesGetter + NodeFeatureGroupsGetter NodeFeatureRulesGetter } @@ -41,6 +42,10 @@ func (c *NfdV1alpha1Client) NodeFeatures(namespace string) NodeFeatureInterface return newNodeFeatures(c, namespace) } +func (c *NfdV1alpha1Client) NodeFeatureGroups(namespace string) NodeFeatureGroupInterface { + return newNodeFeatureGroups(c, namespace) +} + func (c *NfdV1alpha1Client) NodeFeatureRules() NodeFeatureRuleInterface { return newNodeFeatureRules(c) } diff --git a/vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/typed/nfd/v1alpha1/nodefeature.go b/vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1/nodefeature.go similarity index 97% rename from vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/typed/nfd/v1alpha1/nodefeature.go rename to vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1/nodefeature.go index d058d0ed7..f159be867 100644 --- a/vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/typed/nfd/v1alpha1/nodefeature.go +++ b/vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1/nodefeature.go @@ -1,5 +1,5 @@ /* -Copyright 2023 The Kubernetes Authors. +Copyright 2024 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -26,8 +26,8 @@ import ( types "k8s.io/apimachinery/pkg/types" watch "k8s.io/apimachinery/pkg/watch" rest "k8s.io/client-go/rest" - v1alpha1 "sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1" - scheme "sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/scheme" + scheme "sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/scheme" + v1alpha1 "sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1" ) // NodeFeaturesGetter has a method to return a NodeFeatureInterface. diff --git a/vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1/nodefeaturegroup.go b/vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1/nodefeaturegroup.go new file mode 100644 index 000000000..a988f3c8e --- /dev/null +++ b/vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1/nodefeaturegroup.go @@ -0,0 +1,195 @@ +/* +Copyright 2024 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by client-gen. DO NOT EDIT. + +package v1alpha1 + +import ( + "context" + "time" + + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + types "k8s.io/apimachinery/pkg/types" + watch "k8s.io/apimachinery/pkg/watch" + rest "k8s.io/client-go/rest" + scheme "sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/scheme" + v1alpha1 "sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1" +) + +// NodeFeatureGroupsGetter has a method to return a NodeFeatureGroupInterface. +// A group's client should implement this interface. +type NodeFeatureGroupsGetter interface { + NodeFeatureGroups(namespace string) NodeFeatureGroupInterface +} + +// NodeFeatureGroupInterface has methods to work with NodeFeatureGroup resources. +type NodeFeatureGroupInterface interface { + Create(ctx context.Context, nodeFeatureGroup *v1alpha1.NodeFeatureGroup, opts v1.CreateOptions) (*v1alpha1.NodeFeatureGroup, error) + Update(ctx context.Context, nodeFeatureGroup *v1alpha1.NodeFeatureGroup, opts v1.UpdateOptions) (*v1alpha1.NodeFeatureGroup, error) + UpdateStatus(ctx context.Context, nodeFeatureGroup *v1alpha1.NodeFeatureGroup, opts v1.UpdateOptions) (*v1alpha1.NodeFeatureGroup, error) + Delete(ctx context.Context, name string, opts v1.DeleteOptions) error + DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error + Get(ctx context.Context, name string, opts v1.GetOptions) (*v1alpha1.NodeFeatureGroup, error) + List(ctx context.Context, opts v1.ListOptions) (*v1alpha1.NodeFeatureGroupList, error) + Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) + Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *v1alpha1.NodeFeatureGroup, err error) + NodeFeatureGroupExpansion +} + +// nodeFeatureGroups implements NodeFeatureGroupInterface +type nodeFeatureGroups struct { + client rest.Interface + ns string +} + +// newNodeFeatureGroups returns a NodeFeatureGroups +func newNodeFeatureGroups(c *NfdV1alpha1Client, namespace string) *nodeFeatureGroups { + return &nodeFeatureGroups{ + client: c.RESTClient(), + ns: namespace, + } +} + +// Get takes name of the nodeFeatureGroup, and returns the corresponding nodeFeatureGroup object, and an error if there is any. +func (c *nodeFeatureGroups) Get(ctx context.Context, name string, options v1.GetOptions) (result *v1alpha1.NodeFeatureGroup, err error) { + result = &v1alpha1.NodeFeatureGroup{} + err = c.client.Get(). + Namespace(c.ns). + Resource("nodefeaturegroups"). + Name(name). + VersionedParams(&options, scheme.ParameterCodec). + Do(ctx). + Into(result) + return +} + +// List takes label and field selectors, and returns the list of NodeFeatureGroups that match those selectors. +func (c *nodeFeatureGroups) List(ctx context.Context, opts v1.ListOptions) (result *v1alpha1.NodeFeatureGroupList, err error) { + var timeout time.Duration + if opts.TimeoutSeconds != nil { + timeout = time.Duration(*opts.TimeoutSeconds) * time.Second + } + result = &v1alpha1.NodeFeatureGroupList{} + err = c.client.Get(). + Namespace(c.ns). + Resource("nodefeaturegroups"). + VersionedParams(&opts, scheme.ParameterCodec). + Timeout(timeout). + Do(ctx). + Into(result) + return +} + +// Watch returns a watch.Interface that watches the requested nodeFeatureGroups. +func (c *nodeFeatureGroups) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) { + var timeout time.Duration + if opts.TimeoutSeconds != nil { + timeout = time.Duration(*opts.TimeoutSeconds) * time.Second + } + opts.Watch = true + return c.client.Get(). + Namespace(c.ns). + Resource("nodefeaturegroups"). + VersionedParams(&opts, scheme.ParameterCodec). + Timeout(timeout). + Watch(ctx) +} + +// Create takes the representation of a nodeFeatureGroup and creates it. Returns the server's representation of the nodeFeatureGroup, and an error, if there is any. +func (c *nodeFeatureGroups) Create(ctx context.Context, nodeFeatureGroup *v1alpha1.NodeFeatureGroup, opts v1.CreateOptions) (result *v1alpha1.NodeFeatureGroup, err error) { + result = &v1alpha1.NodeFeatureGroup{} + err = c.client.Post(). + Namespace(c.ns). + Resource("nodefeaturegroups"). + VersionedParams(&opts, scheme.ParameterCodec). + Body(nodeFeatureGroup). + Do(ctx). + Into(result) + return +} + +// Update takes the representation of a nodeFeatureGroup and updates it. Returns the server's representation of the nodeFeatureGroup, and an error, if there is any. +func (c *nodeFeatureGroups) Update(ctx context.Context, nodeFeatureGroup *v1alpha1.NodeFeatureGroup, opts v1.UpdateOptions) (result *v1alpha1.NodeFeatureGroup, err error) { + result = &v1alpha1.NodeFeatureGroup{} + err = c.client.Put(). + Namespace(c.ns). + Resource("nodefeaturegroups"). + Name(nodeFeatureGroup.Name). + VersionedParams(&opts, scheme.ParameterCodec). + Body(nodeFeatureGroup). + Do(ctx). + Into(result) + return +} + +// UpdateStatus was generated because the type contains a Status member. +// Add a +genclient:noStatus comment above the type to avoid generating UpdateStatus(). +func (c *nodeFeatureGroups) UpdateStatus(ctx context.Context, nodeFeatureGroup *v1alpha1.NodeFeatureGroup, opts v1.UpdateOptions) (result *v1alpha1.NodeFeatureGroup, err error) { + result = &v1alpha1.NodeFeatureGroup{} + err = c.client.Put(). + Namespace(c.ns). + Resource("nodefeaturegroups"). + Name(nodeFeatureGroup.Name). + SubResource("status"). + VersionedParams(&opts, scheme.ParameterCodec). + Body(nodeFeatureGroup). + Do(ctx). + Into(result) + return +} + +// Delete takes name of the nodeFeatureGroup and deletes it. Returns an error if one occurs. +func (c *nodeFeatureGroups) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error { + return c.client.Delete(). + Namespace(c.ns). + Resource("nodefeaturegroups"). + Name(name). + Body(&opts). + Do(ctx). + Error() +} + +// DeleteCollection deletes a collection of objects. +func (c *nodeFeatureGroups) DeleteCollection(ctx context.Context, opts v1.DeleteOptions, listOpts v1.ListOptions) error { + var timeout time.Duration + if listOpts.TimeoutSeconds != nil { + timeout = time.Duration(*listOpts.TimeoutSeconds) * time.Second + } + return c.client.Delete(). + Namespace(c.ns). + Resource("nodefeaturegroups"). + VersionedParams(&listOpts, scheme.ParameterCodec). + Timeout(timeout). + Body(&opts). + Do(ctx). + Error() +} + +// Patch applies the patch and returns the patched nodeFeatureGroup. +func (c *nodeFeatureGroups) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *v1alpha1.NodeFeatureGroup, err error) { + result = &v1alpha1.NodeFeatureGroup{} + err = c.client.Patch(pt). + Namespace(c.ns). + Resource("nodefeaturegroups"). + Name(name). + SubResource(subresources...). + VersionedParams(&opts, scheme.ParameterCodec). + Body(data). + Do(ctx). + Into(result) + return +} diff --git a/vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/typed/nfd/v1alpha1/nodefeaturerule.go b/vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1/nodefeaturerule.go similarity index 97% rename from vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/typed/nfd/v1alpha1/nodefeaturerule.go rename to vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1/nodefeaturerule.go index 606ae14f9..843c13768 100644 --- a/vendor/sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/typed/nfd/v1alpha1/nodefeaturerule.go +++ b/vendor/sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/typed/nfd/v1alpha1/nodefeaturerule.go @@ -1,5 +1,5 @@ /* -Copyright 2023 The Kubernetes Authors. +Copyright 2024 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -26,8 +26,8 @@ import ( types "k8s.io/apimachinery/pkg/types" watch "k8s.io/apimachinery/pkg/watch" rest "k8s.io/client-go/rest" - v1alpha1 "sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1" - scheme "sigs.k8s.io/node-feature-discovery/pkg/generated/clientset/versioned/scheme" + scheme "sigs.k8s.io/node-feature-discovery/api/generated/clientset/versioned/scheme" + v1alpha1 "sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1" ) // NodeFeatureRulesGetter has a method to return a NodeFeatureRuleInterface. diff --git a/vendor/sigs.k8s.io/node-feature-discovery/api/nfd/LICENSE b/vendor/sigs.k8s.io/node-feature-discovery/api/nfd/LICENSE new file mode 100644 index 000000000..d9a10c0d8 --- /dev/null +++ b/vendor/sigs.k8s.io/node-feature-discovery/api/nfd/LICENSE @@ -0,0 +1,176 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS diff --git a/vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/annotations_labels.go b/vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/annotations_labels.go similarity index 95% rename from vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/annotations_labels.go rename to vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/annotations_labels.go index b1f848245..a447f1dcd 100644 --- a/vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/annotations_labels.go +++ b/vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/annotations_labels.go @@ -74,4 +74,7 @@ const ( // FeatureAnnotationSubNsSuffix is the suffix for allowed feature annotation sub-namespaces. FeatureAnnotationSubNsSuffix = "." + FeatureAnnotationNs + + // FeatureAnnotationValueSizeLimit is the maximum allowed length for the value of a feature annotation. + FeatureAnnotationValueSizeLimit = 1 << 10 ) diff --git a/vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/doc.go b/vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/doc.go similarity index 100% rename from vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/doc.go rename to vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/doc.go diff --git a/vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/feature.go b/vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/feature.go similarity index 91% rename from vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/feature.go rename to vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/feature.go index a3d066bd4..1f4f1d074 100644 --- a/vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/feature.go +++ b/vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/feature.go @@ -54,7 +54,7 @@ func NewAttributeFeatures(values map[string]string) AttributeFeatureSet { } // NewInstanceFeatures creates a new instance of InstanceFeatureSet. -func NewInstanceFeatures(instances []InstanceFeature) InstanceFeatureSet { +func NewInstanceFeatures(instances ...InstanceFeature) InstanceFeatureSet { return InstanceFeatureSet{Elements: instances} } @@ -80,21 +80,6 @@ func (f *Features) InsertAttributeFeatures(domain, feature string, values map[st maps.Copy(f.Attributes[key].Elements, values) } -// Exists returns a non-empty string if a feature exists. The return value is -// the type of the feautre, i.e. "flag", "attribute" or "instance". -func (f *Features) Exists(name string) string { - if _, ok := f.Flags[name]; ok { - return "flag" - } - if _, ok := f.Attributes[name]; ok { - return "attribute" - } - if _, ok := f.Instances[name]; ok { - return "instance" - } - return "" -} - // MergeInto merges two FeatureSpecs into one. Data in the input object takes // precedence (overwrite) over data of the existing object we're merging into. func (in *NodeFeatureSpec) MergeInto(out *NodeFeatureSpec) { diff --git a/vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/generate.sh b/vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/generate.sh similarity index 100% rename from vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/generate.sh rename to vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/generate.sh diff --git a/vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/generated.pb.go b/vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/generated.pb.go similarity index 99% rename from vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/generated.pb.go rename to vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/generated.pb.go index cd242d98d..4231691e4 100644 --- a/vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/generated.pb.go +++ b/vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/generated.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2023 The Kubernetes Authors. +Copyright 2024 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/generated.proto b/vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/generated.proto similarity index 94% rename from vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/generated.proto rename to vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/generated.proto index 278356ed5..dab35a16a 100644 --- a/vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/generated.proto +++ b/vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/generated.proto @@ -1,5 +1,5 @@ /* -Copyright 2023 The Kubernetes Authors. +Copyright 2024 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -22,7 +22,7 @@ syntax = "proto2"; package v1alpha1; // Package-wide variables from generator "generated". -option go_package = "sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1"; +option go_package = "sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1"; // AttributeFeatureSet is a set of features having string value. // diff --git a/vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/register.go b/vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/register.go similarity index 98% rename from vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/register.go rename to vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/register.go index 8c1d41f5b..9ccfbba25 100644 --- a/vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/register.go +++ b/vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/register.go @@ -42,6 +42,7 @@ func addKnownTypes(scheme *runtime.Scheme) error { scheme.AddKnownTypes(SchemeGroupVersion, &NodeFeature{}, &NodeFeatureRule{}, + &NodeFeatureGroup{}, ) metav1.AddToGroupVersion(scheme, SchemeGroupVersion) return nil diff --git a/vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/types.go b/vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/types.go similarity index 82% rename from vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/types.go rename to vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/types.go index f5bfcb7ec..c89efd818 100644 --- a/vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/types.go +++ b/vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/types.go @@ -28,18 +28,20 @@ type NodeFeatureList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` + // List of NodeFeatures. Items []NodeFeature `json:"items"` } // NodeFeature resource holds the features discovered for one node in the // cluster. // +kubebuilder:object:root=true -// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object type NodeFeature struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` + // Specification of the NodeFeature, containing features discovered for a node. Spec NodeFeatureSpec `json:"spec"` } @@ -72,6 +74,7 @@ type Features struct { // // +protobuf=true type FlagFeatureSet struct { + // Individual features of the feature set. Elements map[string]Nil `json:"elements" protobuf:"bytes,1,rep,name=elements"` } @@ -79,6 +82,7 @@ type FlagFeatureSet struct { // // +protobuf=true type AttributeFeatureSet struct { + // Individual features of the feature set. Elements map[string]string `json:"elements" protobuf:"bytes,1,rep,name=elements"` } @@ -86,6 +90,7 @@ type AttributeFeatureSet struct { // // +protobuf=true type InstanceFeatureSet struct { + // Individual features of the feature set. Elements []InstanceFeature `json:"elements" protobuf:"bytes,1,rep,name=elements"` } @@ -93,6 +98,7 @@ type InstanceFeatureSet struct { // // +protobuf=true type InstanceFeature struct { + // Attributes of the instance feature. Attributes map[string]string `json:"attributes" protobuf:"bytes,1,rep,name=attributes"` } @@ -108,6 +114,7 @@ type NodeFeatureRuleList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` + // List of NodeFeatureRules. Items []NodeFeatureRule `json:"items"` } @@ -122,6 +129,7 @@ type NodeFeatureRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` + // Spec defines the rules to be evaluated. Spec NodeFeatureRuleSpec `json:"spec"` } @@ -131,6 +139,70 @@ type NodeFeatureRuleSpec struct { Rules []Rule `json:"rules"` } +// NodeFeatureGroup resource holds Node pools by featureGroup +// +kubebuilder:object:root=true +// +kubebuilder:resource:scope=Namespaced,shortName=nfg +// +kubebuilder:subresource:status +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +// +genclient +type NodeFeatureGroup struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + + // Spec defines the rules to be evaluated. + Spec NodeFeatureGroupSpec `json:"spec"` + + // Status of the NodeFeatureGroup after the most recent evaluation of the + // specification. + Status NodeFeatureGroupStatus `json:"status,omitempty"` +} + +// NodeFeatureGroupSpec describes a NodeFeatureGroup object. +type NodeFeatureGroupSpec struct { + // List of rules to evaluate to determine nodes that belong in this group. + Rules []GroupRule `json:"featureGroupRules"` +} + +type NodeFeatureGroupStatus struct { + // Nodes is a list of FeatureGroupNode in the cluster that match the featureGroupRules + // +optional + // +patchMergeKey=name + // +patchStrategy=merge + // +listType=map + // +listMapKey=name + Nodes []FeatureGroupNode `json:"nodes"` +} + +type FeatureGroupNode struct { + // Name of the node. + Name string `json:"name"` +} + +// NodeFeatureGroupList contains a list of NodeFeatureGroup objects. +// +kubebuilder:object:root=true +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +type NodeFeatureGroupList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata"` + + // List of NodeFeatureGroups. + Items []NodeFeatureGroup `json:"items"` +} + +// GroupRule defines a rule for nodegroup filtering. +type GroupRule struct { + // Name of the rule. + Name string `json:"name"` + + // MatchFeatures specifies a set of matcher terms all of which must match. + // +optional + MatchFeatures FeatureMatcher `json:"matchFeatures"` + + // MatchAny specifies a list of matchers one of which must match. + // +optional + MatchAny []MatchAnyElem `json:"matchAny"` +} + // Rule defines a rule for node customization such as labeling. type Rule struct { // Name of the rule. diff --git a/vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/zz_generated.deepcopy.go b/vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/zz_generated.deepcopy.go similarity index 73% rename from vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/zz_generated.deepcopy.go rename to vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/zz_generated.deepcopy.go index 6f9d9052e..491d9866c 100644 --- a/vendor/sigs.k8s.io/node-feature-discovery/pkg/apis/nfd/v1alpha1/zz_generated.deepcopy.go +++ b/vendor/sigs.k8s.io/node-feature-discovery/api/nfd/v1alpha1/zz_generated.deepcopy.go @@ -1,13 +1,29 @@ //go:build !ignore_autogenerated // +build !ignore_autogenerated -// Code generated by controller-gen. DO NOT EDIT. +/* +Copyright 2024 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by deepcopy-gen. DO NOT EDIT. package v1alpha1 import ( - "k8s.io/api/core/v1" - "k8s.io/apimachinery/pkg/runtime" + v1 "k8s.io/api/core/v1" + runtime "k8s.io/apimachinery/pkg/runtime" ) // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. @@ -20,6 +36,7 @@ func (in *AttributeFeatureSet) DeepCopyInto(out *AttributeFeatureSet) { (*out)[key] = val } } + return } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AttributeFeatureSet. @@ -32,6 +49,22 @@ func (in *AttributeFeatureSet) DeepCopy() *AttributeFeatureSet { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FeatureGroupNode) DeepCopyInto(out *FeatureGroupNode) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeatureGroupNode. +func (in *FeatureGroupNode) DeepCopy() *FeatureGroupNode { + if in == nil { + return nil + } + out := new(FeatureGroupNode) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in FeatureMatcher) DeepCopyInto(out *FeatureMatcher) { { @@ -40,6 +73,7 @@ func (in FeatureMatcher) DeepCopyInto(out *FeatureMatcher) { for i := range *in { (*in)[i].DeepCopyInto(&(*out)[i]) } + return } } @@ -80,6 +114,7 @@ func (in *FeatureMatcherTerm) DeepCopyInto(out *FeatureMatcherTerm) { *out = new(MatchExpression) (*in).DeepCopyInto(*out) } + return } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeatureMatcherTerm. @@ -116,6 +151,7 @@ func (in *Features) DeepCopyInto(out *Features) { (*out)[key] = *val.DeepCopy() } } + return } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Features. @@ -138,6 +174,7 @@ func (in *FlagFeatureSet) DeepCopyInto(out *FlagFeatureSet) { (*out)[key] = val } } + return } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlagFeatureSet. @@ -150,6 +187,36 @@ func (in *FlagFeatureSet) DeepCopy() *FlagFeatureSet { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GroupRule) DeepCopyInto(out *GroupRule) { + *out = *in + if in.MatchFeatures != nil { + in, out := &in.MatchFeatures, &out.MatchFeatures + *out = make(FeatureMatcher, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.MatchAny != nil { + in, out := &in.MatchAny, &out.MatchAny + *out = make([]MatchAnyElem, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GroupRule. +func (in *GroupRule) DeepCopy() *GroupRule { + if in == nil { + return nil + } + out := new(GroupRule) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *InstanceFeature) DeepCopyInto(out *InstanceFeature) { *out = *in @@ -160,6 +227,7 @@ func (in *InstanceFeature) DeepCopyInto(out *InstanceFeature) { (*out)[key] = val } } + return } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceFeature. @@ -182,6 +250,7 @@ func (in *InstanceFeatureSet) DeepCopyInto(out *InstanceFeatureSet) { (*in)[i].DeepCopyInto(&(*out)[i]) } } + return } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceFeatureSet. @@ -204,6 +273,7 @@ func (in *MatchAnyElem) DeepCopyInto(out *MatchAnyElem) { (*in)[i].DeepCopyInto(&(*out)[i]) } } + return } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MatchAnyElem. @@ -224,6 +294,7 @@ func (in *MatchExpression) DeepCopyInto(out *MatchExpression) { *out = make(MatchValue, len(*in)) copy(*out, *in) } + return } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MatchExpression. @@ -252,6 +323,7 @@ func (in MatchExpressionSet) DeepCopyInto(out *MatchExpressionSet) { } (*out)[key] = outVal } + return } } @@ -271,6 +343,7 @@ func (in MatchValue) DeepCopyInto(out *MatchValue) { in := &in *out = make(MatchValue, len(*in)) copy(*out, *in) + return } } @@ -287,6 +360,7 @@ func (in MatchValue) DeepCopy() MatchValue { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *Nil) DeepCopyInto(out *Nil) { *out = *in + return } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Nil. @@ -305,6 +379,7 @@ func (in *NodeFeature) DeepCopyInto(out *NodeFeature) { out.TypeMeta = in.TypeMeta in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) in.Spec.DeepCopyInto(&out.Spec) + return } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeFeature. @@ -325,6 +400,111 @@ func (in *NodeFeature) DeepCopyObject() runtime.Object { return nil } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeFeatureGroup) DeepCopyInto(out *NodeFeatureGroup) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeFeatureGroup. +func (in *NodeFeatureGroup) DeepCopy() *NodeFeatureGroup { + if in == nil { + return nil + } + out := new(NodeFeatureGroup) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *NodeFeatureGroup) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeFeatureGroupList) DeepCopyInto(out *NodeFeatureGroupList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]NodeFeatureGroup, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeFeatureGroupList. +func (in *NodeFeatureGroupList) DeepCopy() *NodeFeatureGroupList { + if in == nil { + return nil + } + out := new(NodeFeatureGroupList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *NodeFeatureGroupList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeFeatureGroupSpec) DeepCopyInto(out *NodeFeatureGroupSpec) { + *out = *in + if in.Rules != nil { + in, out := &in.Rules, &out.Rules + *out = make([]GroupRule, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeFeatureGroupSpec. +func (in *NodeFeatureGroupSpec) DeepCopy() *NodeFeatureGroupSpec { + if in == nil { + return nil + } + out := new(NodeFeatureGroupSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *NodeFeatureGroupStatus) DeepCopyInto(out *NodeFeatureGroupStatus) { + *out = *in + if in.Nodes != nil { + in, out := &in.Nodes, &out.Nodes + *out = make([]FeatureGroupNode, len(*in)) + copy(*out, *in) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeFeatureGroupStatus. +func (in *NodeFeatureGroupStatus) DeepCopy() *NodeFeatureGroupStatus { + if in == nil { + return nil + } + out := new(NodeFeatureGroupStatus) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *NodeFeatureList) DeepCopyInto(out *NodeFeatureList) { *out = *in @@ -337,6 +517,7 @@ func (in *NodeFeatureList) DeepCopyInto(out *NodeFeatureList) { (*in)[i].DeepCopyInto(&(*out)[i]) } } + return } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeFeatureList. @@ -363,6 +544,7 @@ func (in *NodeFeatureRule) DeepCopyInto(out *NodeFeatureRule) { out.TypeMeta = in.TypeMeta in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) in.Spec.DeepCopyInto(&out.Spec) + return } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeFeatureRule. @@ -395,6 +577,7 @@ func (in *NodeFeatureRuleList) DeepCopyInto(out *NodeFeatureRuleList) { (*in)[i].DeepCopyInto(&(*out)[i]) } } + return } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeFeatureRuleList. @@ -425,6 +608,7 @@ func (in *NodeFeatureRuleSpec) DeepCopyInto(out *NodeFeatureRuleSpec) { (*in)[i].DeepCopyInto(&(*out)[i]) } } + return } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeFeatureRuleSpec. @@ -448,6 +632,7 @@ func (in *NodeFeatureSpec) DeepCopyInto(out *NodeFeatureSpec) { (*out)[key] = val } } + return } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeFeatureSpec. @@ -512,6 +697,7 @@ func (in *Rule) DeepCopyInto(out *Rule) { (*in)[i].DeepCopyInto(&(*out)[i]) } } + return } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Rule.