Documentation
¶
Index ¶
- Constants
- func GetLocalCharts(ctx context.Context, client kclient.Client, namespace string) (map[string]*platformApi.ArangoPlatformChart, error)
- type ApiVersions
- type Chart
- type ChartData
- type ChartManager
- type ChartManagerRepo
- type ChartManagerRepoVersion
- type Client
- type Configuration
- type ConfigurationDriver
- type Package
- type PackageRelease
- type Platform
- type PlatformRequirements
- type PlatformVersionDefinition
- type Release
- type ReleaseChart
- type ReleaseChartMetadata
- type ReleaseInfo
- type Resource
- type ResourceObject
- type ResourceObjectData
- type Resources
- type UninstallRelease
- type UpgradeResponse
- type Values
- type ValuesMergeMethod
Constants ¶
View Source
const (
PlatformFileName = "platform.yml"
)
Variables ¶
This section is empty.
Functions ¶
func GetLocalCharts ¶
func GetLocalCharts(ctx context.Context, client kclient.Client, namespace string) (map[string]*platformApi.ArangoPlatformChart, error)
Types ¶
type ApiVersions ¶
type ApiVersions map[schema.GroupVersionKind]meta.APIResource
type ChartManager ¶
type ChartManager interface { Reload(ctx context.Context) error Repositories() []string Get(name string) (ChartManagerRepo, bool) }
func NewChartManager ¶
type ChartManagerRepo ¶
type ChartManagerRepo interface { Versions() []string Get(version string) (ChartManagerRepoVersion, bool) Latest() (ChartManagerRepoVersion, bool) }
type ChartManagerRepoVersion ¶
type Client ¶
type Client interface { Namespace() string Alive(ctx context.Context) error Invalidate() DiscoverKubernetesApiVersions(gv schema.GroupVersion) (ApiVersions, error) DiscoverKubernetesApiVersionKind(gvk schema.GroupVersionKind) (*meta.APIResource, error) NativeGet(ctx context.Context, reqs ...Resource) ([]ResourceObject, error) StatusObjects(ctx context.Context, name string, mods ...util.Mod[action.Status]) (*Release, []ResourceObject, error) Status(ctx context.Context, name string, mods ...util.Mod[action.Status]) (*Release, error) List(ctx context.Context, mods ...util.Mod[action.List]) ([]Release, error) Install(ctx context.Context, chart Chart, values Values, mods ...util.Mod[action.Install]) (*Release, error) Upgrade(ctx context.Context, name string, chart Chart, values Values, mods ...util.Mod[action.Upgrade]) (*UpgradeResponse, error) Uninstall(ctx context.Context, name string, mods ...util.Mod[action.Uninstall]) (*UninstallRelease, error) Test(ctx context.Context, name string, mods ...util.Mod[action.ReleaseTesting]) (*Release, error) }
func NewClient ¶
func NewClient(cfg Configuration) (Client, error)
type Configuration ¶
type Configuration struct { Namespace string Config *rest.Config Driver *ConfigurationDriver }
func (*Configuration) Validate ¶
func (c *Configuration) Validate() error
type ConfigurationDriver ¶
type ConfigurationDriver string
const ( ConfigurationDriverDefault = ConfigurationDriverSecret ConfigurationDriverConfigMap ConfigurationDriver = "configmap" ConfigurationDriverSecret ConfigurationDriver = "secret" )
func (*ConfigurationDriver) Get ¶
func (c *ConfigurationDriver) Get() ConfigurationDriver
func (*ConfigurationDriver) Validate ¶
func (c *ConfigurationDriver) Validate() error
type Package ¶
type Package struct { Packages map[string]string `json:"packages,omitempty"` Releases map[string]PackageRelease `json:"releases,omitempty"` }
type PackageRelease ¶
type Platform ¶
type Platform struct {
Requirements PlatformRequirements `json:"requirements,omitempty"`
}
type PlatformRequirements ¶
type PlatformRequirements map[string]PlatformVersionDefinition
type PlatformVersionDefinition ¶
type PlatformVersionDefinition string
type Release ¶
type Release struct { Name string `json:"name,omitempty"` Info ReleaseInfo `json:"info"` Chart *ReleaseChart `json:"chart,omitempty"` Values Values `json:"values,omitempty"` Version int `json:"version,omitempty"` Namespace string `json:"namespace,omitempty"` Labels map[string]string `json:"labels,omitempty"` }
func (*Release) GetChart ¶
func (r *Release) GetChart() *ReleaseChart
type ReleaseChart ¶
type ReleaseChart struct {
Metadata *ReleaseChartMetadata `json:"metadata,omitempty"`
}
func (*ReleaseChart) GetMetadata ¶
func (r *ReleaseChart) GetMetadata() *ReleaseChartMetadata
type ReleaseChartMetadata ¶
type ReleaseChartMetadata struct { Version string `json:"version,omitempty"` Name string `json:"name,omitempty"` }
func (*ReleaseChartMetadata) GetName ¶
func (r *ReleaseChartMetadata) GetName() string
func (*ReleaseChartMetadata) GetVersion ¶
func (r *ReleaseChartMetadata) GetVersion() string
type ReleaseInfo ¶
type ReleaseInfo struct { FirstDeployed time.Time `json:"first_deployed,omitempty"` LastDeployed time.Time `json:"last_deployed,omitempty"` Deleted time.Time `json:"deleted,omitempty"` Description string `json:"description,omitempty"` Status release.Status `json:"status,omitempty"` Notes string `json:"notes,omitempty"` Resources Resources `json:"resources,omitempty"` }
type Resource ¶
type Resource struct { schema.GroupVersionKind Name, Namespace string }
type ResourceObject ¶
type ResourceObject struct { Resource Object *ResourceObjectData }
type ResourceObjectData ¶
type ResourceObjectData struct {
Data []byte
}
func (*ResourceObjectData) Unmarshal ¶
func (r *ResourceObjectData) Unmarshal(obj any) error
type UninstallRelease ¶
type UpgradeResponse ¶
type UpgradeResponse struct {
Before, After *Release
}
type Values ¶
type Values []byte
func NewMergeValues ¶
func NewMergeValues(opts ValuesMergeMethod, vs ...any) (Values, error)
func (Values) MarshalJSON ¶
type ValuesMergeMethod ¶
type ValuesMergeMethod int
const (
MergeMaps ValuesMergeMethod = 1 << iota
)
func (ValuesMergeMethod) Has ¶
func (v ValuesMergeMethod) Has(o ValuesMergeMethod) bool
Click to show internal directories.
Click to hide internal directories.