release

package
v0.0.0-...-16c43c8 Latest Latest
Warning

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

Go to latest
Published: Jun 3, 2019 License: Apache-2.0 Imports: 34 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the liberty v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=liberty.ibm.com

Index

Constants

View Source
const (
	ConditionInitialized    AppConditionType = "Initialized"
	ConditionDeployed       AppConditionType = "Deployed"
	ConditionReleaseFailed  AppConditionType = "ReleaseFailed"
	ConditionIrreconcilable AppConditionType = "Irreconcilable"

	StatusTrue    AppConditionStatus = "True"
	StatusFalse   AppConditionStatus = "False"
	StatusUnknown AppConditionStatus = "Unknown"

	ReasonInstallSuccessful   AppConditionReason = "InstallSuccessful"
	ReasonUpdateSuccessful    AppConditionReason = "UpdateSuccessful"
	ReasonUninstallSuccessful AppConditionReason = "UninstallSuccessful"
	ReasonInstallError        AppConditionReason = "InstallError"
	ReasonUpdateError         AppConditionReason = "UpdateError"
	ReasonReconcileError      AppConditionReason = "ReconcileError"
	ReasonUninstallError      AppConditionReason = "UninstallError"
)

Variables

View Source
var (
	// ErrNotFound indicates the release was not found.
	ErrNotFound = errors.New("release not found")
)

Functions

This section is empty.

Types

type AppCondition

type AppCondition struct {
	Type    AppConditionType   `json:"type"`
	Status  AppConditionStatus `json:"status"`
	Reason  AppConditionReason `json:"reason,omitempty"`
	Message string             `json:"message,omitempty"`
	Release *rpb.Release       `json:"release,omitempty"`

	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
}

+k8s:deepcopy-gen=true

func (*AppCondition) DeepCopy

func (in *AppCondition) DeepCopy() *AppCondition

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppCondition.

func (*AppCondition) DeepCopyInto

func (in *AppCondition) DeepCopyInto(out *AppCondition)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AppConditionReason

type AppConditionReason string

+k8s:deepcopy-gen=true

type AppConditionStatus

type AppConditionStatus string

+k8s:deepcopy-gen=true

type AppConditionType

type AppConditionType string

+k8s:deepcopy-gen=true

type AppRelease

type AppRelease struct {
	rpb.Release
}

Release describes a deployment of a chart, together with the chart and the variables used to deploy that chart. +k8s:deepcopy-gen=true

func (*AppRelease) DeepCopy

func (in *AppRelease) DeepCopy() *AppRelease

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppRelease.

func (*AppRelease) DeepCopyInto

func (in *AppRelease) DeepCopyInto(out *AppRelease)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AppResource

type AppResource struct {
	GroupVersionKind schema.GroupVersionKind `json:gvk,omitempty`
}

func (*AppResource) DeepCopy

func (in *AppResource) DeepCopy() *AppResource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppResource.

func (*AppResource) DeepCopyInto

func (in *AppResource) DeepCopyInto(out *AppResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AppStatus

type AppStatus struct {
	Conditions []AppCondition `json:"conditions"`
}

+k8s:deepcopy-gen=true

func StatusFor

func StatusFor(cr *unstructured.Unstructured) *AppStatus

StatusFor safely returns a typed status block from a custom resource.

func (*AppStatus) DeepCopy

func (in *AppStatus) DeepCopy() *AppStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppStatus.

func (*AppStatus) DeepCopyInto

func (in *AppStatus) DeepCopyInto(out *AppStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*AppStatus) RemoveCondition

func (s *AppStatus) RemoveCondition(conditionType AppConditionType) *AppStatus

RemoveCondition removes the condition with the passed condition type from the status object. If the condition is not already present, the returned status object is returned unchanged. RemoveCondition does not update the resource in the cluster.

func (*AppStatus) SetCondition

func (s *AppStatus) SetCondition(condition AppCondition) *AppStatus

SetCondition sets a condition on the status object. If the condition already exists, it will be replaced. SetCondition does not update the resource in the cluster.

func (*AppStatus) ToMap

func (s *AppStatus) ToMap() (map[string]interface{}, error)

type Manager

type Manager interface {
	ReleaseName() string
	IsInstalled() bool
	IsUpdateRequired() bool
	Sync(context.Context, transformFunc) error
	InstallRelease(context.Context) (*rpb.Release, error)
	UpdateRelease(context.Context) (*rpb.Release, *rpb.Release, error)
	ReconcileRelease(context.Context) (*rpb.Release, error)
	UninstallRelease(context.Context) (*rpb.Release, error)
}

Manager manages a Helm release. It can install, update, reconcile, and uninstall a release.

type ManagerFactory

type ManagerFactory interface {
	NewManager(r *unstructured.Unstructured) Manager
}

ManagerFactory creates Managers that are specific to custom resources. It is used by the HelmOperatorReconciler during resource reconciliation, and it improves decoupling between reconciliation logic and the Helm backend components used to manage releases.

func NewManagerFactory

func NewManagerFactory(storageBackend *storage.Storage, tillerKubeClient *kube.Client, chartDir string) ManagerFactory

NewManagerFactory returns a new Helm manager factory capable of installing and uninstalling releases.

Jump to

Keyboard shortcuts

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