You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by du...@apache.org on 2022/03/28 10:54:31 UTC

[rocketmq-operator] branch master updated: add imagePullSecret for Broker/Nameservice/Console

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

duhengforever 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 573ea1b  add imagePullSecret for Broker/Nameservice/Console
     new 58ae93f  Merge pull request #90 from StevenLeiZhang/fix-imagesecret
573ea1b is described below

commit 573ea1b43e8e9c97ef91b6d03f6feae29428362e
Author: StevenLeiZhang <zh...@163.com>
AuthorDate: Tue Feb 15 14:16:43 2022 +0800

    add imagePullSecret for Broker/Nameservice/Console
    
    Signed-off-by: StevenLeiZhang <zh...@163.com>
---
 deploy/crds/rocketmq_v1alpha1_broker_crd.yaml        |  5 +++++
 deploy/crds/rocketmq_v1alpha1_nameservice_crd.yaml   |  5 +++++
 pkg/apis/rocketmq/v1alpha1/broker_types.go           |  2 ++
 pkg/apis/rocketmq/v1alpha1/nameservice_types.go      |  2 ++
 pkg/controller/broker/broker_controller.go           |  1 +
 pkg/controller/console/console_controller.go         | 11 ++++++-----
 pkg/controller/nameservice/nameservice_controller.go |  5 +++--
 7 files changed, 24 insertions(+), 7 deletions(-)

diff --git a/deploy/crds/rocketmq_v1alpha1_broker_crd.yaml b/deploy/crds/rocketmq_v1alpha1_broker_crd.yaml
index 35569e0..75d7fdd 100644
--- a/deploy/crds/rocketmq_v1alpha1_broker_crd.yaml
+++ b/deploy/crds/rocketmq_v1alpha1_broker_crd.yaml
@@ -56,6 +56,11 @@ spec:
             imagePullPolicy:
               description: ImagePullPolicy defines how the image is pulled
               type: string
+            imagePullSecrets:
+              description: The secrets used to pull image from private registry
+              items:
+                type: object
+              type: array
             nameServers:
               description: NameServers defines the name service list e.g. 192.168.1.1:9876;192.168.1.2:9876
               type: string
diff --git a/deploy/crds/rocketmq_v1alpha1_nameservice_crd.yaml b/deploy/crds/rocketmq_v1alpha1_nameservice_crd.yaml
index 3946b03..6a90d5a 100644
--- a/deploy/crds/rocketmq_v1alpha1_nameservice_crd.yaml
+++ b/deploy/crds/rocketmq_v1alpha1_nameservice_crd.yaml
@@ -56,6 +56,11 @@ spec:
             imagePullPolicy:
               description: ImagePullPolicy defines how the image is pulled.
               type: string
+            imagePullSecrets:
+              description: The secrets used to pull image from private registry
+              items:
+                type: object
+              type: array
             nameServiceImage:
               description: NameServiceImage is the name service image
               type: string
diff --git a/pkg/apis/rocketmq/v1alpha1/broker_types.go b/pkg/apis/rocketmq/v1alpha1/broker_types.go
index 54636ae..cf05f65 100644
--- a/pkg/apis/rocketmq/v1alpha1/broker_types.go
+++ b/pkg/apis/rocketmq/v1alpha1/broker_types.go
@@ -60,6 +60,8 @@ type BrokerSpec struct {
 	PodSecurityContext *corev1.PodSecurityContext `json:"securityContext,omitempty"`
 	// Container Security Context
 	ContainerSecurityContext *corev1.SecurityContext `json:"containerSecurityContext,omitempty"`
+	// The secrets used to pull image from private registry
+	ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"`
 }
 
 // BrokerStatus defines the observed state of Broker
diff --git a/pkg/apis/rocketmq/v1alpha1/nameservice_types.go b/pkg/apis/rocketmq/v1alpha1/nameservice_types.go
index 82e71bc..ce62b75 100644
--- a/pkg/apis/rocketmq/v1alpha1/nameservice_types.go
+++ b/pkg/apis/rocketmq/v1alpha1/nameservice_types.go
@@ -53,6 +53,8 @@ type NameServiceSpec struct {
 	PodSecurityContext *corev1.PodSecurityContext `json:"securityContext,omitempty"`
 	// Container Security Context
 	ContainerSecurityContext *corev1.SecurityContext `json:"containerSecurityContext,omitempty"`
+	// The secrets used to pull image from private registry
+	ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"`
 }
 
 // NameServiceStatus defines the observed state of NameService
