Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix the bug of reinstallation #296

Merged
merged 1 commit into from
Jul 31, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions controllers/cluster_controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -115,12 +115,13 @@ func (r *ClusterReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ct
// status.installedCRDs true bool value will cause hwameistor crds not updated when upgrade,
// so we turn status.installedCRDS to false bool value here once spec generation changed.
// That will ensure hwameistor crds updating not missed when upgrading.
if r.ClusterSpecGeneration != newInstance.Generation && newInstance.Status.InstalledCRDS{
// Upgrade crd when operator restarts
if r.ClusterSpecGeneration == 0 && newInstance.Status.InstalledCRDS {
log.Infof("cached cluster spec generation:%v, gotten cluster generation: %v", r.ClusterSpecGeneration, newInstance.Generation)
log.Infof("going to set status.installedCRDS to false bool value")
newInstance.Status.InstalledCRDS = false
if err := r.Client.Status().Update(ctx, newInstance); err != nil {
log.Errorf("Update status err: %v", err)
log.Errorf("Update InstalledCRDS=false status err: %v", err)
return ctrl.Result{}, err
}
r.ClusterSpecGeneration = newInstance.Generation
Expand All @@ -134,7 +135,7 @@ func (r *ClusterReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ct
}
newInstance.Status.InstalledCRDS = true
if err := r.Client.Status().Update(ctx, newInstance); err != nil {
log.Errorf("Update status err: %v", err)
log.Errorf("Update InstalledCRDS=true status err: %v", err)
return ctrl.Result{}, err
}
return ctrl.Result{}, nil
Expand Down
2 changes: 2 additions & 0 deletions main.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ import (
"os"
"path"
"runtime"
"sigs.k8s.io/controller-runtime/pkg/client"
"strings"

// Import all Kubernetes client auth plugins (e.g. Azure, GCP, OIDC, etc.)
Expand Down Expand Up @@ -76,6 +77,7 @@ func main() {
kubeconfig.Set(ctrl.GetConfigOrDie())

mgr, err := ctrl.NewManager(kubeconfig.Get(), ctrl.Options{
ClientDisableCacheFor: []client.Object{&hwameistoroperatorv1alpha1.Cluster{}},
Scheme: scheme,
MetricsBindAddress: metricsAddr,
Port: 9443,
Expand Down
31 changes: 18 additions & 13 deletions pkg/install/admissioncontroller/admission_controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ package admissioncontroller
import (
"context"
"errors"
"k8s.io/apimachinery/pkg/runtime/schema"
"reflect"
"time"

Expand Down Expand Up @@ -115,17 +116,19 @@ var admissionController = appsv1.Deployment{
},
}

func SetAdmissionController(clusterInstance *hwameistoriov1alpha1.Cluster) {
admissionController.Namespace = clusterInstance.Spec.TargetNamespace
admissionController.OwnerReferences = append(admissionController.OwnerReferences, *metav1.NewControllerRef(clusterInstance, clusterInstance.GroupVersionKind()))
func SetAdmissionController(clusterInstance *hwameistoriov1alpha1.Cluster) *appsv1.Deployment {

resourceCreate := admissionController.DeepCopy()
resourceCreate.Namespace = clusterInstance.Spec.TargetNamespace
resourceCreate.OwnerReferences = append(resourceCreate.OwnerReferences, *metav1.NewControllerRef(clusterInstance, schema.FromAPIVersionAndKind("hwameistor.io/v1alpha1", "Cluster")))
replicas := getAdmissionControllerReplicasFromClusterInstance(clusterInstance)
admissionController.Spec.Replicas = &replicas
admissionController.Spec.Template.Spec.ServiceAccountName = clusterInstance.Spec.RBAC.ServiceAccountName
setAdmissionControllerContainers(clusterInstance)
resourceCreate.Spec.Replicas = &replicas
resourceCreate.Spec.Template.Spec.ServiceAccountName = clusterInstance.Spec.RBAC.ServiceAccountName
return setAdmissionControllerContainers(clusterInstance, resourceCreate)
}

func setAdmissionControllerContainers(clusterInstance *hwameistoriov1alpha1.Cluster) {
for i, container := range admissionController.Spec.Template.Spec.Containers {
func setAdmissionControllerContainers(clusterInstance *hwameistoriov1alpha1.Cluster, resourceCreate *appsv1.Deployment) *appsv1.Deployment {
for i, container := range resourceCreate.Spec.Template.Spec.Containers {
if container.Name == admissionControllerContainerName {
// container.Resources = *clusterInstance.Spec.AdmissionController.Controller.Resources
if resources := clusterInstance.Spec.AdmissionController.Controller.Resources; resources != nil {
Expand All @@ -152,8 +155,10 @@ func setAdmissionControllerContainers(clusterInstance *hwameistoriov1alpha1.Clus
},
}...)
}
admissionController.Spec.Template.Spec.Containers[i] = container
resourceCreate.Spec.Template.Spec.Containers[i] = container
}

return resourceCreate
}

func getAdmissionControllerContainerImageStringFromClusterInstance(clusterInstance *hwameistoriov1alpha1.Cluster) string {
Expand Down Expand Up @@ -207,21 +212,21 @@ func needOrNotToUpdateAdmissionController(cluster *hwameistoriov1alpha1.Cluster,

func (m *AdmissionControllerMaintainer) Ensure() (*hwameistoriov1alpha1.Cluster, error) {
newClusterInstance := m.ClusterInstance.DeepCopy()
SetAdmissionController(newClusterInstance)
resourceCreate := SetAdmissionController(newClusterInstance)

// ensure admission controller CA is generated
if err := m.ensureAdmissionCA(); err != nil {
log.WithError(err).Error("failed to ensure admission controller CA")
return newClusterInstance, err
}
key := types.NamespacedName{
Namespace: admissionController.Namespace,
Name: admissionController.Name,
Namespace: resourceCreate.Namespace,
Name: resourceCreate.Name,
}
var gottenAdmissionController appsv1.Deployment
if err := m.Client.Get(context.TODO(), key, &gottenAdmissionController); err != nil {
if apierrors.IsNotFound(err) {
if errCreate := m.Client.Create(context.TODO(), &admissionController); errCreate != nil {
if errCreate := m.Client.Create(context.TODO(), resourceCreate); errCreate != nil {
log.Errorf("Create AdmissionController err: %v", errCreate)
return newClusterInstance, errCreate
}
Expand Down
3 changes: 2 additions & 1 deletion pkg/install/admissioncontroller/service.go
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,8 @@ func (m *AdmissionControllerServiceMaintainer) Ensure() error {
var gottenService corev1.Service
if err := m.Client.Get(context.TODO(), key, &gottenService); err != nil {
if errors.IsNotFound(err) {
if errCreate := m.Client.Create(context.TODO(), &admissionControllerService); errCreate != nil {
resourceCreate := admissionControllerService.DeepCopy()
if errCreate := m.Client.Create(context.TODO(), resourceCreate); errCreate != nil {
log.Errorf("Create AdmissionController Service err: %v", err)
return errCreate
}
Expand Down
25 changes: 14 additions & 11 deletions pkg/install/apiserver/apiserver.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ package apiserver
import (
"context"
"errors"
"k8s.io/apimachinery/pkg/runtime/schema"
"reflect"
"strconv"

Expand Down Expand Up @@ -95,13 +96,14 @@ var apiServer = appsv1.Deployment{
},
}

func SetApiServer(clusterInstance *hwameistoriov1alpha1.Cluster) {
apiServer.Namespace = clusterInstance.Spec.TargetNamespace
apiServer.OwnerReferences = append(apiServer.OwnerReferences, *metav1.NewControllerRef(clusterInstance, clusterInstance.GroupVersionKind()))
func SetApiServer(clusterInstance *hwameistoriov1alpha1.Cluster) *appsv1.Deployment {
resourceCreate := apiServer.DeepCopy()
resourceCreate.Namespace = clusterInstance.Spec.TargetNamespace
resourceCreate.OwnerReferences = append(resourceCreate.OwnerReferences, *metav1.NewControllerRef(clusterInstance, schema.FromAPIVersionAndKind("hwameistor.io/v1alpha1", "Cluster")))
replicas := getApiserverReplicasFromClusterInstance(clusterInstance)
apiServer.Spec.Replicas = &replicas
apiServer.Spec.Template.Spec.ServiceAccountName = clusterInstance.Spec.RBAC.ServiceAccountName
for i, container := range apiServer.Spec.Template.Spec.Containers {
resourceCreate.Spec.Replicas = &replicas
resourceCreate.Spec.Template.Spec.ServiceAccountName = clusterInstance.Spec.RBAC.ServiceAccountName
for i, container := range resourceCreate.Spec.Template.Spec.Containers {
if container.Name == apiserverContainerName {
container.Image = getApiserverContainerImageStringFromClusterInstance(clusterInstance)
if resources := clusterInstance.Spec.ApiServer.Server.Resources; resources != nil {
Expand All @@ -122,8 +124,9 @@ func SetApiServer(clusterInstance *hwameistoriov1alpha1.Cluster) {
},
}...)
}
apiServer.Spec.Template.Spec.Containers[i] = container
resourceCreate.Spec.Template.Spec.Containers[i] = container
}
return resourceCreate
}

func getApiserverContainerImageStringFromClusterInstance(clusterInstance *hwameistoriov1alpha1.Cluster) string {
Expand Down Expand Up @@ -161,15 +164,15 @@ func needOrNotToUpdateApiserver(cluster *hwameistoriov1alpha1.Cluster, gottenApi

func (m *ApiServerMaintainer) Ensure() (*hwameistoriov1alpha1.Cluster, error) {
newClusterInstance := m.ClusterInstance.DeepCopy()
SetApiServer(newClusterInstance)
resourceCreate := SetApiServer(newClusterInstance)
key := types.NamespacedName{
Namespace: apiServer.Namespace,
Name: apiServer.Name,
Namespace: resourceCreate.Namespace,
Name: resourceCreate.Name,
}
var gotten appsv1.Deployment
if err := m.Client.Get(context.TODO(), key, &gotten); err != nil {
if apierrors.IsNotFound(err) {
if errCreate := m.Client.Create(context.TODO(), &apiServer); errCreate != nil {
if errCreate := m.Client.Create(context.TODO(), resourceCreate); errCreate != nil {
log.Errorf("Create ApiServer err: %v", errCreate)
return newClusterInstance, errCreate
}
Expand Down
3 changes: 2 additions & 1 deletion pkg/install/apiserver/apiserver_service.go
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,8 @@ func (m *ApiServerServiceMaintainer) Ensure() error {
var gottenService corev1.Service
if err := m.Client.Get(context.TODO(), key, &gottenService); err != nil {
if errors.IsNotFound(err) {
if errCreate := m.Client.Create(context.TODO(), &apiServerService); errCreate != nil {
resourceCreate := apiServerService.DeepCopy()
if errCreate := m.Client.Create(context.TODO(), resourceCreate); errCreate != nil {
log.Errorf("Create ApiServer Service err: %v", err)
return errCreate
}
Expand Down
3 changes: 2 additions & 1 deletion pkg/install/auditor/auditor.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ package auditor
import (
"context"
"errors"
"k8s.io/apimachinery/pkg/runtime/schema"
"reflect"

hwameistoriov1alpha1 "github.com/hwameistor/hwameistor-operator/api/v1alpha1"
Expand Down Expand Up @@ -102,7 +103,7 @@ func SetAuditor(clusterInstance *hwameistoriov1alpha1.Cluster) *appsv1.Deploymen
auditorToCreate := auditorTemplate.DeepCopy()

auditorToCreate.Namespace = clusterInstance.Spec.TargetNamespace
auditorToCreate.OwnerReferences = append(auditorToCreate.OwnerReferences, *metav1.NewControllerRef(clusterInstance, clusterInstance.GroupVersionKind()))
auditorToCreate.OwnerReferences = append(auditorToCreate.OwnerReferences, *metav1.NewControllerRef(clusterInstance, schema.FromAPIVersionAndKind("hwameistor.io/v1alpha1", "Cluster")))
replicas := getAuditorReplicasFromClusterInstance(clusterInstance)
auditorToCreate.Spec.Replicas = &replicas
auditorToCreate.Spec.Template.Spec.ServiceAccountName = clusterInstance.Spec.RBAC.ServiceAccountName
Expand Down
3 changes: 2 additions & 1 deletion pkg/install/dataloadmanager/dataloadmanager.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ import (
"k8s.io/apimachinery/pkg/api/errors"
apierrors "k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/types"
"k8s.io/apimachinery/pkg/util/intstr"
"reflect"
Expand Down Expand Up @@ -137,7 +138,7 @@ var dlmDaemonSetTemplate = appsv1.DaemonSet{

func SetDLMDaemonSet(clusterInstance *hwameistoriov1alpha1.Cluster) *appsv1.DaemonSet {
dlmDaemonSetToCreate := dlmDaemonSetTemplate.DeepCopy()
dlmDaemonSetToCreate.OwnerReferences = append(dlmDaemonSetToCreate.OwnerReferences, *metav1.NewControllerRef(clusterInstance, clusterInstance.GroupVersionKind()))
dlmDaemonSetToCreate.OwnerReferences = append(dlmDaemonSetToCreate.OwnerReferences, *metav1.NewControllerRef(clusterInstance, schema.FromAPIVersionAndKind("hwameistor.io/v1alpha1", "Cluster")))
dlmDaemonSetToCreate.Namespace = clusterInstance.Spec.TargetNamespace
dlmDaemonSetToCreate.Spec.Template.Spec.ServiceAccountName = clusterInstance.Spec.RBAC.ServiceAccountName
dlmDaemonSetToCreate = setDLMDaemonSetContainers(clusterInstance, dlmDaemonSetToCreate)
Expand Down
3 changes: 2 additions & 1 deletion pkg/install/datasetmanager/datasetmanager.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import (
"k8s.io/apimachinery/pkg/api/errors"
apierrors "k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/types"
"sigs.k8s.io/controller-runtime/pkg/client"
)
Expand Down Expand Up @@ -80,7 +81,7 @@ func int64Ptr(i int64) *int64 { return &i }

func SetDSMDeployment(clusterInstance *hwameistoriov1alpha1.Cluster) *appsv1.Deployment {
dsmDeploymentToCreate := dsmDeploymentTemplate.DeepCopy()
dsmDeploymentToCreate.OwnerReferences = append(dsmDeploymentToCreate.OwnerReferences, *metav1.NewControllerRef(clusterInstance, clusterInstance.GroupVersionKind()))
dsmDeploymentToCreate.OwnerReferences = append(dsmDeploymentToCreate.OwnerReferences, *metav1.NewControllerRef(clusterInstance, schema.FromAPIVersionAndKind("hwameistor.io/v1alpha1", "Cluster")))
dsmDeploymentToCreate.Namespace = clusterInstance.Spec.TargetNamespace
dsmDeploymentToCreate.Spec.Template.Spec.ServiceAccountName = clusterInstance.Spec.RBAC.ServiceAccountName
dsmDeploymentToCreate = setdsmDeploymentContainers(clusterInstance, dsmDeploymentToCreate)
Expand Down
6 changes: 4 additions & 2 deletions pkg/install/evictor/evictor.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ package evictor
import (
"context"
"errors"
"k8s.io/apimachinery/pkg/runtime/schema"
"reflect"

hwameistoriov1alpha1 "github.com/hwameistor/hwameistor-operator/api/v1alpha1"
Expand Down Expand Up @@ -73,7 +74,7 @@ var evictorDeployment = appsv1.Deployment{

func SetEvictor(clusterInstance *hwameistoriov1alpha1.Cluster) {
evictorDeployment.Namespace = clusterInstance.Spec.TargetNamespace
evictorDeployment.OwnerReferences = append(evictorDeployment.OwnerReferences, *metav1.NewControllerRef(clusterInstance, clusterInstance.GroupVersionKind()))
evictorDeployment.OwnerReferences = append(evictorDeployment.OwnerReferences, *metav1.NewControllerRef(clusterInstance, schema.FromAPIVersionAndKind("hwameistor.io/v1alpha1", "Cluster")))
replicas := getEvictorReplicasFromClusterInstance(clusterInstance)
evictorDeployment.Spec.Replicas = &replicas
evictorDeployment.Spec.Template.Spec.ServiceAccountName = clusterInstance.Spec.RBAC.ServiceAccountName
Expand Down Expand Up @@ -152,7 +153,8 @@ func (m *EvictorMaintainer) Ensure() (*hwameistoriov1alpha1.Cluster, error) {
var gotten appsv1.Deployment
if err := m.Client.Get(context.TODO(), key, &gotten); err != nil {
if apierrors.IsNotFound(err) {
if errCreate := m.Client.Create(context.TODO(), &evictorDeployment); errCreate != nil {
resourceCreate := evictorDeployment.DeepCopy()
if errCreate := m.Client.Create(context.TODO(), resourceCreate); errCreate != nil {
log.Errorf("Create Evictor err: %v", errCreate)
return newClusterInstance, errCreate
}
Expand Down
6 changes: 4 additions & 2 deletions pkg/install/exporter/exporter.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ package exporter
import (
"context"
"errors"
"k8s.io/apimachinery/pkg/runtime/schema"
"reflect"

hwameistoriov1alpha1 "github.com/hwameistor/hwameistor-operator/api/v1alpha1"
Expand Down Expand Up @@ -88,7 +89,7 @@ var exporter = appsv1.Deployment{

func SetExporter(clusterInstance *hwameistoriov1alpha1.Cluster) {
exporter.Namespace = clusterInstance.Spec.TargetNamespace
exporter.OwnerReferences = append(exporter.OwnerReferences, *metav1.NewControllerRef(clusterInstance, clusterInstance.GroupVersionKind()))
exporter.OwnerReferences = append(exporter.OwnerReferences, *metav1.NewControllerRef(clusterInstance, schema.FromAPIVersionAndKind("hwameistor.io/v1alpha1", "Cluster")))
replicas := getExporterReplicasFromClusterInstance(clusterInstance)
exporter.Spec.Replicas = &replicas
exporter.Spec.Template.Spec.ServiceAccountName = clusterInstance.Spec.RBAC.ServiceAccountName
Expand Down Expand Up @@ -146,7 +147,8 @@ func (m *ExporterMaintainer) Ensure() (*hwameistoriov1alpha1.Cluster, error) {
var gotten appsv1.Deployment
if err := m.Client.Get(context.TODO(), key, &gotten); err != nil {
if apierrors.IsNotFound(err) {
if errCreate := m.Client.Create(context.TODO(), &exporter); errCreate != nil {
resourceCreate := exporter.DeepCopy()
if errCreate := m.Client.Create(context.TODO(), resourceCreate); errCreate != nil {
log.Errorf("Create Exporter err: %v", errCreate)
return newClusterInstance, errCreate
}
Expand Down
3 changes: 2 additions & 1 deletion pkg/install/exporter/exporter_service.go
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,8 @@ func (m *ExporterServiceMaintainer) Ensure() error {
var gottenService corev1.Service
if err := m.Client.Get(context.TODO(), key, &gottenService); err != nil {
if errors.IsNotFound(err) {
if errCreate := m.Client.Create(context.TODO(), &exporterService); errCreate != nil {
resourceCreate := exporterService.DeepCopy()
if errCreate := m.Client.Create(context.TODO(), resourceCreate); errCreate != nil {
log.Errorf("Create Exporter Service err: %v", err)
return errCreate
}
Expand Down
3 changes: 2 additions & 1 deletion pkg/install/failoverassistant/failover_assistant.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ package failoverassistant
import (
"context"
"errors"
"k8s.io/apimachinery/pkg/runtime/schema"
"reflect"

hwameistoriov1alpha1 "github.com/hwameistor/hwameistor-operator/api/v1alpha1"
Expand Down Expand Up @@ -102,7 +103,7 @@ func SetFailoverAssistant(clusterInstance *hwameistoriov1alpha1.Cluster) *appsv1
deployToCreate := failoverAssistantTemplate.DeepCopy()

deployToCreate.Namespace = clusterInstance.Spec.TargetNamespace
deployToCreate.OwnerReferences = append(deployToCreate.OwnerReferences, *metav1.NewControllerRef(clusterInstance, clusterInstance.GroupVersionKind()))
deployToCreate.OwnerReferences = append(deployToCreate.OwnerReferences, *metav1.NewControllerRef(clusterInstance, schema.FromAPIVersionAndKind("hwameistor.io/v1alpha1", "Cluster")))
replicas := getFailoverAssistantReplicasFromClusterInstance(clusterInstance)
deployToCreate.Spec.Replicas = &replicas
deployToCreate.Spec.Template.Spec.ServiceAccountName = clusterInstance.Spec.RBAC.ServiceAccountName
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ package ldmcsicontroller
import (
"context"
"errors"
"k8s.io/apimachinery/pkg/runtime/schema"
"reflect"

hwameistoriov1alpha1 "github.com/hwameistor/hwameistor-operator/api/v1alpha1"
Expand Down Expand Up @@ -133,7 +134,7 @@ var ldmCSIController = appsv1.Deployment{
func SetLDMCSIController(clusterInstance *hwameistoriov1alpha1.Cluster) *appsv1.Deployment {
ldmCSIControllerToCreate := ldmCSIController.DeepCopy()
ldmCSIControllerToCreate.Namespace = clusterInstance.Spec.TargetNamespace
ldmCSIControllerToCreate.OwnerReferences = append(ldmCSIControllerToCreate.OwnerReferences, *metav1.NewControllerRef(clusterInstance, clusterInstance.GroupVersionKind()))
ldmCSIControllerToCreate.OwnerReferences = append(ldmCSIControllerToCreate.OwnerReferences, *metav1.NewControllerRef(clusterInstance, schema.FromAPIVersionAndKind("hwameistor.io/v1alpha1", "Cluster")))
// ldmCSIController.Spec.Template.Spec.PriorityClassName = clusterInstance.Spec.LocalDiskManager.CSI.Controller.Common.PriorityClassName
replicas := getReplicasFromClusterInstance(clusterInstance)
ldmCSIControllerToCreate.Spec.Replicas = &replicas
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ package localdiskactioncontroller
import (
"context"
"errors"
"k8s.io/apimachinery/pkg/runtime/schema"
"reflect"

hwameistoriov1alpha1 "github.com/hwameistor/hwameistor-operator/api/v1alpha1"
Expand Down Expand Up @@ -101,7 +102,7 @@ func SetActionController(clusterInstance *hwameistoriov1alpha1.Cluster) *appsv1.
deployToCreate := deployTemplate.DeepCopy()

deployToCreate.Namespace = clusterInstance.Spec.TargetNamespace
deployToCreate.OwnerReferences = append(deployToCreate.OwnerReferences, *metav1.NewControllerRef(clusterInstance, clusterInstance.GroupVersionKind()))
deployToCreate.OwnerReferences = append(deployToCreate.OwnerReferences, *metav1.NewControllerRef(clusterInstance, schema.FromAPIVersionAndKind("hwameistor.io/v1alpha1", "Cluster")))
deployToCreate.Spec.Template.Spec.ServiceAccountName = clusterInstance.Spec.RBAC.ServiceAccountName
for i, container := range deployToCreate.Spec.Template.Spec.Containers {
if container.Name == ldaContainerName {
Expand Down
3 changes: 2 additions & 1 deletion pkg/install/localdiskmanager/localdiskmanager.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package localdiskmanager

import (
"context"
"k8s.io/apimachinery/pkg/runtime/schema"
"reflect"

hwameistoriov1alpha1 "github.com/hwameistor/hwameistor-operator/api/v1alpha1"
Expand Down Expand Up @@ -223,7 +224,7 @@ var ldmDaemonSet = appsv1.DaemonSet{
func SetLDMDaemonSet(clusterInstance *hwameistoriov1alpha1.Cluster) *appsv1.DaemonSet {
ldmDaemonSetToCreate := ldmDaemonSet.DeepCopy()

ldmDaemonSetToCreate.OwnerReferences = append(ldmDaemonSetToCreate.OwnerReferences, *metav1.NewControllerRef(clusterInstance, clusterInstance.GroupVersionKind()))
ldmDaemonSetToCreate.OwnerReferences = append(ldmDaemonSetToCreate.OwnerReferences, *metav1.NewControllerRef(clusterInstance, schema.FromAPIVersionAndKind("hwameistor.io/v1alpha1", "Cluster")))
ldmDaemonSetToCreate.Namespace = clusterInstance.Spec.TargetNamespace

newClusterInstance := clusterInstance.DeepCopy()
Expand Down
Loading
Loading