Categorygithub.com/goenning/azcertcache
modulepackage
0.0.0-20220607193802-7020cbfca7c7
Repository: https://github.com/goenning/azcertcache.git
Documentation: pkg.go.dev

# README

GoDoc Go Report Card

azcertcache

Azure Blob Storage cache for acme/autocert written in Go.

Example

containerName := "autocertcache"
cache, err := azcertcache.New("<account name>", "<account key>", containerName)
if err != nil {
  // Handle error
}

m := autocert.Manager{
  Prompt:     autocert.AcceptTOS,
  Cache:      cache,
}

s := &http.Server{
  Addr:      ":https",
  TLSConfig: &tls.Config{GetCertificate: m.GetCertificate},
}

s.ListenAndServeTLS("", "")

Performance

This is just a reminder that autocert has an internal in-memory cache that is used before quering this long-term cache. So you don't need to worry about your Azure Blob Storage instance being hit many times just to get the same certificate. It should only do once per process+key.

Thanks

Inspired by https://github.com/danilobuerger/autocert-s3-cache

License

MIT

# Functions

New creates an cache instance that can be used with autocert.Cache.
NewWithEndpoint creates an cache instance that can be used with autocert.Cache.

# Variables

ErrEmptyContainerName is returned when given container name is empty.

# Structs

Cache provides an Azure Blob Storage backend to the autocert cache.