curatedpackages

package
v0.11.0 Latest Latest
Warning

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

Go to latest
Published: Aug 19, 2022 License: Apache-2.0 Imports: 29 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Cluster  = "cluster"
	Registry = "registry"
)
View Source
const (
	CustomName = "generated-"
)
View Source
const (
	ImageRepositoryName = "eks-anywhere-packages-bundles"
)

Variables

This section is empty.

Functions

func CreateBundleManager

func CreateBundleManager() bundle.RegistryClient

func GenerateAllValidConfigurations added in v0.9.2

func GenerateAllValidConfigurations(configs map[string]string) (string, error)

func GetPackageBundleRef

func GetPackageBundleRef(vb releasev1.VersionsBundle) (string, error)

func GetRegistry added in v0.9.2

func GetRegistry(uri string) string

func GetVersionBundle

func GetVersionBundle(reader Reader, eksaVersion string, spec *v1alpha1.Cluster) (*releasev1.VersionsBundle, error)

func ParseConfigurations added in v0.9.2

func ParseConfigurations(configs []string) (map[string]string, error)

func PrintCertManagerDoesNotExistMsg added in v0.11.0

func PrintCertManagerDoesNotExistMsg()

func PrintLicense

func PrintLicense()

func Pull

func Pull(ctx context.Context, art string) ([]byte, error)

func Push

func Push(ctx context.Context, ref, fileName string, fileContent []byte) error

func ValidateKubeVersion

func ValidateKubeVersion(kubeVersion string, source BundleSource) error

func VerifyCertManagerExists added in v0.11.0

func VerifyCertManagerExists(ctx context.Context, kubectl KubectlRunner, kubeConfig string) error

func WithBundle added in v0.9.2

func WithBundle(bundle *packagesv1.PackageBundle) func(*PackageClient)

func WithCustomConfigs added in v0.9.2

func WithCustomConfigs(customConfigs []string) func(*PackageClient)

func WithCustomPackages added in v0.9.2

func WithCustomPackages(customPackages []string) func(*PackageClient)

func WithEksaAccessKeyId added in v0.11.0

func WithEksaAccessKeyId(eksaAccessKeyId string) func(client *PackageControllerClient)

func WithEksaRegion added in v0.11.0

func WithEksaRegion(eksaRegion string) func(client *PackageControllerClient)

func WithEksaSecretAccessKey added in v0.11.0

func WithEksaSecretAccessKey(eksaSecretAccessKey string) func(client *PackageControllerClient)

Types

type BundleReader

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

func NewBundleReader

func NewBundleReader(kubeConfig string, source BundleSource, k KubectlRunner, bm Manager, reg BundleRegistry) *BundleReader

func (*BundleReader) GetActiveController

func (b *BundleReader) GetActiveController(ctx context.Context) (*packagesv1.PackageBundleController, error)

func (*BundleReader) GetLatestBundle

func (b *BundleReader) GetLatestBundle(ctx context.Context, kubeVersion string) (*packagesv1.PackageBundle, error)

func (*BundleReader) UpgradeBundle

func (b *BundleReader) UpgradeBundle(ctx context.Context, controller *packagesv1.PackageBundleController, newBundle string) error

type BundleRegistry

type BundleRegistry interface {
	GetRegistryBaseRef(ctx context.Context) (string, error)
}

type BundleSource

type BundleSource string

func (*BundleSource) Set

func (b *BundleSource) Set(s string) error

func (BundleSource) String

func (b BundleSource) String() string

func (BundleSource) Type

func (b BundleSource) Type() string

type ChartInstaller

type ChartInstaller interface {
	InstallChart(ctx context.Context, chart, ociURI, version, kubeconfigFilePath string, values []string) error
}

type CustomRegistry

type CustomRegistry struct {
	*executables.Helm
	// contains filtered or unexported fields
}

func NewCustomRegistry

func NewCustomRegistry(helm *executables.Helm, registry string) *CustomRegistry

func (*CustomRegistry) GetRegistryBaseRef

func (cm *CustomRegistry) GetRegistryBaseRef(ctx context.Context) (string, error)

type DefaultRegistry

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

func NewDefaultRegistry

func NewDefaultRegistry(rmr Reader, kv string, cv version.Info) *DefaultRegistry

func (*DefaultRegistry) GetRegistryBaseRef

func (dr *DefaultRegistry) GetRegistryBaseRef(ctx context.Context) (string, error)

type Discovery

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

Discovery * Implements ServerVersionInterface to provide the Kubernetes client version to be used.

func NewDiscovery

func NewDiscovery(kubeVersion *KubeVersion) *Discovery

func (*Discovery) ServerVersion

func (d *Discovery) ServerVersion() (*version.Info, error)

type DisplayablePackage

type DisplayablePackage struct {
	*api.Package
	Status *interface{} `json:"status,omitempty"`
}

