Documentation
¶
Index ¶
Constants ¶
const ( ModuleReleasePhasePending = "Pending" ModuleReleasePhaseDeployed = "Deployed" ModuleReleasePhaseSuperseded = "Superseded" ModuleReleasePhaseSuspended = "Suspended" ModuleReleasePhaseSkipped = "Skipped" )
ModuleRelease phase constants. Source: https://github.com/deckhouse/deckhouse/blob/main/deckhouse-controller/pkg/apis/deckhouse.io/v1alpha1/module_release.go
const ( // ModuleReleaseApprovedAnnotation marks a release as approved for deployment. ModuleReleaseApprovedAnnotation = "modules.deckhouse.io/approved" // ModuleReleaseApplyNowAnnotation forces immediate deployment, bypassing update windows. ModuleReleaseApplyNowAnnotation = "modules.deckhouse.io/apply-now" )
ModuleRelease annotation keys. Source: https://github.com/deckhouse/deckhouse/blob/main/deckhouse-controller/pkg/apis/deckhouse.io/v1alpha1/module_release.go
Variables ¶
var ModuleReleaseGVR = schema.GroupVersionResource{
Group: "deckhouse.io",
Version: "v1alpha1",
Resource: "modulereleases",
}
ModuleReleaseGVR is the GroupVersionResource for ModuleRelease objects.
Functions ¶
This section is empty.
Types ¶
type ModuleConfigMeta ¶
type ModuleConfigMeta struct {
metav1.TypeMeta `json:",inline"`
// Standard object's metadata.
// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ModuleConfigSpec `json:"spec"`
Status ModuleConfigStatus `json:"status,omitempty"`
}
type ModuleConfigSpec ¶
type ModuleConfigSpec struct {
Version int `json:"version,omitempty"`
Settings SettingsValues `json:"settings,omitempty"`
Enabled *bool `json:"enabled,omitempty"`
UpdatePolicy string `json:"updatePolicy,omitempty"`
Source string `json:"source,omitempty"`
}
type ModuleConfigStatus ¶
type ModuleRelease ¶ added in v0.25.0
type ModuleRelease struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ModuleReleaseSpec `json:"spec"`
Status ModuleReleaseStatus `json:"status,omitempty"`
}
ModuleRelease represents a Deckhouse module release. This is a minimal version containing only fields needed for approve/apply-now commands. Full schema: https://github.com/deckhouse/deckhouse/blob/main/deckhouse-controller/pkg/apis/deckhouse.io/v1alpha1/module_release.go
func ModuleReleaseFromUnstructured ¶ added in v0.25.0
func ModuleReleaseFromUnstructured(obj *unstructured.Unstructured) (*ModuleRelease, error)
ModuleReleaseFromUnstructured converts an unstructured object to ModuleRelease.
func (*ModuleRelease) IsApplyNow ¶ added in v0.25.0
func (mr *ModuleRelease) IsApplyNow() bool
IsApplyNow returns true if the release has the apply-now annotation set to "true".
func (*ModuleRelease) IsApproved ¶ added in v0.25.0
func (mr *ModuleRelease) IsApproved() bool
IsApproved returns true if the release has the approved annotation set to "true".
type ModuleReleaseSpec ¶ added in v0.25.0
type ModuleReleaseSpec struct {
ModuleName string `json:"moduleName"`
Version string `json:"version,omitempty"`
Weight uint32 `json:"weight,omitempty"`
}
ModuleReleaseSpec contains the specification of a module release.
type ModuleReleaseStatus ¶ added in v0.25.0
type ModuleReleaseStatus struct {
Phase string `json:"phase,omitempty"`
Approved bool `json:"approved"`
Message string `json:"message"`
}
ModuleReleaseStatus contains the status of a module release.
type SettingsValues ¶
type SettingsValues map[string]interface{}