@@ -12,6 +12,7 @@ package resource
12
12
import (
13
13
"bytes"
14
14
"fmt"
15
+
15
16
"sigs.k8s.io/controller-runtime/pkg/controller/controllerutil"
16
17
17
18
rabbitmqv1beta1 "github.com/rabbitmq/cluster-operator/api/v1beta1"
@@ -38,33 +39,34 @@ func (builder *RabbitmqResourceBuilder) AdminSecret() *AdminSecretBuilder {
38
39
}
39
40
}
40
41
41
- func generateDefaultUserConf(username, password string) ([]byte, error) {
42
-
43
- ini.PrettySection = false // Remove trailing new line because default_user.conf has only a default section.
44
- cfg, err := ini.Load([]byte{})
42
+ func (builder *AdminSecretBuilder) Build() (runtime.Object, error) {
43
+ username, err := randomEncodedString(24)
45
44
if err != nil {
46
45
return nil, err
47
46
}
48
- defaultSection := cfg.Section("")
49
-
50
- if _, err := defaultSection.NewKey("default_user", username); err != nil {
51
- return nil, err
52
- }
53
47
54
- if _, err := defaultSection.NewKey("default_pass", password); err != nil {
48
+ password, err := randomEncodedString(24)
49
+ if err != nil {
55
50
return nil, err
56
51
}
57
52
58
- var userConfBuffer bytes.Buffer
59
- if _, err := cfg.WriteTo(&userConfBuffer); err != nil {
53
+ defaultUserConf, err := generateDefaultUserConf(username, password)
54
+ if err != nil {
60
55
return nil, err
61
56
}
62
57
63
- return userConfBuffer.Bytes(), nil
64
- }
65
-
66
- func (builder *AdminSecretBuilder) UpdateRequiresStsRestart() bool {
67
- return false
58
+ return &corev1.Secret{
59
+ ObjectMeta: metav1.ObjectMeta{
60
+ Name: builder.Instance.ChildResourceName(AdminSecretName),
61
+ Namespace: builder.Instance.Namespace,
62
+ },
63
+ Type: corev1.SecretTypeOpaque,
64
+ Data: map[string][]byte{
65
+ "username": []byte(username),
66
+ "password": []byte(password),
67
+ "default_user.conf": defaultUserConf,
68
+ },
69
+ }, nil
68
70
}
69
71
70
72
func (builder *AdminSecretBuilder) Update(object runtime.Object) error {
@@ -79,32 +81,30 @@ func (builder *AdminSecretBuilder) Update(object runtime.Object) error {
79
81
return nil
80
82
}
81
83
82
- func (builder *AdminSecretBuilder) Build() (runtime.Object, error) {
83
- username, err := randomEncodedString(24)
84
+ func (builder *AdminSecretBuilder) UpdateRequiresStsRestart() bool {
85
+ return false
86
+ }
87
+
88
+ func generateDefaultUserConf(username, password string) ([]byte, error) {
89
+ ini.PrettySection = false // Remove trailing new line because default_user.conf has only a default section.
90
+ cfg, err := ini.Load([]byte{})
84
91
if err != nil {
85
92
return nil, err
86
93
}
94
+ defaultSection := cfg.Section("")
87
95
88
- password, err := randomEncodedString(24)
89
- if err != nil {
96
+ if _, err := defaultSection.NewKey("default_user", username); err != nil {
90
97
return nil, err
91
98
}
92
99
93
- defaultUserConf, err := generateDefaultUserConf(username, password)
94
- if err != nil {
100
+ if _, err := defaultSection.NewKey("default_pass", password); err != nil {
95
101
return nil, err
96
102
}
97
103
98
- return &corev1.Secret{
99
- ObjectMeta: metav1.ObjectMeta{
100
- Name: builder.Instance.ChildResourceName(AdminSecretName),
101
- Namespace: builder.Instance.Namespace,
102
- },
103
- Type: corev1.SecretTypeOpaque,
104
- Data: map[string][]byte{
105
- "username": []byte(username),
106
- "password": []byte(password),
107
- "default_user.conf": defaultUserConf,
108
- },
109
- }, nil
104
+ var userConfBuffer bytes.Buffer
105
+ if _, err := cfg.WriteTo(&userConfBuffer); err != nil {
106
+ return nil, err
107
+ }
108
+
109
+ return userConfBuffer.Bytes(), nil
110
110
}
0 commit comments