package example import ( "context" v1 "k8s.io/api/core/v1" "sigs.k8s.io/controller-runtime/pkg/client" v1ien "edge-infra.dev/pkg/sds/ien/k8s/apis/v1" "edge-infra.dev/pkg/k8s/runtime/controller/reconcile" "edge-infra.dev/pkg/sds/ien/k8s/controllers/nodeagent/config" ) type IENodeExample struct{} func (p IENodeExample) Reconcile(_ context.Context, _ *v1ien.IENode, _ config.Config) (reconcile.Result, error) { // Do stuff with IENode CR return reconcile.ResultSuccess, nil } type SecretExample struct{} func (p SecretExample) Reconcile(_ context.Context, _ client.Object, _ config.Config) error { // Do stuff with Secret return nil } type ConfigMapExample struct{} func (p ConfigMapExample) Reconcile(_ context.Context, _ client.Object, _ config.Config) error { // Do stuff with ConfigMap return nil } type CheckForHostIENExample struct{} // Example plugin that only continues to reconcile if there is an IEN present on the host node func (p CheckForHostIENExample) Reconcile(_ context.Context, _ *v1.Secret, _ config.Config) error { // Do stuff with plugin return nil } type NodeFirewallExample struct{} func (p NodeFirewallExample) Reconcile(_ context.Context, _ client.Object, _ config.Config) error { // Do stuff with plugin return nil }