Documentation ¶
Index ¶
- Constants
- Variables
- func AcceptExistentDigests(flag ...bool) internal.ModOptionImpl
- func AccessUsage(scheme AccessTypeScheme, cli bool) string
- func BlobAccessForAccessMethod(m AccessMethod) (blobaccess.AnnotatedBlobAccess[accspeccpi.AccessMethodView], error)
- func CompleteModificationOptions(ctx ContextProvider, m *ModificationOptions)
- func ComponentRefKey(ref *compdesc.Reference) common.NameVersion
- func DefaultContext() internal.Context
- func IsIntermediate(spec RepositorySpec) bool
- func IsNoneAccess(a compdesc.AccessSpec) bool
- func IsNoneAccessKind(k string) bool
- func IsUnknownAccessSpec(s AccessSpec) bool
- func IsUnknownRepositorySpec(s RepositorySpec) bool
- func ModifyResource(flag ...bool) internal.ModOptionImpl
- func ReferenceHint(spec AccessSpec, cv ComponentVersionAccess) string
- func SkipDigest(flag ...bool) internal.ModOptionImpldeprecated
- func SkipVerify(flag ...bool) internal.ModOptionImpl
- func TargetIdentity(id v1.Identity) internal.TargetOptionImpl
- func TargetIdentityOrCreate(id v1.Identity) internal.TargetOptionImpl
- func TargetIndex(idx int) internal.TargetOptionImpl
- func UseBlobHandlers(h BlobHandlerProvider) internal.BlobOptionImpl
- func WithAccessypeScheme(scheme AccessTypeScheme) internal.Builder
- func WithBlobDigesters(reg BlobDigesterRegistry) internal.Builder
- func WithBlobHandlers(reg BlobHandlerRegistry) internal.Builder
- func WithContext(ctx context.Context) internal.Builder
- func WithCredentials(ctx credentials.Context) internal.Builder
- func WithDefaultHashAlgorithm(algo ...string) internal.ModOptionImpl
- func WithHasherProvider(prov HasherProvider) internal.ModOptionImpl
- func WithOCIRepositories(ctx oci.Context) internal.Builder
- func WithRepositoryDelegation(reg RepositoryDelegationRegistry) internal.Builder
- func WithRepositorySpecHandlers(reg RepositorySpecHandlers) internal.Builder
- func WithRepositoyTypeScheme(scheme RepositoryTypeScheme) internal.Builder
- type AccessMethod
- type AccessMethodSource
- type AccessProvider
- type AccessSpec
- type AccessSpecRef
- type AccessType
- type AccessTypeScheme
- type AddVersionOption
- type AddVersionOptions
- type BlobAccess
- type BlobDigester
- type BlobDigesterRegistry
- type BlobHandler
- type BlobHandlerProvider
- type BlobHandlerRegistry
- type BlobModificationOption
- type BlobModificationOptions
- type BlobUploadOption
- type BlobUploadOptions
- type CompSpec
- type ComponentAccess
- type ComponentContainer
- type ComponentLister
- type ComponentReference
- type ComponentResolver
- type ComponentVersionAccess
- type ComponentVersionContainer
- type ComponentVersionResolver
- type Context
- type ContextProvider
- type DataAccess
- type DigestDescriptor
- type DigesterType
- type EvaluationResult
- type Finalizer
- type GenericAccessSpec
- type GenericRepositorySpec
- type Hasher
- type HasherProvider
- type HintProvider
- type IntermediateRepositorySpecAspect
- type LocalContextProvider
- type ModificationOption
- type ModificationOptions
- type RefSpec
- type Repository
- type RepositoryDelegationRegistry
- type RepositoryProvider
- type RepositorySpec
- type RepositorySpecHandler
- type RepositorySpecHandlers
- type RepositoryType
- type RepositoryTypeScheme
- type ResolvedComponentProvider
- type ResolvedComponentVersionProvider
- type ResourceAccess
- type ResourceMeta
- type Session
- type SourceAccess
- type SourceMeta
- type TargetElement
- type TargetOption
- type TargetOptions
- type UniformRepositorySpec
Constants ¶
const ( KIND_COMPONENT = internal.KIND_COMPONENT KIND_COMPONENTVERSION = internal.KIND_COMPONENTVERSION KIND_COMPONENTREFERENCE = "component reference" KIND_RESOURCE = internal.KIND_RESOURCE KIND_SOURCE = internal.KIND_SOURCE KIND_REFERENCE = internal.KIND_REFERENCE KIND_REPOSITORYSPEC = internal.KIND_REPOSITORYSPEC KIND_OCM_REFERENCE = internal.KIND_OCM_REFERENCE )
const AppendElement = internal.TargetIndex(-1)
const CONTEXT_TYPE = internal.CONTEXT_TYPE
const CommonTransportFormat = internal.CommonTransportFormat
Variables ¶
var ErrTempVersion = repocpi.ErrTempVersion
ErrTempVersion indicates an ignored update in the backend because the current version has not yet been added to the repository.
var UpdateElement = internal.UpdateElement
Functions ¶
func AcceptExistentDigests ¶
func AcceptExistentDigests(flag ...bool) internal.ModOptionImpl
func AccessUsage ¶
func AccessUsage(scheme AccessTypeScheme, cli bool) string
func BlobAccessForAccessMethod ¶
func BlobAccessForAccessMethod(m AccessMethod) (blobaccess.AnnotatedBlobAccess[accspeccpi.AccessMethodView], error)
func CompleteModificationOptions ¶
func CompleteModificationOptions(ctx ContextProvider, m *ModificationOptions)
func ComponentRefKey ¶
func ComponentRefKey(ref *compdesc.Reference) common.NameVersion
func DefaultContext ¶
DefaultContext is the default context initialized by init functions.
func IsIntermediate ¶
func IsIntermediate(spec RepositorySpec) bool
func IsNoneAccess ¶
func IsNoneAccess(a compdesc.AccessSpec) bool
func IsNoneAccessKind ¶
func IsUnknownAccessSpec ¶
func IsUnknownAccessSpec(s AccessSpec) bool
func IsUnknownRepositorySpec ¶
func IsUnknownRepositorySpec(s RepositorySpec) bool
func ModifyResource ¶
func ModifyResource(flag ...bool) internal.ModOptionImpl
func ReferenceHint ¶
func ReferenceHint(spec AccessSpec, cv ComponentVersionAccess) string
func SkipDigest
deprecated
func SkipDigest(flag ...bool) internal.ModOptionImpl
SkipDigest disables digest creation if enabled.
Deprecated: for legacy code, only.
func SkipVerify ¶
func SkipVerify(flag ...bool) internal.ModOptionImpl
func TargetIdentity ¶
func TargetIdentity(id v1.Identity) internal.TargetOptionImpl
func TargetIdentityOrCreate ¶
func TargetIdentityOrCreate(id v1.Identity) internal.TargetOptionImpl
func TargetIndex ¶
func TargetIndex(idx int) internal.TargetOptionImpl
func UseBlobHandlers ¶
func UseBlobHandlers(h BlobHandlerProvider) internal.BlobOptionImpl
func WithAccessypeScheme ¶
func WithAccessypeScheme(scheme AccessTypeScheme) internal.Builder
func WithBlobDigesters ¶
func WithBlobDigesters(reg BlobDigesterRegistry) internal.Builder
func WithBlobHandlers ¶
func WithBlobHandlers(reg BlobHandlerRegistry) internal.Builder
func WithCredentials ¶
func WithCredentials(ctx credentials.Context) internal.Builder
func WithDefaultHashAlgorithm ¶
func WithDefaultHashAlgorithm(algo ...string) internal.ModOptionImpl
func WithHasherProvider ¶
func WithHasherProvider(prov HasherProvider) internal.ModOptionImpl
func WithRepositoryDelegation ¶
func WithRepositoryDelegation(reg RepositoryDelegationRegistry) internal.Builder
func WithRepositorySpecHandlers ¶
func WithRepositorySpecHandlers(reg RepositorySpecHandlers) internal.Builder
func WithRepositoyTypeScheme ¶
func WithRepositoyTypeScheme(scheme RepositoryTypeScheme) internal.Builder
Types ¶
type AccessMethod ¶
type AccessMethod = internal.AccessMethod
type AccessMethodSource ¶
type AccessMethodSource = cpi.AccessMethodSource
type AccessProvider ¶
type AccessProvider = internal.AccessProvider
type AccessSpec ¶
type AccessSpec = internal.AccessSpec
func GlobalAccess ¶
func GlobalAccess(spec AccessSpec, ctx Context) AccessSpec
func NewGenericAccessSpec ¶
func NewGenericAccessSpec(spec string) (AccessSpec, error)
type AccessSpecRef ¶
type AccessSpecRef = internal.AccessSpecRef
func NewAccessSpecRef ¶
func NewAccessSpecRef(spec cpi.AccessSpec) *AccessSpecRef
func NewRawAccessSpecRef ¶
func NewRawAccessSpecRef(data []byte, unmarshaler runtime.Unmarshaler) (*AccessSpecRef, error)
type AccessType ¶
type AccessType = internal.AccessType
type AccessTypeScheme ¶
type AccessTypeScheme = internal.AccessTypeScheme
type AddVersionOption ¶
type AddVersionOption = internal.AddVersionOption
func Overwrite ¶
func Overwrite(flag ...bool) AddVersionOption
Overwrite enabled the overwrite mode for adding a component version.
type AddVersionOptions ¶
type AddVersionOptions = internal.AddVersionOptions
func NewAddVersionOptions ¶
func NewAddVersionOptions(list ...AddVersionOption) *AddVersionOptions
type BlobAccess ¶
type BlobAccess = internal.BlobAccess
type BlobDigester ¶
type BlobDigester = internal.BlobDigester
type BlobDigesterRegistry ¶
type BlobDigesterRegistry = internal.BlobDigesterRegistry
type BlobHandler ¶
type BlobHandler = internal.BlobHandler
type BlobHandlerProvider ¶
type BlobHandlerProvider = internal.BlobHandlerProvider
func DefaultBlobHandlerProvider ¶
func DefaultBlobHandlerProvider(ctx Context) BlobHandlerProvider
type BlobHandlerRegistry ¶
type BlobHandlerRegistry = internal.BlobHandlerRegistry
func DefaultBlobHandlers ¶
func DefaultBlobHandlers() BlobHandlerRegistry
type BlobModificationOption ¶
type BlobModificationOption = internal.BlobModificationOption
type BlobModificationOptions ¶
type BlobModificationOptions = internal.BlobModificationOptions
func NewBlobModificationOptions ¶
func NewBlobModificationOptions(list ...BlobModificationOption) *BlobModificationOptions
type BlobUploadOption ¶
type BlobUploadOption = internal.BlobUploadOption
type BlobUploadOptions ¶
type BlobUploadOptions = internal.BlobUploadOptions
func NewBlobUploadOptions ¶
func NewBlobUploadOptions(list ...BlobUploadOption) *BlobUploadOptions
type CompSpec ¶
type CompSpec struct { // Component is the component name part of a component version Component string // +optional Version *string }
CompSpec is a go internal representation of a ocm component version name.
func (*CompSpec) NameVersion ¶
func (r *CompSpec) NameVersion() common.NameVersion
type ComponentAccess ¶
type ComponentAccess = internal.ComponentAccess
type ComponentContainer ¶
type ComponentContainer interface {
LookupComponent(name string) (ComponentAccess, error)
}
type ComponentLister ¶
type ComponentLister = internal.ComponentLister
type ComponentReference ¶
type ComponentReference = internal.ComponentReference
func NewComponentReference ¶
func NewComponentReference(name, componentName, version string) *ComponentReference
type ComponentResolver ¶
type ComponentResolver = internal.ComponentResolver
type ComponentVersionAccess ¶
type ComponentVersionAccess = internal.ComponentVersionAccess
func NoComponentVersion ¶
func NoComponentVersion(ctx ContextProvider) ComponentVersionAccess
NoComponentVersion provides a dummy component version providing access to the context. It can be used to instantiate external access methods (not based on any component version).
type ComponentVersionContainer ¶
type ComponentVersionContainer interface {
LookupVersion(version string) (ComponentVersionAccess, error)
}
type ComponentVersionResolver ¶
type ComponentVersionResolver = internal.ComponentVersionResolver
type Context ¶
func FromContext ¶
FromContext returns the Context to use for context.Context. This is either an explicit context or the default context.
func FromProvider ¶
func FromProvider(p ContextProvider) Context
func New ¶
func New(mode ...datacontext.BuilderMode) Context
type ContextProvider ¶
type ContextProvider = internal.ContextProvider
func WrapContextProvider ¶
func WrapContextProvider(ctx LocalContextProvider) ContextProvider
type DataAccess ¶
type DataAccess = internal.DataAccess
type DigestDescriptor ¶
type DigestDescriptor = internal.DigestDescriptor
func NewDigestDescriptor ¶
func NewDigestDescriptor(digest, hashAlgo, normAlgo string) *DigestDescriptor
type DigesterType ¶
type DigesterType = internal.DigesterType
type EvaluationResult ¶
type EvaluationResult struct { Ref RefSpec Repository Repository Component ComponentAccess Version ComponentVersionAccess }
type GenericAccessSpec ¶
type GenericAccessSpec = internal.GenericAccessSpec
func ToGenericAccessSpec ¶
func ToGenericAccessSpec(spec AccessSpec) (*GenericAccessSpec, error)
type GenericRepositorySpec ¶
type GenericRepositorySpec = internal.GenericRepositorySpec
func ToGenericRepositorySpec ¶
func ToGenericRepositorySpec(spec RepositorySpec) (*GenericRepositorySpec, error)
type HasherProvider ¶
type HasherProvider = internal.HasherProvider
type HintProvider ¶
type HintProvider = internal.HintProvider
type IntermediateRepositorySpecAspect ¶
type IntermediateRepositorySpecAspect = internal.IntermediateRepositorySpecAspect
type LocalContextProvider ¶
type LocalContextProvider = internal.LocalContextProvider
type ModificationOption ¶
type ModificationOption = internal.ModificationOption
type ModificationOptions ¶
type ModificationOptions = internal.ModificationOptions
func NewModificationOptions ¶
func NewModificationOptions(list ...ModificationOption) *ModificationOptions
type RefSpec ¶
type RefSpec struct { UniformRepositorySpec CompSpec }
RefSpec is a go internal representation of a oci reference.
type Repository ¶
type Repository = internal.Repository
func AssureTargetRepository ¶
func AssureTargetRepository(session Session, ctx Context, targetref string, opts ...interface{}) (Repository, error)
type RepositoryDelegationRegistry ¶
type RepositoryDelegationRegistry = internal.RepositoryDelegationRegistry
func DefaultRepositoryDelegationRegistry ¶
func DefaultRepositoryDelegationRegistry() RepositoryDelegationRegistry
func NewRepositoryDelegationRegistry ¶
func NewRepositoryDelegationRegistry(base ...RepositoryDelegationRegistry) RepositoryDelegationRegistry
type RepositoryProvider ¶
type RepositoryProvider = internal.ResolvedComponentProvider
type RepositorySpec ¶
type RepositorySpec = internal.RepositorySpec
func ParseRepoToSpec ¶
func ParseRepoToSpec(ctx Context, ref string, create ...bool) (RepositorySpec, error)
type RepositorySpecHandler ¶
type RepositorySpecHandler = internal.RepositorySpecHandler
type RepositorySpecHandlers ¶
type RepositorySpecHandlers = internal.RepositorySpecHandlers
type RepositoryType ¶
type RepositoryType = internal.RepositoryType
type RepositoryTypeScheme ¶
type RepositoryTypeScheme = internal.RepositoryTypeScheme
type ResolvedComponentProvider ¶
type ResolvedComponentProvider = internal.ResolvedComponentProvider
type ResolvedComponentVersionProvider ¶
type ResolvedComponentVersionProvider = internal.ResolvedComponentVersionProvider
type ResourceAccess ¶
type ResourceAccess = internal.ResourceAccess
type ResourceMeta ¶
type ResourceMeta = internal.ResourceMeta
func NewResourceMeta ¶
func NewResourceMeta(name string, typ string, relation metav1.ResourceRelation) *ResourceMeta
type Session ¶
type Session interface { datacontext.Session Finalize(Finalizer) LookupRepository(Context, RepositorySpec) (Repository, error) LookupRepositoryForConfig(octx Context, data []byte, unmarshaler ...runtime.Unmarshaler) (Repository, error) LookupComponent(ComponentContainer, string) (ComponentAccess, error) LookupComponentVersion(r ComponentVersionResolver, comp, vers string) (ComponentVersionAccess, error) GetComponentVersion(ComponentVersionContainer, string) (ComponentVersionAccess, error) EvaluateRef(ctx Context, ref string) (*EvaluationResult, error) EvaluateComponentRef(ctx Context, ref string) (*EvaluationResult, error) EvaluateVersionRef(ctx Context, ref string) (*EvaluationResult, error) DetermineRepository(ctx Context, ref string) (Repository, UniformRepositorySpec, error) DetermineRepositoryBySpec(ctx Context, spec *UniformRepositorySpec) (Repository, error) }
func NewSession ¶
func NewSession(s datacontext.Session) Session
type SourceAccess ¶
type SourceAccess = internal.SourceAccess
type SourceMeta ¶
type SourceMeta = internal.SourceMeta
func NewSourceMeta ¶
func NewSourceMeta(name string, typ string) *SourceMeta
type TargetElement ¶
type TargetElement = internal.TargetElement
type TargetOption ¶
type TargetOption = internal.TargetOption
type TargetOptions ¶
type TargetOptions = internal.TargetOptions
type UniformRepositorySpec ¶
type UniformRepositorySpec = internal.UniformRepositorySpec
func ParseRepo ¶
func ParseRepo(ref string) (UniformRepositorySpec, error)
ParseRepo parses a standard ocm repository reference into a internal representation.
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
normalizations/jsonv1
Package jsonv1 provides a normalization which uses schema specific normalizations.
|
Package jsonv1 provides a normalization which uses schema specific normalizations. |
normalizations/jsonv2
Package jsonv2 provides a normalization which is completely based on the abstract (internal) version of the component descriptor and is therefore agnostic of the final serialization format.
|
Package jsonv2 provides a normalization which is completely based on the abstract (internal) version of the component descriptor and is therefore agnostic of the final serialization format. |
versions/ocm.software/v3alpha1/jsonscheme
Package jsonscheme generated by go-bindata.// sources: ../../../../../../../resources/component-descriptor-ocm-v3-schema.yaml
|
Package jsonscheme generated by go-bindata.// sources: ../../../../../../../resources/component-descriptor-ocm-v3-schema.yaml |
versions/v2/jsonscheme
Package jsonscheme generated by go-bindata.// sources: ../../../../../../resources/component-descriptor-v2-schema.yaml
|
Package jsonscheme generated by go-bindata.// sources: ../../../../../../resources/component-descriptor-v2-schema.yaml |
repocpi
Package repocpi contains the implementation support for repository backends.
|
Package repocpi contains the implementation support for repository backends. |
Package elements contains builders for elements of a component version, aka resources, sources and references.
|
Package elements contains builders for elements of a component version, aka resources, sources and references. |
artifactaccess
Package artifactaccess hosts packages for ResourceAccess and SourceAccess builders used to add resources and sources referring to content in other repositories using access specification to a component version.
|
Package artifactaccess hosts packages for ResourceAccess and SourceAccess builders used to add resources and sources referring to content in other repositories using access specification to a component version. |
artifactblob
Package artifactblob hosts packages for ResourceAccess and SourceAccess builders used to add resources and sources as local blobs to a component version.
|
Package artifactblob hosts packages for ResourceAccess and SourceAccess builders used to add resources and sources as local blobs to a component version. |
artifactblob/externalblob
Package ociartifact provides a way to provide ResourceAccess and SourceAccess objects based on external access specification intended to be added as local access.
|
Package ociartifact provides a way to provide ResourceAccess and SourceAccess objects based on external access specification intended to be added as local access. |
extensions
|
|
accessmethods/options
Package options defines standard options and option types usable to provide CLI options used to dynamically orchestrate arbitrary access specifications.
|
Package options defines standard options and option types usable to provide CLI options used to dynamically orchestrate arbitrary access specifications. |
accessmethods/plugin
Package plugin is an adapter implementation that provides a generic handling of all AccessMethods provided by plugins.
|
Package plugin is an adapter implementation that provides a generic handling of all AccessMethods provided by plugins. |
blobhandler
Package blobhandler contains blobhandlers for handling local blobs for dedicated repository types.
|
Package blobhandler contains blobhandlers for handling local blobs for dedicated repository types. |
blobhandler/handlers/oci
Package oci contains sub packages for blob handler implementations for dedicated implementations of the oci go binding interface.
|
Package oci contains sub packages for blob handler implementations for dedicated implementations of the oci go binding interface. |
blobhandler/handlers/ocm
Package ocm contains sub packages for blob handler implementations for dedicated implementations of the default ocm go binding interface.
|
Package ocm contains sub packages for blob handler implementations for dedicated implementations of the default ocm go binding interface. |
download
Package download provides an API for resource download handlers.
|
Package download provides an API for resource download handlers. |
labels/routingslip/types/plugin
Package plugin is an adapter implementation that provides a generic handling of all ValueSets provided by plugins.
|
Package plugin is an adapter implementation that provides a generic handling of all ValueSets provided by plugins. |
pubsub
Package pubsub contains the handling required to connect OCM repositories to publish/subscribe infrastructures.
|
Package pubsub contains the handling required to connect OCM repositories to publish/subscribe infrastructures. |
repositories/virtual/example
Package example contains a simple implementation providing a virtual OCM repository based on some opinionated filesystem structure.
|
Package example contains a simple implementation providing a virtual OCM repository based on some opinionated filesystem structure. |
Package plugin maps a Go plugin interface to a technical command line interface.
|
Package plugin maps a Go plugin interface to a technical command line interface. |
cache
Package cache implements the plugin cache that contains all loaded plugins.
|
Package cache implements the plugin cache that contains all loaded plugins. |
descriptor
Package descriptor declares several structs that describe the information that formally describes the capabilities provided by each plugin.
|
Package descriptor declares several structs that describe the information that formally describes the capabilities provided by each plugin. |
ppi
Package ppi provides the plugin programming interface.
|
Package ppi provides the plugin programming interface. |
ppi/config
The config package can be used if the plugin should provide the ocm configuration from the calling OCM library.
|
The config package can be used if the plugin should provide the ocm configuration from the calling OCM library. |
ppi/logging
The logging package can be used if the plugin should handle the ocm logging configuration from the calling OCM library.
|
The logging package can be used if the plugin should handle the ocm logging configuration from the calling OCM library. |
tools
|
|
transfer/transferhandler
Package transferhandler provides the API for transfer handlers used during the transfer process of an OCM component.
|
Package transferhandler provides the API for transfer handlers used during the transfer process of an OCM component. |
hpi
Package hpi contains the Handler Programming Interface for value merge handlers
|
Package hpi contains the Handler Programming Interface for value merge handlers |