func (r *LogStorageReconciler) SetupWithManager(mgr ctrl.Manager, opts options.AddOptions) error {
	return logstorage.Add(mgr, opts)
}
+kubebuilder:rbac:groups=operator.tigera.io,resources=logstorages,verbs=get;list;watch;create;update;patch;delete
+kubebuilder:rbac:groups=operator.tigera.io,resources=logstorages/status,verbs=get;update;patch
func (r *LogStorageReconciler) Reconcile(req ctrl.Request) (ctrl.Result, error) {
_ = context.Background()
_ = r.Log.WithValues("logstorage", req.NamespacedName)

// your logic here

return ctrl.Result{}, nil
}
package controllers
import (
	"github.com/go-logr/logr"
	"k8s.io/apimachinery/pkg/runtime"
	ctrl "sigs.k8s.io/controller-runtime"
	"sigs.k8s.io/controller-runtime/pkg/client"
	"github.com/tigera/operator/pkg/controller/logstorage"
	"github.com/tigera/operator/pkg/controller/options"
)
type LogStorageReconciler struct {
	client.Client
	Log    logr.Logger
	Scheme *runtime.Scheme
}