certificate

package
v0.0.0-...-d0c0f99 Latest Latest
Warning

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

Go to latest
Published: Jul 19, 2017 License: Apache-2.0 Imports: 41 Imported by: 0

Documentation

Index

Constants

View Source
const (
	LetsEncryptACMEUrl = "https://acme-staging.apiv1.letsencrypt.org/directory"
)

Variables

This section is empty.

Functions

func CheckCertificates

func CheckCertificates(kubeClient clientset.Interface, extClient tcs.ExtensionInterface, opt config.Options)

Types

type ACMECertData

type ACMECertData struct {
	Domains    *DomainCollection
	Cert       []byte
	PrivateKey []byte
}

func NewACMECertDataFromSecret

func NewACMECertDataFromSecret(s *apiv1.Secret) (ACMECertData, error)

func (ACMECertData) EqualDomains

func (a ACMECertData) EqualDomains(c *x509.Certificate) bool

func (*ACMECertData) ToSecret

func (c *ACMECertData) ToSecret(name, namespace string) *apiv1.Secret

type ACMECertDetails

type ACMECertDetails struct {
	Domain        []string `json:"domains"`
	CertURL       string   `json:"certUrl"`
	CertStableURL string   `json:"certStableUrl"`
	AccountRef    string   `json:"accountRef,omitempty"`
}

type ACMEClient

type ACMEClient struct {
	*acme.Client

	HTTPProviderLock sync.Mutex
	// contains filtered or unexported fields
}

func NewACMEClient

func NewACMEClient(config *ACMEConfig) (*ACMEClient, error)

type ACMEConfig

type ACMEConfig struct {
	Provider            string
	ACMEServerUrl       string
	ProviderCredentials map[string][]byte
	UserData            *ACMEUserData
	UserDataMap         map[string][]byte
}

type ACMEUserData

type ACMEUserData struct {
	Email        string                     `json:"email"`
	Registration *acme.RegistrationResource `json:"registration"`
	Key          []byte                     `json:"key"`
}

func (*ACMEUserData) GetEmail

func (u *ACMEUserData) GetEmail() string

func (*ACMEUserData) GetPrivateKey

func (u *ACMEUserData) GetPrivateKey() crypto.PrivateKey

func (*ACMEUserData) GetRegistration

func (u *ACMEUserData) GetRegistration() *acme.RegistrationResource

func (*ACMEUserData) Json

func (u *ACMEUserData) Json() []byte

type Controller

type Controller struct {
	KubeClient clientset.Interface
	ExtClient  acs.ExtensionInterface
	Opt        config.Options

	sync.Mutex
	// contains filtered or unexported fields
}

func NewController

func NewController(kubeClient clientset.Interface, extClient acs.ExtensionInterface, opt config.Options, tpr *api.Certificate) *Controller

func (*Controller) HandleIngress

func (c *Controller) HandleIngress(ingress *api.Ingress) error

func (*Controller) Process

func (c *Controller) Process() error

type DomainCollection

type DomainCollection []string

func NewDomainCollection

func NewDomainCollection(domain ...string) *DomainCollection

func (*DomainCollection) Append

func (d *DomainCollection) Append(domain ...string) *DomainCollection

func (*DomainCollection) FromString

func (d *DomainCollection) FromString(data string) *DomainCollection

func (*DomainCollection) String

func (d *DomainCollection) String() string

func (*DomainCollection) StringSlice

func (d *DomainCollection) StringSlice() []string

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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