Skip to content

Commit c4c04b5

Browse files
committed
Move UsersCredentials struct to the internal package
Rename user_settings.go to user.go to reflect its extended scope
1 parent c40ae34 commit c4c04b5

File tree

3 files changed

+16
-16
lines changed

3 files changed

+16
-16
lines changed

controllers/user_controller.go

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -40,18 +40,6 @@ const (
4040
// +kubebuilder:rbac:groups=rabbitmq.com,resources=users/status,verbs=get;update;patch
4141
// +kubebuilder:rbac:groups="",resources=secrets,verbs=get;list;watch;create
4242

43-
// UserCredentials describes the credentials that can be provided in ImportCredentialsSecret for a User.
44-
// If the secret is not provided, a random username and password will be generated.
45-
type UserCredentials struct {
46-
// Must be present if ImportCredentialsSecret is provided.
47-
Username string
48-
// If PasswordHash is an empty string, a passwordless user is created.
49-
// If PasswordHash is nil, Password is used instead.
50-
PasswordHash *string
51-
// If Password is empty and PasswordHash is nil, a random password is generated.
52-
Password string
53-
}
54-
5543
type UserReconciler struct {
5644
client.Client
5745
Scheme *runtime.Scheme
@@ -124,7 +112,7 @@ func (r *UserReconciler) declareCredentials(ctx context.Context, user *topology.
124112
return credentials.Username, nil
125113
}
126114

127-
func (r *UserReconciler) generateCredentials(ctx context.Context, user *topology.User) (UserCredentials, error) {
115+
func (r *UserReconciler) generateCredentials(ctx context.Context, user *topology.User) (internal.UserCredentials, error) {
128116
logger := ctrl.LoggerFrom(ctx)
129117

130118
var err error
@@ -136,7 +124,7 @@ func (r *UserReconciler) generateCredentials(ctx context.Context, user *topology
136124
return r.importCredentials(ctx, user.Spec.ImportCredentialsSecret.Name, user.Namespace)
137125
}
138126

139-
credentials := UserCredentials{}
127+
credentials := internal.UserCredentials{}
140128

141129
credentials.Username, err = internal.RandomEncodedString(24)
142130
if err != nil {
@@ -149,11 +137,11 @@ func (r *UserReconciler) generateCredentials(ctx context.Context, user *topology
149137
return credentials, nil
150138
}
151139

152-
func (r *UserReconciler) importCredentials(ctx context.Context, secretName, secretNamespace string) (UserCredentials, error) {
140+
func (r *UserReconciler) importCredentials(ctx context.Context, secretName, secretNamespace string) (internal.UserCredentials, error) {
153141
logger := ctrl.LoggerFrom(ctx)
154142
logger.Info("Importing user credentials from provided Secret", "secretName", secretName, "secretNamespace", secretNamespace)
155143

156-
var credentials UserCredentials
144+
var credentials internal.UserCredentials
157145
var credentialsSecret corev1.Secret
158146

159147
err := r.Client.Get(ctx, types.NamespacedName{Name: secretName, Namespace: secretNamespace}, &credentialsSecret)

internal/user_settings.go renamed to internal/user.go

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,18 @@ import (
1717
corev1 "k8s.io/api/core/v1"
1818
)
1919

20+
// UserCredentials describes the credentials that can be provided in ImportCredentialsSecret for a User.
21+
// If the secret is not provided, a random username and password will be generated.
22+
type UserCredentials struct {
23+
// Must be present if ImportCredentialsSecret is provided.
24+
Username string
25+
// If PasswordHash is an empty string, a passwordless user is created.
26+
// If PasswordHash is nil, Password is used instead.
27+
PasswordHash *string
28+
// If Password is empty and PasswordHash is nil, a random password is generated.
29+
Password string
30+
}
31+
2032
func GenerateUserSettings(credentials *corev1.Secret, tags []topology.UserTag) (rabbithole.UserSettings, error) {
2133
username, ok := credentials.Data["username"]
2234
if !ok {
File renamed without changes.

0 commit comments

Comments
 (0)