Documentation ¶
Overview ¶
The Input Reconciler calls a simple func() error whenever a storage event is received for any of: * IssuedCertificates * CertificateRequests for a given cluster or set of clusters.
Input Reconcilers can be be constructed from either a single Manager (watch events in a single cluster) or a ClusterWatcher (watch events in multiple clusters).
Utility for manually building input snapshots. Used primarily in tests.
Index ¶
- func RegisterMultiClusterReconciler(ctx context.Context, clusters multicluster.ClusterWatcher, ...) input.MultiClusterReconciler
- func RegisterSingleClusterReconciler(ctx context.Context, mgr manager.Manager, ...) (input.SingleClusterReconciler, error)
- type BuildOptions
- type Builder
- type InputSnapshotManualBuilder
- type ReconcileOptions
- type ResourceBuildOptions
- type Snapshot
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RegisterMultiClusterReconciler ¶
func RegisterMultiClusterReconciler( ctx context.Context, clusters multicluster.ClusterWatcher, reconcileFunc input.MultiClusterReconcileFunc, reconcileInterval time.Duration, options ReconcileOptions, predicates ...predicate.Predicate, ) input.MultiClusterReconciler
register the reconcile func with the cluster watcher the reconcileInterval, if greater than 0, will limit the number of reconciles to one per interval.
func RegisterSingleClusterReconciler ¶
func RegisterSingleClusterReconciler( ctx context.Context, mgr manager.Manager, reconcileFunc input.SingleClusterReconcileFunc, reconcileInterval time.Duration, options reconcile.Options, predicates ...predicate.Predicate, ) (input.SingleClusterReconciler, error)
register the reconcile func with the manager the reconcileInterval, if greater than 0, will limit the number of reconciles to one per interval.
Types ¶
type BuildOptions ¶
type BuildOptions struct { // List options for composing a snapshot from IssuedCertificates IssuedCertificates ResourceBuildOptions // List options for composing a snapshot from CertificateRequests CertificateRequests ResourceBuildOptions }
Options for building a snapshot
type Builder ¶
type Builder interface {
BuildSnapshot(ctx context.Context, name string, opts BuildOptions) (Snapshot, error)
}
builds the input snapshot from API Clients. Two types of builders are available: a builder for snapshots of resources across multiple clusters a builder for snapshots of resources within a single cluster
func NewMultiClusterBuilder ¶
func NewMultiClusterBuilder( clusters multicluster.Interface, client multicluster.Client, ) Builder
Produces snapshots of resources across all clusters defined in the ClusterSet
func NewSingleClusterBuilder ¶
Produces snapshots of resources across all clusters defined in the ClusterSet
type InputSnapshotManualBuilder ¶
type InputSnapshotManualBuilder struct {
// contains filtered or unexported fields
}
func NewInputSnapshotManualBuilder ¶
func NewInputSnapshotManualBuilder(name string) *InputSnapshotManualBuilder
func (*InputSnapshotManualBuilder) AddCertificateRequests ¶
func (i *InputSnapshotManualBuilder) AddCertificateRequests(certificateRequests []*certificates_mesh_gloo_solo_io_v1alpha2.CertificateRequest) *InputSnapshotManualBuilder
func (*InputSnapshotManualBuilder) AddIssuedCertificates ¶
func (i *InputSnapshotManualBuilder) AddIssuedCertificates(issuedCertificates []*certificates_mesh_gloo_solo_io_v1alpha2.IssuedCertificate) *InputSnapshotManualBuilder
func (*InputSnapshotManualBuilder) Build ¶
func (i *InputSnapshotManualBuilder) Build() Snapshot
type ReconcileOptions ¶
type ReconcileOptions struct { // Options for reconciling IssuedCertificates IssuedCertificates reconcile.Options // Options for reconciling CertificateRequests CertificateRequests reconcile.Options }
Options for reconcileing a snapshot
type ResourceBuildOptions ¶
type ResourceBuildOptions struct { // List options for composing a snapshot from a resource type ListOptions []client.ListOption // If provided, ensure the resource has been verified before adding it to snapshots Verifier verifier.ServerResourceVerifier }
Options for reading resources of a given type
type Snapshot ¶
type Snapshot interface { // return the set of input IssuedCertificates IssuedCertificates() certificates_mesh_gloo_solo_io_v1alpha2_sets.IssuedCertificateSet // return the set of input CertificateRequests CertificateRequests() certificates_mesh_gloo_solo_io_v1alpha2_sets.CertificateRequestSet // update the status of all input objects which support // the Status subresource (in the local cluster) SyncStatuses(ctx context.Context, c client.Client) error // update the status of all input objects which support // the Status subresource (across multiple clusters) SyncStatusesMultiCluster(ctx context.Context, mcClient multicluster.Client) error // serialize the entire snapshot as JSON MarshalJSON() ([]byte, error) }
the snapshot of input resources consumed by translation
func NewSnapshot ¶
func NewSnapshot( name string, issuedCertificates certificates_mesh_gloo_solo_io_v1alpha2_sets.IssuedCertificateSet, certificateRequests certificates_mesh_gloo_solo_io_v1alpha2_sets.CertificateRequestSet, ) Snapshot