Documentation
¶
Overview ¶
Package svc provides service layer components for KSail.
This package contains the business logic layer that coordinates between the CLI commands and the underlying clients/infrastructure:
- installer: Component installers for CNI, CSI, GitOps engines, and cert-manager
- provisioner: Cluster and registry provisioning for Kind, K3d, and Talos
The svc package follows the service pattern, encapsulating complex operations that involve multiple steps, retries, and coordination between different subsystems.
Key responsibilities:
- Installing and configuring Kubernetes components (Cilium, Calico, Flux, ArgoCD)
- Provisioning and managing cluster lifecycle (create, start, stop, delete)
- Managing container registries (local and mirror registries)
- Handling distribution-specific logic for Kind, K3d, and Talos
Directories
¶
| Path | Synopsis |
|---|---|
|
Package image provides services for exporting and importing container images to and from Kubernetes cluster containerd runtimes.
|
Package image provides services for exporting and importing container images to and from Kubernetes cluster containerd runtimes. |
|
Package installer provides functionality for installing and uninstalling components.
|
Package installer provides functionality for installing and uninstalling components. |
|
argocd
Package argocdinstaller installs Argo CD via Helm.
|
Package argocdinstaller installs Argo CD via Helm. |
|
cert-manager
Package certmanagerinstaller installs cert-manager via Helm.
|
Package certmanagerinstaller installs cert-manager via Helm. |
|
cni
Package cni provides unified CNI installer implementations and shared utilities for managing CNI providers on Kubernetes clusters.
|
Package cni provides unified CNI installer implementations and shared utilities for managing CNI providers on Kubernetes clusters. |
|
cni/calico
Package calicoinstaller provides an installer for installing Calico CNI on a Kubernetes cluster.
|
Package calicoinstaller provides an installer for installing Calico CNI on a Kubernetes cluster. |
|
cni/cilium
Package ciliuminstaller provides an installer for installing Cilium CNI on a Kubernetes cluster.
|
Package ciliuminstaller provides an installer for installing Cilium CNI on a Kubernetes cluster. |
|
flux
Package fluxinstaller provides an installer for installing Flux on a Kubernetes cluster.
|
Package fluxinstaller provides an installer for installing Flux on a Kubernetes cluster. |
|
gatekeeper
Package gatekeeperinstaller installs Gatekeeper via Helm.
|
Package gatekeeperinstaller installs Gatekeeper via Helm. |
|
kubelet-csr-approver
Package kubeletcsrapproverinstaller provides an installer for kubelet-csr-approver on a Kubernetes cluster.
|
Package kubeletcsrapproverinstaller provides an installer for kubelet-csr-approver on a Kubernetes cluster. |
|
kyverno
Package kyvernoinstaller installs Kyverno via Helm.
|
Package kyvernoinstaller installs Kyverno via Helm. |
|
localpathstorage
Package localpathstorageinstaller provides installation of Rancher Local Path Provisioner for Kind clusters.
|
Package localpathstorageinstaller provides installation of Rancher Local Path Provisioner for Kind clusters. |
|
metrics-server
Package metricsserverinstaller provides an installer for installing metrics-server on a Kubernetes cluster.
|
Package metricsserverinstaller provides an installer for installing metrics-server on a Kubernetes cluster. |
|
Package provider defines infrastructure providers for running Kubernetes cluster nodes.
|
Package provider defines infrastructure providers for running Kubernetes cluster nodes. |
|
docker
Package docker provides a Docker-based infrastructure provider.
|
Package docker provides a Docker-based infrastructure provider. |
|
hetzner
Package hetzner implements provider.Provider for Hetzner Cloud servers.
|
Package hetzner implements provider.Provider for Hetzner Cloud servers. |
|
Package provisioner provides cluster and registry provisioning services.
|
Package provisioner provides cluster and registry provisioning services. |
|
cluster
Package clusterprovisioner provides cluster provisioning for KSail distributions.
|
Package clusterprovisioner provides cluster provisioning for KSail distributions. |
|
cluster/errors
Package clustererrors provides common error types for cluster provisioners.
|
Package clustererrors provides common error types for cluster provisioners. |
|
cluster/k3d
Package k3dprovisioner contains the K3d cluster provisioner and its client provider interfaces.
|
Package k3dprovisioner contains the K3d cluster provisioner and its client provider interfaces. |
|
cluster/kind
Package kindprovisioner provides implementations of the ClusterProvisioner interface for provisioning Kind clusters.
|
Package kindprovisioner provides implementations of the ClusterProvisioner interface for provisioning Kind clusters. |
|
cluster/talos
Package talosprovisioner provides implementations of the ClusterProvisioner interface for provisioning Talos-in-Docker clusters.
|
Package talosprovisioner provides implementations of the ClusterProvisioner interface for provisioning Talos-in-Docker clusters. |
|
registry
Package registry centralizes all registry lifecycle helpers that KSail-Go needs for local development clusters.
|
Package registry centralizes all registry lifecycle helpers that KSail-Go needs for local development clusters. |
|
Package reconciler provides a common base for GitOps reconciliation clients.
|
Package reconciler provides a common base for GitOps reconciliation clients. |
Click to show internal directories.
Click to hide internal directories.