Documentation
¶
Index ¶
- Variables
- func DefaultItemBasedRateLimiter() workqueue.RateLimiter
- func HandleOwnedResourceNamespacedFunc(log logr.Logger, queue workqueue.RateLimitingInterface, ...) func(obj interface{})
- func Known() map[string]Constructor
- func Register(name string, fn Constructor)
- type ACMEOptions
- type BlockingEventHandler
- type Builder
- type CertificateOptions
- type Constructor
- type Context
- type IngressShimOptions
- type Interface
- type IssuerOptions
- func (o IssuerOptions) CalculateDurationUntilRenew(ctx context.Context, cert *x509.Certificate, crt *cmapi.Certificate) time.Duration
- func (o IssuerOptions) CanUseAmbientCredentials(iss cmapi.GenericIssuer) bool
- func (o IssuerOptions) CertificateNeedsRenew(ctx context.Context, cert *x509.Certificate, crt *cmapi.Certificate) bool
- func (o IssuerOptions) ResourceNamespace(iss cmapi.GenericIssuer) string
- type QueuingEventHandler
- type RunFunc
- type SchedulerOptions
- type WebhookBootstrapOptions
Constants ¶
This section is empty.
Variables ¶
var (
KeyFunc = cache.DeletionHandlingMetaNamespaceKeyFunc
)
Functions ¶
func DefaultItemBasedRateLimiter ¶ added in v0.6.0
func DefaultItemBasedRateLimiter() workqueue.RateLimiter
func HandleOwnedResourceNamespacedFunc ¶ added in v0.9.0
func HandleOwnedResourceNamespacedFunc(log logr.Logger, queue workqueue.RateLimitingInterface, ownerGVK schema.GroupVersionKind, get func(namespace, name string) (interface{}, error)) func(obj interface{})
func Known ¶
func Known() map[string]Constructor
Known returns a map of the registered controller Constructors
func Register ¶
func Register(name string, fn Constructor)
Register registers a controller constructor with the controller package
Types ¶
type ACMEOptions ¶
type ACMEOptions struct {
// ACMEHTTP01SolverImage is the image to use for solving ACME HTTP01
// challenges
HTTP01SolverImage string
// HTTP01SolverResourceRequestCPU defines the ACME pod's resource request CPU size
HTTP01SolverResourceRequestCPU resource.Quantity
// HTTP01SolverResourceRequestMemory defines the ACME pod's resource request Memory size
HTTP01SolverResourceRequestMemory resource.Quantity
// HTTP01SolverResourceLimitsCPU defines the ACME pod's resource limits CPU size
HTTP01SolverResourceLimitsCPU resource.Quantity
// HTTP01SolverResourceLimitsMemory defines the ACME pod's resource limits Memory size
HTTP01SolverResourceLimitsMemory resource.Quantity
// DNS01CheckAuthoritative is a flag for controlling if auth nss are used
// for checking propogation of an RR. This is the ideal scenario
DNS01CheckAuthoritative bool
// DNS01Nameservers is a list of nameservers to use when performing self-checks
// for ACME DNS01 validations.
DNS01Nameservers []string
}
type BlockingEventHandler ¶
type BlockingEventHandler struct {
WorkFunc func(obj interface{})
}
BlockingEventHandler is an implementation of cache.ResourceEventHandler that simply synchronously calls it's WorkFunc upon calls to OnAdd, OnUpdate or OnDelete.
func (*BlockingEventHandler) Enqueue ¶
func (b *BlockingEventHandler) Enqueue(obj interface{})
func (*BlockingEventHandler) OnAdd ¶
func (b *BlockingEventHandler) OnAdd(obj interface{})
func (*BlockingEventHandler) OnDelete ¶
func (b *BlockingEventHandler) OnDelete(obj interface{})
func (*BlockingEventHandler) OnUpdate ¶
func (b *BlockingEventHandler) OnUpdate(old, new interface{})
type Builder ¶ added in v0.10.0
type Builder struct {
// contains filtered or unexported fields
}
Builder is used to build controllers that implement the queuingController interface
func NewBuilder ¶ added in v0.10.0
New creates a basic Builder, setting the sync call to the one given
type CertificateOptions ¶ added in v0.6.0
type CertificateOptions struct {
// EnableOwnerRef controls whether the certificate is configured as an owner of
// secret where the effective TLS certificate is stored.
EnableOwnerRef bool
}
type Constructor ¶
Constructor is a function that creates a new control loop given a controller Context.
type Context ¶
type Context struct {
// RootContext is the root context for the controller
RootContext context.Context
// StopCh is a channel that will be closed when the controller is signalled
// to exit
StopCh <-chan struct{}
// RESTConfig is the loaded Kubernetes apiserver rest client configuration
RESTConfig *rest.Config
// Client is a Kubernetes clientset
Client kubernetes.Interface
// CMClient is a cert-manager clientset
CMClient clientset.Interface
// Recorder to record events to
Recorder record.EventRecorder
// SharedIndexInformer instances for Kubernetes types
KubeSharedInformerFactory kubeinformers.SharedInformerFactory
// instances
SharedInformerFactory informers.SharedInformerFactory
// Namespace is the namespace to operate within.
// If unset, operates on all namespaces
Namespace string
// Clock should be used to access the current time instead of relying on
// time.Now, to make it easier to test controllers that utilise time
Clock clock.Clock
IssuerOptions
ACMEOptions
IngressShimOptions
CertificateOptions
SchedulerOptions
WebhookBootstrapOptions
}
Context contains various types that are used by controller implementations. We purposely don't have specific informers/listers here, and instead keep a reference to a SharedInformerFactory so that controllers can choose themselves which listers are required.
type IngressShimOptions ¶
type Interface ¶
type Interface interface {
// Run will start a controller. 'workers' should be the number of
// independent goroutines for this controller in question that are to be
// run, and the workers should shut down upon a signal on stopCh.
// This method should block until all workers have exited cleanly, thus
// allowing for graceful shutdown of control loops.
Run(workers int, stopCh <-chan struct{}) error
// AdditionalInformers is a list of additional informer 'Run' functions
// that will be started when the shared informer factories 'Start' function
// is called.
AdditionalInformers() []RunFunc
}
Interface represents a controller that can be run.
type IssuerOptions ¶
type IssuerOptions struct {
// ClusterResourceNamespace is the namespace to store resources created by
// non-namespaced resources (e.g. ClusterIssuer) in.
ClusterResourceNamespace string
// ClusterIssuerAmbientCredentials controls whether a cluster issuer should
// pick up ambient credentials, such as those from metadata services, to
// construct clients.
ClusterIssuerAmbientCredentials bool
// IssuerAmbientCredentials controls whether an issuer should pick up ambient
// credentials, such as those from metadata services, to construct clients.
IssuerAmbientCredentials bool
// RenewBeforeExpiryDuration is the default 'renew before expiry' time for Certificates.
// Once a certificate is within this duration until expiry, a new Certificate
// will be attempted to be issued.
RenewBeforeExpiryDuration time.Duration
}
func (IssuerOptions) CalculateDurationUntilRenew ¶ added in v0.7.0
func (o IssuerOptions) CalculateDurationUntilRenew(ctx context.Context, cert *x509.Certificate, crt *cmapi.Certificate) time.Duration
CalculateDurationUntilRenew calculates how long cert-manager should wait to until attempting to renew this certificate resource.
func (IssuerOptions) CanUseAmbientCredentials ¶
func (o IssuerOptions) CanUseAmbientCredentials(iss cmapi.GenericIssuer) bool
func (IssuerOptions) CertificateNeedsRenew ¶
func (o IssuerOptions) CertificateNeedsRenew(ctx context.Context, cert *x509.Certificate, crt *cmapi.Certificate) bool
func (IssuerOptions) ResourceNamespace ¶
func (o IssuerOptions) ResourceNamespace(iss cmapi.GenericIssuer) string
type QueuingEventHandler ¶
type QueuingEventHandler struct {
Queue workqueue.RateLimitingInterface
}
QueuingEventHandler is an implementation of cache.ResourceEventHandler that simply queues objects that are added/updated/deleted.
func (*QueuingEventHandler) Enqueue ¶
func (q *QueuingEventHandler) Enqueue(obj interface{})
func (*QueuingEventHandler) OnAdd ¶
func (q *QueuingEventHandler) OnAdd(obj interface{})
func (*QueuingEventHandler) OnDelete ¶
func (q *QueuingEventHandler) OnDelete(obj interface{})
func (*QueuingEventHandler) OnUpdate ¶
func (q *QueuingEventHandler) OnUpdate(old, new interface{})
type SchedulerOptions ¶ added in v0.8.0
type SchedulerOptions struct {
// MaxConcurrentChallenges determines the maximum number of challenges that can be
// scheduled as 'processing' at once.
MaxConcurrentChallenges int
}
type WebhookBootstrapOptions ¶ added in v0.10.0
type WebhookBootstrapOptions struct {
// Namespace is the namespace the webhook CA and serving secret will be
// created in.
// If not specified, it will default to the same namespace as cert-manager.
Namespace string
// CASecretName is the name of the secret containing the webhook's root CA
CASecretName string
// ServingSecretName is the name of the secret containing the webhook's
// serving certificate
ServingSecretName string
// DNSNames are the dns names that should be set on the serving certificate
DNSNames []string
}
Directories
¶
| Path | Synopsis |
|---|---|
|
Package test contains testing utilities used for constructing fake Contexts which can be used during tests.
|
Package test contains testing utilities used for constructing fake Contexts which can be used during tests. |