Skip to content

Commit 304b67d

Browse files
Add preload plugin command
Signed-off-by: Danil-Grigorev <[email protected]>
1 parent 1a6adbf commit 304b67d

File tree

4 files changed

+483
-59
lines changed

4 files changed

+483
-59
lines changed

cmd/plugin/cmd/init.go

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -453,8 +453,7 @@ func deployCAPIOperator(ctx context.Context, opts *initOptions) error {
453453
return nil
454454
}
455455

456-
// createGenericProvider creates a generic provider.
457-
func createGenericProvider(ctx context.Context, client ctrlclient.Client, providerType clusterctlv1.ProviderType, providerInput, defaultNamespace, configSecretName, configSecretNamespace string) (operatorv1.GenericProvider, error) {
456+
func templateGenericProvider(providerType clusterctlv1.ProviderType, providerInput, defaultNamespace, configSecretName, configSecretNamespace string) (operatorv1.GenericProvider, error) {
458457
// Parse the provider string
459458
// Format is <provider-name>:<optional-namespace>:<optional-version>
460459
// Example: aws:capa-system:v2.1.5 -> name: aws, namespace: capa-system, version: v2.1.5
@@ -517,19 +516,29 @@ func createGenericProvider(ctx context.Context, client ctrlclient.Client, provid
517516
provider.SetSpec(spec)
518517
}
519518

519+
return provider, nil
520+
}
521+
522+
// createGenericProvider creates a generic provider.
523+
func createGenericProvider(ctx context.Context, client ctrlclient.Client, providerType clusterctlv1.ProviderType, providerInput, defaultNamespace, configSecretName, configSecretNamespace string) (operatorv1.GenericProvider, error) {
524+
provider, err := templateGenericProvider(providerType, providerInput, defaultNamespace, configSecretName, configSecretNamespace)
525+
if err != nil {
526+
return nil, err
527+
}
528+
520529
// Ensure that desired namespace exists
521-
if err := EnsureNamespaceExists(ctx, client, namespace); err != nil {
530+
if err := EnsureNamespaceExists(ctx, client, provider.GetNamespace()); err != nil {
522531
return nil, fmt.Errorf("cannot ensure that namespace exists: %w", err)
523532
}
524533

525-
log.Info("Installing provider", "Type", provider.GetType(), "Name", name, "Version", version, "Namespace", namespace)
534+
log.Info("Installing provider", "Type", provider.GetType(), "Name", provider.GetName(), "Version", provider.GetSpec().Version, "Namespace", provider.GetNamespace())
526535

527536
// Create the provider
528537
if err := wait.ExponentialBackoff(backoffOpts, func() (bool, error) {
529538
if err := client.Create(ctx, provider); err != nil {
530539
// If the provider already exists, return immediately and do not retry.
531540
if apierrors.IsAlreadyExists(err) {
532-
log.Info("Provider already exists, skipping creation", "Type", provider.GetType(), "Name", name, "Version", version, "Namespace", namespace)
541+
log.Info("Provider already exists, skipping creation", "Type", provider.GetType(), "Name", provider.GetName(), "Version", provider.GetSpec().Version, "Namespace", provider.GetNamespace())
533542

534543
return true, err
535544
}

0 commit comments

Comments
 (0)