ocm

package
v0.13.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 23, 2024 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	// contains filtered or unexported fields
}

Client implements the OCM fetcher interface.

func NewClient

func NewClient(client client.Client) *Client

NewClient creates a new fetcher Client using the provided k8s client.

func (*Client) CreateAuthenticatedOCMContext added in v0.2.0

func (c *Client) CreateAuthenticatedOCMContext(ctx context.Context, obj *v1alpha1.ComponentSubscription) (ocm.Context, error)

func (*Client) GetComponentVersion

func (c *Client) GetComponentVersion(
	ctx context.Context,
	octx ocm.Context,
	obj *v1alpha1.ComponentSubscription,
	version string,
) (ocm.ComponentVersionAccess, error)

GetComponentVersion returns a component Version. It's the caller's responsibility to clean it up and close the component Version once done with it.

func (*Client) GetLatestSourceComponentVersion

func (c *Client) GetLatestSourceComponentVersion(ctx context.Context, octx ocm.Context, obj *v1alpha1.ComponentSubscription) (string, error)

func (*Client) SignDestinationComponent added in v0.11.0

func (c *Client) SignDestinationComponent(_ context.Context, component ocm.ComponentVersionAccess) ([]byte, error)

SignDestinationComponent signs the component before transferring it and returns the public key for storing it on the subscription.

func (*Client) TransferComponent

func (c *Client) TransferComponent(
	ctx context.Context,
	octx ocm.Context,
	obj *v1alpha1.ComponentSubscription,
	sourceComponentVersion ocm.ComponentVersionAccess,
) error

func (*Client) VerifyComponent added in v0.11.0

type Contract added in v0.2.0

type Contract interface {
	CreateAuthenticatedOCMContext(ctx context.Context, obj *v1alpha1.ComponentSubscription) (ocm.Context, error)
	VerifyComponent(ctx context.Context, obj *v1alpha1.ComponentSubscription, cv ocm.ComponentVersionAccess) (bool, error)
	SignDestinationComponent(ctx context.Context, component ocm.ComponentVersionAccess) ([]byte, error)
	GetComponentVersion(
		ctx context.Context,
		octx ocm.Context,
		obj *v1alpha1.ComponentSubscription,
		version string,
	) (ocm.ComponentVersionAccess, error)
	GetLatestSourceComponentVersion(ctx context.Context, octx ocm.Context, obj *v1alpha1.ComponentSubscription) (string, error)
	TransferComponent(
		ctx context.Context,
		octx ocm.Context,
		obj *v1alpha1.ComponentSubscription,
		sourceComponentVersion ocm.ComponentVersionAccess,
	) error
}

Contract defines a subset of capabilities from the OCM library.

type Version

type Version struct {
	Semver  *semver.Version
	Version string
}

Version has two values to be able to sort a list but still return the actual Version. The Version might contain a `v`.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL