Documentation ¶
Index ¶
- Constants
- Variables
- func GetVersion(hcs *hcov1beta1.HyperConvergedStatus, name string) (string, bool)
- func RegisterReconciler(mgr manager.Manager, ci hcoutil.ClusterInfo, upgradeableCond hcoutil.Condition) error
- func UpdateVersion(hcs *hcov1beta1.HyperConvergedStatus, name, version string)
- type CRDRemover
- type ReconcileHyperConverged
- type UpgradePatches
Constants ¶
const ( // We cannot set owner reference of cluster-wide resources to namespaced HyperConverged object. Therefore, // use finalizers to manage the cleanup. FinalizerName = "kubevirt.io/hyperconverged" )
Variables ¶
var JSONPatchAnnotationNames = []string{ common.JSONPatchKVAnnotationName, common.JSONPatchCDIAnnotationName, common.JSONPatchCNAOAnnotationName, }
JSONPatchAnnotationNames - annotations used to patch operand CRs with unsupported/unofficial/hidden features. The presence of any of these annotations raises the hcov1beta1.ConditionTaintedConfiguration condition.
Functions ¶
func GetVersion ¶
func GetVersion(hcs *hcov1beta1.HyperConvergedStatus, name string) (string, bool)
func RegisterReconciler ¶
func RegisterReconciler(mgr manager.Manager, ci hcoutil.ClusterInfo, upgradeableCond hcoutil.Condition) error
RegisterReconciler creates a new HyperConverged Reconciler and registers it into manager.
func UpdateVersion ¶
func UpdateVersion(hcs *hcov1beta1.HyperConvergedStatus, name, version string)
Types ¶
type CRDRemover ¶
type CRDRemover struct {
// contains filtered or unexported fields
}
CRDRemover removes old CRD we have to delete
func (*CRDRemover) Done ¶
func (c *CRDRemover) Done() bool
func (*CRDRemover) Remove ¶
func (c *CRDRemover) Remove(req *common.HcoRequest) error
type ReconcileHyperConverged ¶
type ReconcileHyperConverged struct {
// contains filtered or unexported fields
}
ReconcileHyperConverged reconciles a HyperConverged object
func (*ReconcileHyperConverged) EnsureOperandAndComplete ¶
func (r *ReconcileHyperConverged) EnsureOperandAndComplete(req *common.HcoRequest, init bool) (reconcile.Result, error)
func (*ReconcileHyperConverged) Reconcile ¶
func (r *ReconcileHyperConverged) Reconcile(ctx context.Context, request reconcile.Request) (reconcile.Result, error)
Reconcile reads that state of the cluster for a HyperConverged object and makes changes based on the state read and what is in the HyperConverged.Spec Note: The Controller will requeue the Request to be processed again if the returned error is non-nil or Result.Requeue is true, otherwise upon completion it will remove the work from the queue.
type UpgradePatches ¶
type UpgradePatches struct { // hcoCRPatchList is a list of upgrade patches. // Each hcoCRPatch consists in a semver range of affected source versions and a json patch to be applied during the upgrade if relevant. HCOCRPatchList []hcoCRPatch `json:"hcoCRPatchList"` // ObjectsToBeRemoved is a list of objects to be removed on upgrades. // Each objectToBeRemoved consists in a semver range of affected source versions and schema.GroupVersionKind and types.NamespacedName of the object to be eventually removed during the upgrade. ObjectsToBeRemoved []objectToBeRemoved `json:"objectsToBeRemoved"` }