Skip to content

Extend Providers with API to expose their scheme #761

@fabianburth

Description

@fabianburth

Description
The API to register internal plugins with their plugin registries is currently quite complex.

func RegisterInternalComponentVersionRepositoryPlugin[T runtime.Typed](
	scheme *runtime.Scheme,
	r *RepositoryRegistry,
	p repository.ComponentVersionRepositoryProvider,
	prototype T,
) error

The provider implementations contain a configured scheme themselves.

type CachingComponentVersionRepositoryProvider struct {
	creator string

	scheme *runtime.Scheme

	storeCache *storeCache
	credentialCache *credentialCache
	ociCache *ociCache
	authorizationCache auth.Cache
	httpClient *http.Client
	tempDir string
}

Scope

  • Extend the Provider APIs to expose their schemes.
  • Simplify the Register signature to only take its corresponding registry and provider as parameters

Done Criteria

  • Code has been reviewed by other team members
  • Analysis of existing tests (Unit and Integration)
  • Unit Tests created for new code or existing Unit Tests updated
  • Integration Test Suite updated (includes deletion of existing unnecessary Integration Test and/or creation of new ones if required)
  • Enduser Documentation updated (if applicable)
  • Internal technical Documentation created/updated (if applicable)
  • Successful demonstration in Review

Metadata

Metadata

Assignees

Labels

area/ipceiImportant Project of Common European Interestkind/tasksmall task, normally part of feature or epic

Type

No fields configured for Task.

Projects

Status
🍺 Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions