factory

package
v1.0.0-rc1 Latest Latest
Warning

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

Go to latest
Published: Sep 8, 2022 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CertManagerConfig

type CertManagerConfig struct {
	// ComponentName represents the name of the component which will use this CertManager.
	ComponentName string
	// CommonName is CN of cert.
	CommonName string
	// CertDir represents the dir of local file system where the cert related files will be stored.
	CertDir string
	// Organizations is O of cert.
	Organizations []string
	// DNSNames contain a list of DNS names this component will use.
	// Note:
	// If DNSGetter is set and it can get dns names with no error returned,
	// DNSNames will be ignored and what got from DNSGetter will be used.
	DNSNames []string
	// DNSGetter can get dns names at runtime. If no error returned when getting dns names,
	// these dns names will be used in the cert instead of the DNSNames.
	DNSGetter
	// IPs contain a list of IP this component will use.
	// Note:
	// If IPGetter is set and it can get ips with no error returned,
	// IPs will be ignored and what got from IPGetter will be used.
	IPs []net.IP
	// IPGetter can get ips at runtime. If no error returned when getting ips,
	// these ips will be used in the cert instead of the IPs.
	IPGetter
	// SignerName can specified the signer of Kubernetes, which can be one of
	// 1. "kubernetes.io/kube-apiserver-client"
	// 2. "kubernetes.io/kube-apiserver-client-kubelet"
	// 3. "kubernetes.io/kubelet-serving"
	// More details can be found at k8s.io/api/certificates/v1
	SignerName string
	// ForServerUsage indicates the usage of this cert.
	// If set, UsageServerAuth will be used, otherwise UsageClientAuth will be used.
	// Additionally, UsageKeyEncipherment and UsageDigitalSignature are always used.
	ForServerUsage bool
}

CertManagerConfig specifies the attributes of the created CertManager

type CertManagerFactory

type CertManagerFactory interface {
	// New function will create the CertManager as what CertManagerConfig specified.
	New(*CertManagerConfig) (certificate.Manager, error)
}

CertManagerFactory knows how to create CertManager for OpenYurt Components.

func NewCertManagerFactory

func NewCertManagerFactory(clientSet kubernetes.Interface) CertManagerFactory

type DNSGetter

type DNSGetter func() ([]string, error)

type IPGetter

type IPGetter func() ([]net.IP, error)

Jump to

Keyboard shortcuts

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