Skip to content
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
12 changes: 6 additions & 6 deletions pkg/certificate/auto/provider.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,22 +33,22 @@ const (

type Provider struct {
client.Client
config *interfaces.Config
}

var _ interfaces.Provider = (*Provider)(nil)

func New(c client.Client) interfaces.Provider {
return &Provider{
c,
Client: c,
config: nil,
}
}

var userAutoConfig *interfaces.Config

func (ac *Provider) EnsureCertificateSecret(ctx context.Context, secretKey client.ObjectKey,
cfg *interfaces.Config) error {
// Save the user defined AutoConfig so that it can be returned from GetCertificateConfig
userAutoConfig = cfg
ac.config = cfg

var secret corev1.Secret
err := ac.Get(ctx, secretKey, &secret)
Expand Down Expand Up @@ -162,8 +162,8 @@ func (ac *Provider) GetCertificateConfig(ctx context.Context,
return nil, fmt.Errorf("failed to get certificate: %w", err)
}

if userAutoConfig != nil {
return userAutoConfig, nil
if ac.config != nil {
return ac.config, nil
}

return nil, fmt.Errorf("failed to get user-defined autoConfig")
Expand Down
12 changes: 12 additions & 0 deletions test/e2e/auto_provider_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,10 @@ func TestAutoProvider(t *testing.T) {
cl := cfg.Client()
acProvider := auto.New(cl.Resources().GetControllerRuntimeClient())
secretKey := client.ObjectKey{Name: cmCertificateName, Namespace: cmCertificateNamespace}
err := acProvider.EnsureCertificateSecret(ctx, secretKey, cmConfig)
if err != nil {
t.Fatalf("Auto Provider Certificate could not be created: %v", err)
}
config, err := acProvider.GetCertificateConfig(ctx, secretKey)
if err != nil {
t.Fatalf("Auto Certificate not found: %v", err)
Expand Down Expand Up @@ -183,6 +187,14 @@ func TestClusterAutoCertCreation(t *testing.T) {
); err != nil {
t.Fatalf("timed out waiting for certificate: %s", err)
}

return ctx
},
)

feature.Assess("Wait for StatefulSet readiness",
func(ctx context.Context, t *testing.T, c *envconf.Config) context.Context {
waitForSTSReadiness(t, c, etcdClusterName, size)
return ctx
},
)
Expand Down