bucketclass

package
v5.15.3 Latest Latest
Warning

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

Go to latest
Published: May 12, 2024 License: Apache-2.0 Imports: 25 Imported by: 3

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CheckPhase

func CheckPhase(bucketClass *nbv1.BucketClass)

CheckPhase prints the phase and reason for it

func Cmd

func Cmd() *cobra.Command

Cmd returns a CLI command

func CmdCreate

func CmdCreate() *cobra.Command

CmdCreate returns a CLI command

func CmdCreateCacheNamespaceBucketclass

func CmdCreateCacheNamespaceBucketclass() *cobra.Command

CmdCreateCacheNamespaceBucketclass returns a CLI command

func CmdCreateMultiNamespaceBucketclass

func CmdCreateMultiNamespaceBucketclass() *cobra.Command

CmdCreateMultiNamespaceBucketclass returns a CLI command

func CmdCreateNamespaceBucketclass

func CmdCreateNamespaceBucketclass() *cobra.Command

CmdCreateNamespaceBucketclass returns a CLI command

func CmdCreatePlacementBucketClass

func CmdCreatePlacementBucketClass() *cobra.Command

CmdCreatePlacementBucketClass returns a CLI command

func CmdCreateSingleNamespaceBucketclass

func CmdCreateSingleNamespaceBucketclass() *cobra.Command

CmdCreateSingleNamespaceBucketclass returns a CLI command

func CmdDelete

func CmdDelete() *cobra.Command

CmdDelete returns a CLI command

func CmdList

func CmdList() *cobra.Command

CmdList returns a CLI command

func CmdReconcile

func CmdReconcile() *cobra.Command

CmdReconcile returns a CLI command

func CmdStatus

func CmdStatus() *cobra.Command

CmdStatus returns a CLI command

func CreateNamespaceBucketInfoStructure added in v5.13.0

func CreateNamespaceBucketInfoStructure(namespacePolicy nbv1.NamespacePolicy, path string) *nb.NamespaceBucketInfo

CreateNamespaceBucketInfoStructure creates a namespace bucket info for a bucket

func CreateTieringStructure

func CreateTieringStructure(PlacementPolicy nbv1.PlacementPolicy, BucketName string, nbClient nb.Client) (string, error)

CreateTieringStructure creates a tering policy for a bucket

func GetDefaultBucketClass

func GetDefaultBucketClass(Namespace string) (*nbv1.BucketClass, error)

GetDefaultBucketClass will get the default bucket class

func MapBackingstoreToBucketclasses

func MapBackingstoreToBucketclasses(backingstore types.NamespacedName) []reconcile.Request

MapBackingstoreToBucketclasses returns a list of bucketclasses that uses the backingstore in their tiering policy used by bucketclass_contorller to watch backingstore changes

func MapNamespacestoreToBucketclasses

func MapNamespacestoreToBucketclasses(namespacestore types.NamespacedName) []reconcile.Request

MapNamespacestoreToBucketclasses returns a list of bucketclasses that uses the namespacestore in their namespace policy used by bucketclass_contorller to watch namespacestores changes

func ParseBucketClassType

func ParseBucketClassType(cmd *cobra.Command) nbv1.StoreType

ParseBucketClassType parses the --type flag to a StoreType enum

func PopulateCacheNamespaceBucketClass added in v5.13.0

func PopulateCacheNamespaceBucketClass(cmd *cobra.Command, bucketClassSpec *nbv1.BucketClassSpec) ([]string, []string)

PopulateCacheNamespaceBucketClass populates namespace cache bucketclass spec

func PopulateMultiNamespaceBucketClass added in v5.13.0

func PopulateMultiNamespaceBucketClass(cmd *cobra.Command, bucketClassSpec *nbv1.BucketClassSpec) ([]string, []string)

PopulateMultiNamespaceBucketClass populates namespace multi bucketclass spec

func PopulatePlacementBucketClass added in v5.13.0

func PopulatePlacementBucketClass(cmd *cobra.Command, bucketClassSpec *nbv1.BucketClassSpec) ([]string, []string)

PopulatePlacementBucketClass populates namespace cache bucketclass spec

