Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RegisterIssuer ¶
func RegisterIssuer(name string, c IssuerConstructor)
Register will register an issuer constructor so it can be used within the application. 'name' should be unique, and should be used to identify this issuer. TODO: move this method to be on Factory, and invent a way to obtain a SharedFactory. This will make testing easier.
Types ¶
type Helper ¶
type Helper interface {
GetGenericIssuer(ref cmapi.ObjectReference, ns string) (cmapi.GenericIssuer, error)
}
func NewHelper ¶
func NewHelper(issuerLister cmlisters.IssuerLister, clusterIssuerLister cmlisters.ClusterIssuerLister) Helper
NewHelper will construct a new instance of a Helper using values supplied on the provided controller context.
type Interface ¶
type Interface interface { // Setup initialises the issuer. This may include registering accounts with // a service, creating a CA and storing it somewhere, or verifying // credentials and authorization with a remote server. Setup(ctx context.Context) error // Issue attempts to issue a certificate as described by the certificate // resource given Issue(context.Context, *v1alpha1.Certificate) (*IssueResponse, error) }
type IssueResponse ¶
type IssueResponse struct { // Certificate is the certificate resource that should be stored in the // target secret. // It will only be set if the corresponding private key is also set on the // IssuerResponse structure. Certificate []byte // PrivateKey is the private key that should be stored in the target secret. // If set, the certificate and CA field will also be overwritten with the // contents of the field. // If Certificate is not set, the existing Certificate will be overwritten. PrivateKey []byte // CA is the CA certificate that should be stored in the target secret. // This field should only be set if the private key field is set, similar // to the Certificate field. CA []byte }
type IssuerConstructor ¶
type IssuerConstructor func(*controller.Context, v1alpha1.GenericIssuer) (Interface, error)
issuerConstructor constructs an issuer given an Issuer resource and a Context. An error will be returned if the appropriate issuer is not registered.
type IssuerFactory ¶
type IssuerFactory interface {
IssuerFor(v1alpha1.GenericIssuer) (Interface, error)
}
IssuerFactory is an interface that can be used to obtain Issuer implementations. It determines which issuer implementation to use by introspecting the given Issuer resource.
func NewFakeFactory ¶
func NewFakeFactory(ctx *controller.Context, constructor IssuerConstructor) IssuerFactory
func NewIssuerFactory ¶
func NewIssuerFactory(ctx *controller.Context) IssuerFactory
NewIssuerFactory returns a new issuer factory with the given issuer context. The context will be injected into each Issuer upon creation.
Directories ¶
Path | Synopsis |
---|---|
dns/acmedns
Package acmedns implements a DNS provider for solving DNS-01 challenges using Joohoi's acme-dns project.
|
Package acmedns implements a DNS provider for solving DNS-01 challenges using Joohoi's acme-dns project. |
dns/akamai
Package akamai implements a DNS provider for solving the DNS-01 challenge using Akamai FastDNS.
|
Package akamai implements a DNS provider for solving the DNS-01 challenge using Akamai FastDNS. |
dns/azuredns
Package azuredns implements a DNS provider for solving the DNS-01 challenge using Azure DNS.
|
Package azuredns implements a DNS provider for solving the DNS-01 challenge using Azure DNS. |
dns/clouddns
Package clouddns implements a DNS provider for solving the DNS-01 challenge using Google Cloud DNS.
|
Package clouddns implements a DNS provider for solving the DNS-01 challenge using Google Cloud DNS. |
dns/cloudflare
Package cloudflare implements a DNS provider for solving the DNS-01 challenge using cloudflare DNS.
|
Package cloudflare implements a DNS provider for solving the DNS-01 challenge using cloudflare DNS. |
dns/digitalocean
Package digitalocean implements a DNS provider for solving the DNS-01 challenge using digitalocean DNS.
|
Package digitalocean implements a DNS provider for solving the DNS-01 challenge using digitalocean DNS. |
dns/route53
Package route53 implements a DNS provider for solving the DNS-01 challenge using AWS Route 53 DNS.
|
Package route53 implements a DNS provider for solving the DNS-01 challenge using AWS Route 53 DNS. |