controller

package
v0.1.1 Latest Latest
Warning

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

Go to latest
Published: Feb 11, 2026 License: Apache-2.0 Imports: 42 Imported by: 0

Documentation

Index

Constants

View Source
const (
	InstallFinalizer     = "install.home-cloud.io/finalizer"
	ReleasesURL          = "https://github.com/home-cloud-io/core/releases/download/"
	DefaultDaemonAddress = "http://daemon.home-cloud-system"
)
View Source
const AppFinalizer = "apps.home-cloud.io/finalizer"
View Source
const (
	// if daemon is disabled, the user is responsible for creating this hostPath so that
	// Home Cloud can provision PersistentVolumes against it
	DefaultHostPath = "/mnt/home-cloud"
)
View Source
const (
	PostgresHostname = "postgres.postgres"
)

Variables

View Source
var (
	// TODO: get this value from the install
	GatewayName      = "ingress-gateway"
	GatewayNamespace = gwv1.Namespace("istio-system")
)

Functions

func DaemonClient added in v0.1.1

func DaemonClient(address string) dv1connect.DaemonServiceClient

DaemonClient creates a DaemonServiceClient and defaults the address if not set

Types

type AppConfig added in v0.0.2

type AppConfig struct {
	Namespace   string
	Routes      []AppRoute
	Databases   []AppDatabase
	Persistence []AppPersistence
	Secrets     []AppSecret
}

type AppDatabase added in v0.0.2

type AppDatabase struct {
	Name string
	Type string
	Init string
}

type AppPersistence added in v0.0.2

type AppPersistence struct {
	Name string
	Size string
}

type AppReconciler

type AppReconciler struct {
	client.Client
	Scheme *runtime.Scheme
}

AppReconciler reconciles a App object

func (*AppReconciler) Reconcile

func (r *AppReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

Reconcile is part of the main kubernetes reconciliation loop which aims to move the current state of the cluster closer to the desired state.

For more details, check Reconcile and its Result here: - https://pkg.go.dev/sigs.k8s.io/controller-runtime@v0.16.3/pkg/reconcile

func (*AppReconciler) SetupWithManager

func (r *AppReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type AppRoute added in v0.0.2

type AppRoute struct {
	Name    string
	Service AppService
}

type AppSecret added in v0.0.2

type AppSecret struct {
	Name string
	Keys []SecretKey
}

type AppService added in v0.0.2

type AppService struct {
	Name string
	Port uint32
}

type AppValues added in v0.0.2

type AppValues struct {
	Config AppConfig `yaml:"homeCloud"`
}

type HelmChartVersion

type HelmChartVersion struct {
	APIVersion  string    `yaml:"apiVersion"`
	AppVersion  string    `yaml:"appVersion"`
	Created     time.Time `yaml:"created"`
	Description string    `yaml:"description"`
	Digest      string    `yaml:"digest"`
	Name        string    `yaml:"name"`
	Type        string    `yaml:"type"`
	Urls        []string  `yaml:"urls"`
	Version     string    `yaml:"version"`
}

HelmChartVersion represents the versions of the "entries" within a HelmRepositoryIndex

type HelmRepositoryIndex

type HelmRepositoryIndex struct {
	APIVersion string                        `yaml:"apiVersion"`
	Entries    map[string][]HelmChartVersion `yaml:"entries"`
	Generated  time.Time                     `yaml:"generated"`
}

HelmRepositoryIndex represents the index.yaml file that holds the information of helm charts within a helm repo

type InstallReconciler added in v0.1.1

type InstallReconciler struct {
	client.Client
	Scheme *runtime.Scheme
	Config *rest.Config
}

InstallReconciler reconciles a Install object

func (*InstallReconciler) Reconcile added in v0.1.1

func (r *InstallReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

func (*InstallReconciler) SetupWithManager added in v0.1.1

func (r *InstallReconciler) SetupWithManager(mgr ctrl.Manager) error

SetupWithManager sets up the controller with the Manager.

type SecretKey added in v0.0.2

type SecretKey struct {
	Name                string
	Length              int
	NoSpecialCharacters bool `yaml:"noSpecialCharacters"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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