service

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Jun 7, 2023 License: Apache-2.0 Imports: 11 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewSociSnapshotterService

func NewSociSnapshotterService(ctx context.Context, root string, config *Config, opts ...Option) (snapshots.Snapshotter, error)

NewSociSnapshotterService returns soci snapshotter.

func Supported

func Supported(root string) error

Supported returns nil when the remote snapshotter is functional on the system with the root directory. Supported is not called during plugin initialization, but exposed for downstream projects which uses this snapshotter as a library.

Types

type CRIKeychainConfig

type CRIKeychainConfig struct {
	// EnableKeychain enables CRI-based keychain
	EnableKeychain bool `toml:"enable_keychain"`

	// ImageServicePath is the path to the unix socket of backing CRI Image Service (e.g. containerd CRI plugin)
	ImageServicePath string `toml:"image_service_path"`
}

CRIKeychainConfig is config for CRI-based keychain.

type Config

type Config struct {
	config.Config

	// KubeconfigKeychainConfig is config for kubeconfig-based keychain.
	KubeconfigKeychainConfig `toml:"kubeconfig_keychain"`

	// CRIKeychainConfig is config for CRI-based keychain.
	CRIKeychainConfig `toml:"cri_keychain"`

	// ResolverConfig is config for resolving registries.
	ResolverConfig `toml:"resolver"`

	// SnapshotterConfig is snapshotter-related config.
	SnapshotterConfig `toml:"snapshotter"`
}

type KubeconfigKeychainConfig

type KubeconfigKeychainConfig struct {
	// EnableKeychain enables kubeconfig-based keychain
	EnableKeychain bool `toml:"enable_keychain"`

	// KubeconfigPath is the path to kubeconfig which can be used to sync
	// secrets on the cluster into this snapshotter.
	KubeconfigPath string `toml:"kubeconfig_path"`
}

KubeconfigKeychainConfig is config for kubeconfig-based keychain.

type Option

type Option func(*options)

func WithCredsFuncs

func WithCredsFuncs(creds ...resolver.Credential) Option

WithCredsFuncs specifies credsFuncs to be used for connecting to the registries.

func WithCustomRegistryHosts

func WithCustomRegistryHosts(hosts source.RegistryHosts) Option

WithCustomRegistryHosts is registry hosts to use instead.

func WithFilesystemOptions

func WithFilesystemOptions(opts ...socifs.Option) Option

WithFilesystemOptions allowes to pass filesystem-related configuration.

type ResolverConfig

type ResolverConfig resolver.Config

ResolverConfig is config for resolving registries.

type SnapshotterConfig

type SnapshotterConfig struct {
	// MinLayerSize skips remote mounting of smaller layers
	MinLayerSize int64 `toml:"min_layer_size"`

	// AllowInvalidMountsOnRestart allows that there are snapshot mounts that cannot access to the
	// data source when restarting the snapshotter.
	// NOTE: User needs to manually remove the snapshots from containerd's metadata store using
	//       ctr (e.g. `ctr snapshot rm`).
	AllowInvalidMountsOnRestart bool `toml:"allow_invalid_mounts_on_restart"`
}

SnapshotterConfig is snapshotter-related config.

Directories

Path Synopsis
keychain
cri

Jump to

Keyboard shortcuts

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