Documentation ¶
Index ¶
- func CheckUnconstrained(baseVersion *semver.Version, version string) (bool, error)
- func IsSupported(version *semver.Version, provider kubermaticv1.ProviderType, ...) (bool, error)
- type Manager
- func (m *Manager) AutomaticControlplaneUpdate(fromVersionRaw, clusterType string) (*Version, error)
- func (m *Manager) AutomaticNodeUpdate(fromVersionRaw, clusterType, controlPlaneVersion string) (*Version, error)
- func (m *Manager) GetDefault() (*Version, error)
- func (m *Manager) GetIncompatibilities() []*ProviderIncompatibility
- func (m *Manager) GetPossibleUpdates(fromVersionRaw, clusterType string, provider kubermaticv1.ProviderType, ...) ([]*Version, error)
- func (m *Manager) GetVersion(s, t string) (*Version, error)
- func (m *Manager) GetVersions(clusterType string) ([]*Version, error)
- func (m *Manager) GetVersionsV2(clusterType string, provider kubermaticv1.ProviderType, ...) ([]*Version, error)
- type ProviderIncompatibility
- type Update
- type Version
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CheckUnconstrained ¶ added in v2.18.0
func IsSupported ¶ added in v2.18.0
func IsSupported(version *semver.Version, provider kubermaticv1.ProviderType, incompatibilities []*ProviderIncompatibility, conditions ...kubermaticv1.ConditionType) (bool, error)
Types ¶
type Manager ¶
type Manager struct {
// contains filtered or unexported fields
}
Manager is a object to handle versions & updates from a predefined config.
func New ¶
func New(versions []*Version, updates []*Update, providerIncompatibilities []*ProviderIncompatibility) *Manager
New returns a instance of Manager.
func NewFromConfiguration ¶ added in v2.19.0
func NewFromConfiguration(config *kubermaticv1.KubermaticConfiguration) *Manager
NewFromConfiguration converts the configured versions/updates into the datatypes used by this package and returns a version.Manager on success.
func (*Manager) AutomaticControlplaneUpdate ¶
AutomaticControlplaneUpdate returns a version if an automatic update can be found for the version passed in.
func (*Manager) AutomaticNodeUpdate ¶
func (m *Manager) AutomaticNodeUpdate(fromVersionRaw, clusterType, controlPlaneVersion string) (*Version, error)
AutomaticNodeUpdate returns an automatic node update or nil.
func (*Manager) GetDefault ¶
GetDefault returns the default version.
func (*Manager) GetIncompatibilities ¶ added in v2.18.0
func (m *Manager) GetIncompatibilities() []*ProviderIncompatibility
func (*Manager) GetPossibleUpdates ¶
func (m *Manager) GetPossibleUpdates(fromVersionRaw, clusterType string, provider kubermaticv1.ProviderType, conditions ...kubermaticv1.ConditionType) ([]*Version, error)
GetPossibleUpdates returns possible updates for the version passed in.
func (*Manager) GetVersion ¶
GetVersion returns the Versions for s.
func (*Manager) GetVersions ¶
GetVersions returns all Versions which don't result in automatic updates.
func (*Manager) GetVersionsV2 ¶ added in v2.18.0
func (m *Manager) GetVersionsV2(clusterType string, provider kubermaticv1.ProviderType, conditions ...kubermaticv1.ConditionType) ([]*Version, error)
GetVersionsV2 returns all Versions which don't result in automatic updates.
type ProviderIncompatibility ¶ added in v2.18.0
type ProviderIncompatibility struct { Provider kubermaticv1.ProviderType `json:"provider"` Version string `json:"version"` Condition kubermaticv1.ConditionType `json:"condition"` Operation kubermaticv1.OperationType `json:"operation"` Type string `json:"type,omitempty"` }
func LoadProviderIncompatibilities ¶ added in v2.18.0
func LoadProviderIncompatibilities(path string) ([]*ProviderIncompatibility, error)
type Update ¶
type Update struct { From string `json:"from"` To string `json:"to"` Automatic bool `json:"automatic,omitempty"` AutomaticNodeUpdate bool `json:"automaticNodeUpdate,omitempty"` Type string `json:"type,omitempty"` }
Update represents an update option for a cluster.
func LoadUpdates ¶
LoadUpdates loads the update definition file and returns the defined MasterUpdate.