Skip to content

Commit 1535221

Browse files
committed
webhooks: make SGX mutator registration to follow other webhooks
Signed-off-by: Mikko Ylinen <[email protected]>
1 parent eda526a commit 1535221

File tree

3 files changed

+10
-12
lines changed

3 files changed

+10
-12
lines changed

cmd/operator/main.go

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ import (
2121
"os"
2222
"strings"
2323

24-
corev1 "k8s.io/api/core/v1"
2524
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2625
"k8s.io/apimachinery/pkg/runtime"
2726
clientgoscheme "k8s.io/client-go/kubernetes/scheme"
@@ -44,7 +43,6 @@ import (
4443
"github.com/intel/intel-device-plugins-for-kubernetes/pkg/fpgacontroller"
4544
"github.com/intel/intel-device-plugins-for-kubernetes/pkg/fpgacontroller/patcher"
4645
sgxwebhook "github.com/intel/intel-device-plugins-for-kubernetes/pkg/webhooks/sgx"
47-
"sigs.k8s.io/controller-runtime/pkg/builder"
4846
)
4947

5048
var (
@@ -176,10 +174,7 @@ func main() {
176174
}
177175

178176
if contains(devices, "sgx") {
179-
if err = builder.WebhookManagedBy(mgr).
180-
For(&corev1.Pod{}).
181-
WithDefaulter(&sgxwebhook.Mutator{}).
182-
Complete(); err != nil {
177+
if err = (&sgxwebhook.Mutator{}).SetupWebhookWithManager(mgr); err != nil {
183178
setupLog.Error(err, "unable to create webhook", "webhook", "Pod")
184179
os.Exit(1)
185180
}

cmd/sgx_admissionwebhook/main.go

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,8 @@ import (
2020
"os"
2121

2222
sgxwebhook "github.com/intel/intel-device-plugins-for-kubernetes/pkg/webhooks/sgx"
23-
corev1 "k8s.io/api/core/v1"
2423
"k8s.io/klog/v2/textlogger"
2524
ctrl "sigs.k8s.io/controller-runtime"
26-
"sigs.k8s.io/controller-runtime/pkg/builder"
2725
metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
2826
"sigs.k8s.io/controller-runtime/pkg/webhook"
2927
)
@@ -59,10 +57,7 @@ func main() {
5957
os.Exit(1)
6058
}
6159

62-
if err := builder.WebhookManagedBy(mgr).
63-
For(&corev1.Pod{}).
64-
WithDefaulter(&sgxwebhook.Mutator{}).
65-
Complete(); err != nil {
60+
if err := (&sgxwebhook.Mutator{}).SetupWebhookWithManager(mgr); err != nil {
6661
setupLog.Error(err, "unable to create webhook", "webhook", "Pod")
6762
os.Exit(1)
6863
}

pkg/webhooks/sgx/sgx.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import (
2222
corev1 "k8s.io/api/core/v1"
2323
"k8s.io/apimachinery/pkg/api/resource"
2424
"k8s.io/apimachinery/pkg/runtime"
25+
ctrl "sigs.k8s.io/controller-runtime"
2526
logf "sigs.k8s.io/controller-runtime/pkg/log"
2627

2728
"github.com/intel/intel-device-plugins-for-kubernetes/pkg/internal/containers"
@@ -34,6 +35,13 @@ var ErrObjectType = errors.New("invalid runtime object type")
3435
// Mutator annotates Pods.
3536
type Mutator struct{}
3637

38+
func (s *Mutator) SetupWebhookWithManager(mgr ctrl.Manager) error {
39+
return ctrl.NewWebhookManagedBy(mgr).
40+
For(&corev1.Pod{}).
41+
WithDefaulter(s).
42+
Complete()
43+
}
44+
3745
const (
3846
namespace = "sgx.intel.com"
3947
encl = namespace + "/enclave"

0 commit comments

Comments
 (0)