DisplayablePackage wraps Package to omit undesired members (like Status).

This is necessary in part because of https://github.com/golang/go/issues/11939 but also because we just don't want to generate a Status section when we're emitting templates for a user to modify.

func NewDisplayablePackage

func NewDisplayablePackage(p *api.Package) *DisplayablePackage

type Installer added in v0.9.2

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

func NewInstaller added in v0.9.2

func NewInstaller(runner KubectlRunner, pc PackageHandler, pcc PackageController, spec *cluster.Spec, packagesLocation string) *Installer

func (*Installer) InstallCuratedPackages added in v0.9.2

func (pi *Installer) InstallCuratedPackages(ctx context.Context) error

type KubeVersion

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

func NewKubeVersion

func NewKubeVersion(major string, minor string) *KubeVersion

type KubectlRunner

type KubectlRunner interface {
	ExecuteCommand(ctx context.Context, opts ...string) (bytes.Buffer, error)
	ExecuteFromYaml(ctx context.Context, yaml []byte, opts ...string) (bytes.Buffer, error)
	GetResource(ctx context.Context, resourceType string, name string, kubeconfig string, namespace string) (bool, error)
}

type Manager

type Manager interface {
	LatestBundle(ctx context.Context, baseRef string, kubeVersion string) (
		*packagesv1.PackageBundle, error)
}

type PackageClient

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

func NewPackageClient

func NewPackageClient(kubectl KubectlRunner, options ...PackageClientOpt) *PackageClient

func (*PackageClient) ApplyPackages

func (pc *PackageClient) ApplyPackages(ctx context.Context, fileName string, kubeConfig string) error

func (*PackageClient) CreatePackages

func (pc *PackageClient) CreatePackages(ctx context.Context, fileName string, kubeConfig string) error

func (*PackageClient) DeletePackages

func (pc *PackageClient) DeletePackages(ctx context.Context, packages []string, kubeConfig string) error

func (*PackageClient) DescribePackages

func (pc *PackageClient) DescribePackages(ctx context.Context, packages []string, kubeConfig string) error

func (*PackageClient) DisplayPackages

func (pc *PackageClient) DisplayPackages()

func (*PackageClient) GeneratePackages

func (pc *PackageClient) GeneratePackages() ([]packagesv1.Package, error)

func (*PackageClient) GetPackageFromBundle

func (pc *PackageClient) GetPackageFromBundle(packageName string) (*packagesv1.BundlePackage, error)

func (*PackageClient) InstallPackage

func (pc *PackageClient) InstallPackage(ctx context.Context, bp *packagesv1.BundlePackage, customName string, kubeConfig string) error

func (*PackageClient) WritePackagesToStdOut

func (pc *PackageClient) WritePackagesToStdOut(packages []packagesv1.Package) error

type PackageClientOpt added in v0.9.2

type PackageClientOpt func(*PackageClient)

type PackageController added in v0.9.2

type PackageController interface {
	InstallController(ctx context.Context) error
}

type PackageControllerClient

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

func NewPackageControllerClient

func NewPackageControllerClient(chartInstaller ChartInstaller, kubectl KubectlRunner, clusterName, kubeConfig, uri, chartName, chartVersion string, options ...PackageControllerClientOpt) *PackageControllerClient

func (*PackageControllerClient) ApplySecret added in v0.11.0

func (pc *PackageControllerClient) ApplySecret(ctx context.Context) error

func (*PackageControllerClient) CreateCronJob added in v0.11.0

func (pc *PackageControllerClient) CreateCronJob(ctx context.Context) error

func (*PackageControllerClient) InstallController

func (pc *PackageControllerClient) InstallController(ctx context.Context) error

func (*PackageControllerClient) ValidateControllerDoesNotExist

func (pc *PackageControllerClient) ValidateControllerDoesNotExist(ctx context.Context) error

type PackageControllerClientOpt added in v0.11.0

type PackageControllerClientOpt func(client *PackageControllerClient)

type PackageHandler added in v0.9.2

type PackageHandler interface {
	CreatePackages(ctx context.Context, fileName string, kubeConfig string) error
}

type PackageReader

type PackageReader struct {
	*manifests.Reader
}

func NewPackageReader

func NewPackageReader(mr *manifests.Reader) *PackageReader

func (*PackageReader) ReadChartsFromBundles

func (r *PackageReader) ReadChartsFromBundles(ctx context.Context, b *releasev1.Bundles) []releasev1.Image

func (*PackageReader) ReadImagesFromBundles

func (r *PackageReader) ReadImagesFromBundles(b *releasev1.Bundles) ([]releasev1.Image, error)

type Reader

type Reader interface {
	ReadBundlesForVersion(eksaVersion string) (*releasev1.Bundles, error)
}

Directories

Path Synopsis
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.

Jump to

Keyboard shortcuts

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