Versions in this module Expand all Collapse all v0 v0.1.0 Oct 18, 2019 Changes in this version + const DefaultDirectoryURL + const DefaultKeyType + type AccountCreator interface + CreateAccount func(key crypto.PrivateKey, email string) (string, error) + type Agent struct + ACMEAccounts AccountCreator + Certificates CertificateObtainer + Domains DomainRepository + Users UserRepository + func (a *Agent) RegisterDomain(userID uuid.UUID, domainName string) error + func (a *Agent) RegisterUser(userID uuid.UUID, email string) error + func (a *Agent) WriteCertificate(userID uuid.UUID, domainName string, w io.Writer) error + func (a *Agent) WritePrivateKey(userID uuid.UUID, domainName string, w io.Writer) error + type CertificateInfo struct + AccountURL string + Certificate []byte + IssuerCertificate []byte + PrivateKey []byte + URL string + type CertificateObtainer interface + ObtainCertificate func(CertificateRequest) (*CertificateInfo, error) + type CertificateRequest struct + AccountKey crypto.PrivateKey + AccountURL string + Bundle bool + Domains []string + Email string + KeyType certutil.KeyType + type Domain struct + Certificate []byte + Name string + PrivateKey []byte + UserID uuid.UUID + func (d Domain) IsZero() bool + type DomainRepository interface + GetDomain func(string) (Domain, error) + UpdateDomain func(string, func(d *Domain) error) (Domain, error) + type FileBasedCertificateObtainer struct + CertFile string + KeyFile string + T *testing.T + func (c *FileBasedCertificateObtainer) AssertIssuedCertificate(cert []byte) + func (c *FileBasedCertificateObtainer) ObtainCertificate(req CertificateRequest) (*CertificateInfo, error) + type InMemoryAccountCreator struct + func (ac *InMemoryAccountCreator) AssertCreated(t *testing.T, email string, user User) + func (ac *InMemoryAccountCreator) CreateAccount(key crypto.PrivateKey, email string) (string, error) + type InMemoryDomainRepository struct + func (r *InMemoryDomainRepository) GetDomain(domainName string) (Domain, error) + func (r *InMemoryDomainRepository) UpdateDomain(domainName string, f func(*Domain) error) (Domain, error) + type InMemoryUserRepository struct + func (r *InMemoryUserRepository) GetUser(id uuid.UUID) (User, error) + func (r *InMemoryUserRepository) UpdateUser(id uuid.UUID, f func(*User) error) (User, error) + type User struct + AccountURL string + ID uuid.UUID + Key crypto.PrivateKey + func (c User) IsZero() bool + type UserRepository interface + GetUser func(uuid.UUID) (User, error) + UpdateUser func(uuid.UUID, func(c *User) error) (User, error)