func PopulateSingleNamespaceBucketClass added in v5.13.0

func PopulateSingleNamespaceBucketClass(cmd *cobra.Command, bucketClassSpec *nbv1.BucketClassSpec) ([]string, []string)

PopulateSingleNamespaceBucketClass populates namespace single bucketclass spec

func RunCreateCacheNamespaceBucketClass

func RunCreateCacheNamespaceBucketClass(cmd *cobra.Command, args []string)

RunCreateCacheNamespaceBucketClass runs a CLI command

func RunCreateMultiNamespaceBucketClass

func RunCreateMultiNamespaceBucketClass(cmd *cobra.Command, args []string)

RunCreateMultiNamespaceBucketClass runs a CLI command

func RunCreatePlacementBucketClass

func RunCreatePlacementBucketClass(cmd *cobra.Command, args []string)

RunCreatePlacementBucketClass runs a CLI command

func RunCreateSingleNamespaceBucketClass

func RunCreateSingleNamespaceBucketClass(cmd *cobra.Command, args []string)

RunCreateSingleNamespaceBucketClass runs a CLI command

func RunDelete

func RunDelete(cmd *cobra.Command, args []string)

RunDelete runs a CLI command

func RunList

func RunList(cmd *cobra.Command, args []string)

RunList runs a CLI command

func RunReconcile

func RunReconcile(cmd *cobra.Command, args []string)

RunReconcile runs a CLI command

func RunStatus

func RunStatus(cmd *cobra.Command, args []string)

RunStatus runs a CLI command

func WaitReady

func WaitReady(bucketClass *nbv1.BucketClass) bool

WaitReady waits until the system phase changes to ready by the operator

Types

type Reconciler

type Reconciler struct {
	Request  types.NamespacedName
	Client   client.Client
	Scheme   *runtime.Scheme
	Ctx      context.Context
	Logger   *logrus.Entry
	Recorder record.EventRecorder

	NBClient   nb.Client
	SystemInfo *nb.SystemInfo

	BucketClass *nbv1.BucketClass
	NooBaa      *nbv1.NooBaa
}

Reconciler is the context for loading or reconciling a noobaa system

func NewReconciler

func NewReconciler(
	req types.NamespacedName,
	client client.Client,
	scheme *runtime.Scheme,
	recorder record.EventRecorder,
) *Reconciler

NewReconciler initializes a reconciler to be used for loading or reconciling a bucket class

func (*Reconciler) FinalizeDeletion

func (r *Reconciler) FinalizeDeletion() error

FinalizeDeletion removed the finalizer and updates in order to let the bucket class get reclaimed by kubernetes

func (*Reconciler) Reconcile

func (r *Reconciler) Reconcile() (reconcile.Result, error)

Reconcile reads that state of the cluster for a System object, and makes changes based on the state read and what is in the System.Spec. 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.

func (*Reconciler) ReconcileDeletion

func (r *Reconciler) ReconcileDeletion() error

ReconcileDeletion handles the deletion of a bucket class using the noobaa api

func (*Reconciler) ReconcilePhaseConfiguring

func (r *Reconciler) ReconcilePhaseConfiguring() error

ReconcilePhaseConfiguring updates existing buckets to match the changes in bucket class

func (*Reconciler) ReconcilePhaseVerifying

func (r *Reconciler) ReconcilePhaseVerifying() error

ReconcilePhaseVerifying checks that we have the system and secret needed to reconcile

func (*Reconciler) ReconcilePhases

func (r *Reconciler) ReconcilePhases() error

ReconcilePhases runs the reconcile flow and populates System.Status.

func (*Reconciler) SetPhase

func (r *Reconciler) SetPhase(phase nbv1.BucketClassPhase, reason string, message string)

SetPhase updates the status phase and conditions

func (*Reconciler) UpdateBucketClass

func (r *Reconciler) UpdateBucketClass(bucketNames []string) error

UpdateBucketClass updates all buckets that are assigned to a BucketClass

func (*Reconciler) UpdateStatus

func (r *Reconciler) UpdateStatus() error

UpdateStatus updates the bucket class status in kubernetes from the memory

Jump to

Keyboard shortcuts

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