Documentation ¶
Index ¶
- Variables
- func CheckDeploymentState(kubeConfig []byte, releaseName string) (string, error)
- func CreateDeployment(chartName string, releaseName string, valueOverrides []byte, kubeConfig []byte, ...) (*rls.InstallReleaseResponse, error)
- func DeleteAllDeployment(kubeconfig []byte) error
- func DeleteDeployment(releaseName string, kubeConfig []byte) error
- func GetDeployment()
- func GetDeploymentStatus(releaseName string, kubeConfig []byte) (int32, error)
- func GetHelmClient(kubeConfig []byte) (*helm.Client, error)
- func GetK8sClientConfig(kubeConfig []byte) (*rest.Config, error)
- func GetK8sConnection(kubeConfig []byte) (*kubernetes.Clientset, error)
- func GetK8sInClusterConnection() (*kubernetes.Clientset, error)
- func Install(helmInstall *helm.Install, kubeConfig []byte, path string) error
- func ListDeployments(filter *string, kubeConfig []byte) (*rls.ListReleasesResponse, error)
- func PreInstall(helmInstall *helm.Install, kubeConfig []byte) error
- func ReposAdd(clusterName string, Hrepo *repo.Entry) error
- func ReposDelete(clusterName, repoName string) error
- func ReposGet(clusterName string) ([]*repo.Entry, error)
- func ReposModify(clusterName, repoName string, newRepo *repo.Entry) error
- func ReposUpdate(clusterName, repoName string) error
- func RetryHelmInstall(helmInstall *helm.Install, kubeconfig []byte, path string) error
- func UpgradeDeployment(deploymentName, chartName string, values []byte, reuseValues bool, ...) (*rls.UpdateReleaseResponse, error)
- type ChartDetails
- type ChartList
- type SpotGuideFile
- type SpotguideOptions
Constants ¶
This section is empty.
Variables ¶
var ErrRepoNotFound = errors.New("helm repository not found!")
ErrRepoNotFound describe an error if helm repository not found
Functions ¶
func CheckDeploymentState ¶
CheckDeploymentState checks the state of Helm deployment
func CreateDeployment ¶
func CreateDeployment(chartName string, releaseName string, valueOverrides []byte, kubeConfig []byte, path string) (*rls.InstallReleaseResponse, error)
CreateDeployment creates a Helm deployment
func DeleteAllDeployment ¶
DeleteAllDeployment deletes all Helm deployment
func DeleteDeployment ¶
DeleteDeployment deletes a Helm deployment
func GetDeploymentStatus ¶
GetDeploymentStatus retrieves the status of the passed in release name. returns with an error if the release is not found or another error occurs in case of error the status is filled with information to classify the error cause
func GetHelmClient ¶
GetHelmClient establishes Tunnel for Helm client TODO check client and config if both needed
func GetK8sClientConfig ¶
GetK8sClientConfig creates a Kubernetes client config
func GetK8sConnection ¶
func GetK8sConnection(kubeConfig []byte) (*kubernetes.Clientset, error)
GetK8sConnection creates a new Kubernetes client
func GetK8sInClusterConnection ¶
func GetK8sInClusterConnection() (*kubernetes.Clientset, error)
GetK8sInClusterConnection returns Kubernetes in-cluster configuration
func ListDeployments ¶
func ListDeployments(filter *string, kubeConfig []byte) (*rls.ListReleasesResponse, error)
ListDeployments lists Helm deployments
func PreInstall ¶
PreInstall create's ServiceAccount and AccountRoleBinding
func ReposModify ¶
ReposModify modifies repo(s)
func ReposUpdate ¶
ReposUpdate updates a repo(s)
func RetryHelmInstall ¶
RetryHelmInstall retries for a configurable time/interval Azure AKS sometimes failing because of TLS handshake timeout, there are several issues on GitHub about that: https://github.com/Azure/AKS/issues/112, https://github.com/Azure/AKS/issues/116, https://github.com/Azure/AKS/issues/14
func UpgradeDeployment ¶
func UpgradeDeployment(deploymentName, chartName string, values []byte, reuseValues bool, kubeConfig []byte, path string) (*rls.UpdateReleaseResponse, error)
UpgradeDeployment upgrades a Helm deployment
Types ¶
type ChartDetails ¶
type ChartDetails struct { Name string `json:"name"` Repo string `json:"repo"` Chart *repo.ChartVersion `json:"chart"` Values string `json:"values"` Readme string `json:"readme"` Options []SpotguideOptions `json:"options"` }
ChartDetails describes a chart details
func ChartGet ¶
func ChartGet(clusterName, chartRepo, chartName, chartVersion string) (*ChartDetails, error)
ChartGet returns chart details
type ChartList ¶
type ChartList struct { Name string `json:"name"` Charts []repo.ChartVersions `json:"charts"` }
ChartList describe a chart list
type SpotGuideFile ¶
type SpotGuideFile struct {
Options []SpotguideOptions `json:"options"`
}
SpotGuideFile describes a spotguide file with the options