Documentation
¶
Overview ¶
Package fluxhelm provides generators for creating Flux HelmRelease resources along with their associated source resources (HelmRepository, GitRepository, OCIRepository, or Bucket).
The FluxHelm generator follows the GVK (Group, Version, Kind) pattern:
- Group: generators.gokure.dev
- Version: v1alpha1
- Kind: FluxHelm
This generator supports multiple source types:
- HelmRepository: Traditional Helm chart repositories
- GitRepository: Charts stored in Git repositories
- OCIRepository: OCI-compliant container registries
- Bucket: S3-compatible object storage
Example usage with HelmRepository:
apiVersion: generators.gokure.dev/v1alpha1
kind: FluxHelm
metadata:
name: postgresql
namespace: database
spec:
chart:
name: postgresql
version: 12.0.0
source:
type: HelmRepository
url: https://charts.bitnami.com/bitnami
values:
auth:
database: myapp
release:
createNamespace: true
Example usage with OCIRepository:
apiVersion: generators.gokure.dev/v1alpha1
kind: FluxHelm
metadata:
name: podinfo
namespace: apps
spec:
chart:
name: podinfo
version: "6.*"
source:
type: OCIRepository
ociUrl: oci://ghcr.io/stefanprodan/charts/podinfo
values:
replicaCount: 2
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ConfigV1Alpha1 ¶
type ConfigV1Alpha1 struct {
generators.BaseMetadata `yaml:",inline" json:",inline"`
// Chart configuration
Chart internal.ChartConfig `yaml:"chart" json:"chart"`
Version string `yaml:"version,omitempty" json:"version,omitempty"`
Values interface{} `yaml:"values,omitempty" json:"values,omitempty"`
// Source configuration
Source internal.SourceConfig `yaml:"source" json:"source"`
// Release configuration
Release internal.ReleaseConfig `yaml:"release,omitempty" json:"release,omitempty"`
// Advanced options
Interval string `yaml:"interval,omitempty" json:"interval,omitempty"`
Timeout string `yaml:"timeout,omitempty" json:"timeout,omitempty"`
MaxHistory int `yaml:"maxHistory,omitempty" json:"maxHistory,omitempty"`
ServiceAccount string `yaml:"serviceAccount,omitempty" json:"serviceAccount,omitempty"`
Suspend bool `yaml:"suspend,omitempty" json:"suspend,omitempty"`
DependsOn []string `yaml:"dependsOn,omitempty" json:"dependsOn,omitempty"`
PostRenderers []internal.PostRenderer `yaml:"postRenderers,omitempty" json:"postRenderers,omitempty"`
}
ConfigV1Alpha1 generates Flux HelmRelease and source resources
func (*ConfigV1Alpha1) Generate ¶
func (c *ConfigV1Alpha1) Generate(app *stack.Application) ([]*client.Object, error)
Generate creates Flux HelmRelease and source resources
func (*ConfigV1Alpha1) GetAPIVersion ¶
func (c *ConfigV1Alpha1) GetAPIVersion() string
GetAPIVersion returns the API version for this config
func (*ConfigV1Alpha1) GetKind ¶
func (c *ConfigV1Alpha1) GetKind() string
GetKind returns the kind for this config
Click to show internal directories.
Click to hide internal directories.