Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Controller ¶
type Controller struct {
// contains filtered or unexported fields
}
Controller is an implementation of the queueingController for certificate requests.
func New ¶
func New(issuerType string, issuerConstructor IssuerConstructor, registerExtraInformers ...RegisterExtraInformerFn) *Controller
New will construct a new certificaterequest controller using the given Issuer implementation. Note: the registerExtraInfromers passed here will be 'waited' for when starting to ensure their corresponding listers have synced. The caller is responsible for ensuring the informer work functions are setup correctly on any informer. It's also the callers responsibility to ensure the Run function on the informer is called in order to start the reflector. This is handled automatically when the informer factory's Start method is called, if the given informer was obtained using a SharedInformerFactory.
func (*Controller) ProcessItem ¶
func (c *Controller) ProcessItem(ctx context.Context, key string) error
ProcessItem is the worker function that will be called with a new key from the workqueue. A key corresponds to a certificate request object.
func (*Controller) Register ¶
func (c *Controller) Register(ctx *controllerpkg.Context) (workqueue.RateLimitingInterface, []cache.InformerSynced, error)
Register registers and constructs the controller using the provided context. It returns the workqueue to be used to enqueue items, a list of InformerSynced functions that must be synced, or an error.
func (*Controller) Sync ¶
func (c *Controller) Sync(ctx context.Context, cr *cmapi.CertificateRequest) (err error)
type Issuer ¶
type Issuer interface {
Sign(context.Context, *v1.CertificateRequest, v1.GenericIssuer) (*issuer.IssueResponse, error)
}
Issuer implements the functionality to sign a certificate request for a particular issuer type.
type IssuerConstructor ¶
type IssuerConstructor func(*controllerpkg.Context) Issuer
Issuer Contractor builds a Issuer instance using the given controller context.
type RegisterExtraInformerFn ¶ added in v1.10.0
type RegisterExtraInformerFn func(*controllerpkg.Context, logr.Logger, workqueue.RateLimitingInterface) ([]cache.InformerSynced, error)
RegisterExtraInformerFn is a function used by CertificateRequest controller implementations to add custom workqueue functions based on informers not covered in the main shared controller implementation. The returned set of InformerSyncs will be waited on when the controller starts.