This is an automated email from the ASF dual-hosted git repository.

vongosling pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/rocketmq-operator.git


The following commit(s) were added to refs/heads/master by this push:
     new 58166ba  [ISSUE #23] Support for creating multiple brokerClusters with 
different names (#24)
58166ba is described below

commit 58166ba1049a7f222a7d9b19ec632fcf3468b961
Author: jiangzhihui <[email protected]>
AuthorDate: Wed Jul 22 10:10:19 2020 +0800

    [ISSUE #23] Support for creating multiple brokerClusters with different 
names (#24)
---
 pkg/controller/broker/broker_controller.go | 37 ++++++++++++------------------
 1 file changed, 15 insertions(+), 22 deletions(-)

diff --git a/pkg/controller/broker/broker_controller.go 
b/pkg/controller/broker/broker_controller.go
index 6780b86..b3e6cf6 100644
--- a/pkg/controller/broker/broker_controller.go
+++ b/pkg/controller/broker/broker_controller.go
@@ -131,7 +131,7 @@ func (r *ReconcileBroker) Reconcile(request 
reconcile.Request) (reconcile.Result
                return reconcile.Result{}, err
        }
 
-       if isInitial {
+       if broker.Status.Size == 0 {
                share.GroupNum = broker.Spec.Size
        } else {
                share.GroupNum = broker.Status.Size
@@ -234,34 +234,27 @@ func (r *ReconcileBroker) Reconcile(request 
reconcile.Request) (reconcile.Result
        podNames := getPodNames(podList.Items)
        log.Info("broker.Status.Nodes length = " + 
strconv.Itoa(len(broker.Status.Nodes)))
        log.Info("podNames length = " + strconv.Itoa(len(podNames)))
-       // Ensure every pod is in running phase, then change the isInitial 
state to false
-       notReady := false
+       // Ensure every pod is in running phase
        for _, pod := range podList.Items {
                if !reflect.DeepEqual(pod.Status.Phase, corev1.PodRunning) {
                        log.Info("pod " + pod.Name + " phase is " + 
string(pod.Status.Phase) + ", wait for a moment...")
-                       notReady = true
                }
        }
-       if !notReady {
-               isInitial = false
-       }
 
-       if !isInitial {
-               if broker.Spec.Size != broker.Status.Size {
-                       // Get the metadata including subscriptionGroup.json 
and topics.json from scale source pod
-                       k8s, err := tool.NewK8sClient()
-                       if err != nil {
-                               log.Error(err, "Error occurred while getting 
K8s Client")
-                       }
-                       sourcePodName := broker.Spec.ScalePodName
-                       topicsCommand := 
getCopyMetadataJsonCommand(cons.TopicJsonDir, sourcePodName, broker.Namespace, 
k8s)
-                       log.Info("topicsCommand: " + topicsCommand)
-                       subscriptionGroupCommand := 
getCopyMetadataJsonCommand(cons.SubscriptionGroupJsonDir, sourcePodName, 
broker.Namespace, k8s)
-                       log.Info("subscriptionGroupCommand: " + 
subscriptionGroupCommand)
-                       MakeConfigDirCommand := "mkdir -p " + 
cons.StoreConfigDir
-                       ChmodDirCommand := "chmod a+rw " + cons.StoreConfigDir
-                       cmd = []string{"/bin/bash", "-c", MakeConfigDirCommand 
+ " && " + ChmodDirCommand + " && " + topicsCommand + " && " + 
subscriptionGroupCommand}
+       if broker.Status.Size != 0 && broker.Spec.Size > broker.Status.Size {
+               // Get the metadata including subscriptionGroup.json and 
topics.json from scale source pod
+               k8s, err := tool.NewK8sClient()
+               if err != nil {
+                       log.Error(err, "Error occurred while getting K8s 
Client")
                }
+               sourcePodName := broker.Spec.ScalePodName
+               topicsCommand := getCopyMetadataJsonCommand(cons.TopicJsonDir, 
sourcePodName, broker.Namespace, k8s)
+               log.Info("topicsCommand: " + topicsCommand)
+               subscriptionGroupCommand := 
getCopyMetadataJsonCommand(cons.SubscriptionGroupJsonDir, sourcePodName, 
broker.Namespace, k8s)
+               log.Info("subscriptionGroupCommand: " + 
subscriptionGroupCommand)
+               MakeConfigDirCommand := "mkdir -p " + cons.StoreConfigDir
+               ChmodDirCommand := "chmod a+rw " + cons.StoreConfigDir
+               cmd = []string{"/bin/bash", "-c", MakeConfigDirCommand + " && " 
+ ChmodDirCommand + " && " + topicsCommand + " && " + subscriptionGroupCommand}
        }
 
        // Update status.Size if needed

Reply via email to