extension

package
v0.4.0-rc.0 Latest Latest
Warning

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

Go to latest
Published: Jun 27, 2024 License: MIT Imports: 42 Imported by: 0

Documentation

Index

Constants

View Source
const MetadataFilename = "extension.yaml"

Variables

View Source
var Categories = []string{
	"ai-machine-learning",
	"computing",
	"database",
	"dev-tools",
	"integration-delivery",
	"observability",
	"networking",
	"security",
	"storage",
	"streaming-messaging",
	"other",
}
View Source
var Templates embed.FS
View Source
var Templatesapp embed.FS
View Source
var Templatessimple embed.FS

Functions

func Create

func Create(p string, config any, temp embed.FS, trimPrefix string) error

func CreateApp added in v0.4.0

func CreateApp(chartPath string) error

func CreateAppChart added in v0.2.0

func CreateAppChart(p string, name string, chart []byte) error

func CreateSimple added in v0.4.0

func CreateSimple(chartPath string) error

func IsLocalFile added in v0.4.0

func IsLocalFile(path string) bool

func LoadApplicationClass added in v0.2.0

func LoadApplicationClass(name, tempDir string) error

func PrintTemplate added in v0.3.8

func PrintTemplate(args []string, o *options.TemplateOptions, out io.Writer) error

func WithBuiltins added in v0.3.8

func WithBuiltins(o *options.LintOptions, paths []string) error

func WithEncodeIcon added in v0.4.0

func WithEncodeIcon(encodeIcon bool) func(opts *Options)

func WithHelm added in v0.3.8

func WithHelm(o *options.LintOptions, paths []string) error

func WriteFilesToTempDir added in v0.4.0

func WriteFilesToTempDir(path, tempDir string) error

Types

type ApplicationClass added in v0.2.0

type ApplicationClass struct {
	ApplicationClassGroup string               `json:"applicationClassGroup,omitempty"`
	Name                  string               `json:"name,omitempty"`
	Provisioner           string               `json:"provisioner,omitempty"`
	Parameters            map[string]string    `json:"parameters,omitempty"`
	AppVersion            string               `json:"appVersion,omitempty"`
	PackageVersion        string               `json:"packageVersion,omitempty"`
	Icon                  string               `json:"icon,omitempty"`
	Description           corev1alpha1.Locales `json:"description,omitempty"`
	Maintainer            *chart.Maintainer    `json:"maintainer,omitempty"`
}

type Config

type Config struct {
	Name     string
	Category string
	Author   string
	Email    string
	URL      string
}

type ConfigApp added in v0.4.0

type ConfigApp struct {
	Name           string
	Maintainers    string
	AppName        string
	Version        string
	AppHome        string
	Abstraction    string
	AppVersionName string
	ZipName        string
}

type ConfigSimple added in v0.4.0

type ConfigSimple struct {
	Name string
}

type Extension

type Extension struct {
	Metadata *Metadata
	// ChartURL valid when the chart source online.
	ChartURL string
	// ChartData valid when the chart source local.
	ChartData []byte
}

func Load

func Load(path string) (*Extension, error)

func LoadFromHelm added in v0.3.11

func LoadFromHelm(path string) (*Extension, error)

func (*Extension) ToKubernetesResources

func (ext *Extension) ToKubernetesResources() []runtimeclient.Object

type Metadata

type Metadata struct {
	APIVersion string `json:"apiVersion" validate:"required"`
	// The name of the chart. Required.
	Name                 string                                               `json:"name" validate:"required"`
	Version              string                                               `json:"version" validate:"required"`
	DisplayName          corev1alpha1.Locales                                 `json:"displayName" validate:"required"`
	Description          corev1alpha1.Locales                                 `json:"description" validate:"required"`
	Category             string                                               `json:"category" validate:"required"`
	Keywords             []string                                             `json:"keywords,omitempty"`
	Home                 string                                               `json:"home,omitempty"`
	Docs                 string                                               `json:"docs,omitempty"`
	Sources              []string                                             `json:"sources,omitempty"`
	KubeVersion          string                                               `json:"kubeVersion,omitempty"`
	KSVersion            string                                               `json:"ksVersion,omitempty"`
	Maintainers          []*chart.Maintainer                                  `json:"maintainers,omitempty"`
	Provider             map[corev1alpha1.LanguageCode]*corev1alpha1.Provider `json:"provider" validate:"required"`
	StaticFileDirectory  string                                               `json:"staticFileDirectory,omitempty"`
	Icon                 string                                               `json:"icon" validate:"required"`
	Screenshots          []string                                             `json:"screenshots,omitempty"`
	Dependencies         []*chart.Dependency                                  `json:"dependencies,omitempty"`
	InstallationMode     corev1alpha1.InstallationMode                        `json:"installationMode,omitempty"`
	Namespace            string                                               `json:"namespace,omitempty"`
	Images               []string                                             `json:"images,omitempty"`
	ExternalDependencies []corev1alpha1.ExternalDependency                    `json:"externalDependencies,omitempty"`
}

func LoadMetadata

func LoadMetadata(path string, options ...func(*Options)) (*Metadata, error)

func ParseMetadata added in v0.4.0

func ParseMetadata(data []byte) (*Metadata, error)

func (*Metadata) ToChartYaml

func (md *Metadata) ToChartYaml() (*chart.Metadata, error)

func (*Metadata) Validate

func (md *Metadata) Validate() error

type Options added in v0.4.0

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

Jump to

Keyboard shortcuts

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