diff --git a/pkg/controller/broker/broker_controller.go b/pkg/controller/broker/broker_controller.go
index 6de86a3..c253550 100644
--- a/pkg/controller/broker/broker_controller.go
+++ b/pkg/controller/broker/broker_controller.go
@@ -414,6 +414,7 @@ func (r *ReconcileBroker) getBrokerStatefulSet(broker *rocketmqv1alpha1.Broker,
 					Labels: ls,
 				},
 				Spec: corev1.PodSpec{
+					ImagePullSecrets: broker.Spec.ImagePullSecrets,
 					Containers: []corev1.Container{{
 						Resources: broker.Spec.Resources,
 						Image:     broker.Spec.BrokerImage,
diff --git a/pkg/controller/console/console_controller.go b/pkg/controller/console/console_controller.go
index 3044d6f..de9dc36 100644
--- a/pkg/controller/console/console_controller.go
+++ b/pkg/controller/console/console_controller.go
@@ -199,13 +199,14 @@ func newDeploymentForCR(cr *rocketmqv1alpha1.Console) *appsv1.Deployment {
 					Labels: cr.Spec.ConsoleDeployment.Spec.Template.ObjectMeta.Labels,
 				},
 				Spec: corev1.PodSpec{
+					ImagePullSecrets: cr.Spec.ConsoleDeployment.Spec.Template.Spec.ImagePullSecrets,
 					Containers: []corev1.Container{{
-						Resources: cr.Spec.ConsoleDeployment.Spec.Template.Spec.Containers[0].Resources,
-						Image: cr.Spec.ConsoleDeployment.Spec.Template.Spec.Containers[0].Image,
-						Name:  cr.Spec.ConsoleDeployment.Spec.Template.Spec.Containers[0].Name,
+						Resources:       cr.Spec.ConsoleDeployment.Spec.Template.Spec.Containers[0].Resources,
+						Image:           cr.Spec.ConsoleDeployment.Spec.Template.Spec.Containers[0].Image,
+						Name:            cr.Spec.ConsoleDeployment.Spec.Template.Spec.Containers[0].Name,
 						ImagePullPolicy: cr.Spec.ConsoleDeployment.Spec.Template.Spec.Containers[0].ImagePullPolicy,
-						Env: append(cr.Spec.ConsoleDeployment.Spec.Template.Spec.Containers[0].Env, env),
-						Ports: cr.Spec.ConsoleDeployment.Spec.Template.Spec.Containers[0].Ports,
+						Env:             append(cr.Spec.ConsoleDeployment.Spec.Template.Spec.Containers[0].Env, env),
+						Ports:           cr.Spec.ConsoleDeployment.Spec.Template.Spec.Containers[0].Ports,
 					}},
 				},
 			},
diff --git a/pkg/controller/nameservice/nameservice_controller.go b/pkg/controller/nameservice/nameservice_controller.go
index 573df0f..2df945d 100644
--- a/pkg/controller/nameservice/nameservice_controller.go
+++ b/pkg/controller/nameservice/nameservice_controller.go
@@ -338,8 +338,9 @@ func (r *ReconcileNameService) statefulSetForNameService(nameService *rocketmqv1
 					Labels: ls,
 				},
 				Spec: corev1.PodSpec{
-					HostNetwork: nameService.Spec.HostNetwork,
-					DNSPolicy:   nameService.Spec.DNSPolicy,
+					HostNetwork:      nameService.Spec.HostNetwork,
+					DNSPolicy:        nameService.Spec.DNSPolicy,
+					ImagePullSecrets: nameService.Spec.ImagePullSecrets,
 					Containers: []corev1.Container{{
 						Resources: nameService.Spec.Resources,
 						Image:     nameService.Spec.NameServiceImage,