summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/xenolf/lego/providers/http
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/xenolf/lego/providers/http')
-rw-r--r--vendor/github.com/xenolf/lego/providers/http/memcached/README.md15
-rw-r--r--vendor/github.com/xenolf/lego/providers/http/memcached/memcached.go60
-rw-r--r--vendor/github.com/xenolf/lego/providers/http/memcached/memcached_test.go111
-rw-r--r--vendor/github.com/xenolf/lego/providers/http/webroot/webroot.go58
-rw-r--r--vendor/github.com/xenolf/lego/providers/http/webroot/webroot_test.go46
5 files changed, 0 insertions, 290 deletions
diff --git a/vendor/github.com/xenolf/lego/providers/http/memcached/README.md b/vendor/github.com/xenolf/lego/providers/http/memcached/README.md
deleted file mode 100644
index f14d216df..000000000
--- a/vendor/github.com/xenolf/lego/providers/http/memcached/README.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# Memcached http provider
-
-Publishes challenges into memcached where they can be retrieved by nginx. Allows
-specifying multiple memcached servers and the responses will be published to all
-of them, making it easier to verify when your domain is hosted on a cluster of
-servers.
-
-Example nginx config:
-
-```
- location /.well-known/acme-challenge/ {
- set $memcached_key "$uri";
- memcached_pass 127.0.0.1:11211;
- }
-```
diff --git a/vendor/github.com/xenolf/lego/providers/http/memcached/memcached.go b/vendor/github.com/xenolf/lego/providers/http/memcached/memcached.go
deleted file mode 100644
index 9ac8b811d..000000000
--- a/vendor/github.com/xenolf/lego/providers/http/memcached/memcached.go
+++ /dev/null
@@ -1,60 +0,0 @@
-// Package memcached implements a HTTP provider for solving the HTTP-01 challenge using memcached
-// in combination with a webserver.
-package memcached
-
-import (
- "fmt"
- "path"
-
- "github.com/rainycape/memcache"
- "github.com/xenolf/lego/acme"
-)
-
-// HTTPProvider implements ChallengeProvider for `http-01` challenge
-type MemcachedProvider struct {
- hosts []string
-}
-
-// NewHTTPProvider returns a HTTPProvider instance with a configured webroot path
-func NewMemcachedProvider(hosts []string) (*MemcachedProvider, error) {
- if len(hosts) == 0 {
- return nil, fmt.Errorf("No memcached hosts provided")
- }
-
- c := &MemcachedProvider{
- hosts: hosts,
- }
-
- return c, nil
-}
-
-// Present makes the token available at `HTTP01ChallengePath(token)` by creating a file in the given webroot path
-func (w *MemcachedProvider) Present(domain, token, keyAuth string) error {
- var errs []error
-
- challengePath := path.Join("/", acme.HTTP01ChallengePath(token))
- for _, host := range w.hosts {
- mc, err := memcache.New(host)
- if err != nil {
- errs = append(errs, err)
- continue
- }
- mc.Add(&memcache.Item{
- Key: challengePath,
- Value: []byte(keyAuth),
- Expiration: 60,
- })
- }
-
- if len(errs) == len(w.hosts) {
- return fmt.Errorf("Unable to store key in any of the memcache hosts -> %v", errs)
- }
-
- return nil
-}
-
-// CleanUp removes the file created for the challenge
-func (w *MemcachedProvider) CleanUp(domain, token, keyAuth string) error {
- // Memcached will clean up itself, that's what expiration is for.
- return nil
-}
diff --git a/vendor/github.com/xenolf/lego/providers/http/memcached/memcached_test.go b/vendor/github.com/xenolf/lego/providers/http/memcached/memcached_test.go
deleted file mode 100644
index 287a33304..000000000
--- a/vendor/github.com/xenolf/lego/providers/http/memcached/memcached_test.go
+++ /dev/null
@@ -1,111 +0,0 @@
-package memcached
-
-import (
- "os"
- "path"
- "strings"
- "testing"
-
- "github.com/rainycape/memcache"
- "github.com/stretchr/testify/assert"
- "github.com/xenolf/lego/acme"
-)
-
-var (
- memcachedHosts []string
-)
-
-const (
- domain = "lego.test"
- token = "foo"
- keyAuth = "bar"
-)
-
-func init() {
- memcachedHostsStr := os.Getenv("MEMCACHED_HOSTS")
- if len(memcachedHostsStr) > 0 {
- memcachedHosts = strings.Split(memcachedHostsStr, ",")
- }
-}
-
-func TestNewMemcachedProviderEmpty(t *testing.T) {
- emptyHosts := make([]string, 0)
- _, err := NewMemcachedProvider(emptyHosts)
- assert.EqualError(t, err, "No memcached hosts provided")
-}
-
-func TestNewMemcachedProviderValid(t *testing.T) {
- if len(memcachedHosts) == 0 {
- t.Skip("Skipping memcached tests")
- }
- _, err := NewMemcachedProvider(memcachedHosts)
- assert.NoError(t, err)
-}
-
-func TestMemcachedPresentSingleHost(t *testing.T) {
- if len(memcachedHosts) == 0 {
- t.Skip("Skipping memcached tests")
- }
- p, err := NewMemcachedProvider(memcachedHosts[0:1])
- assert.NoError(t, err)
-
- challengePath := path.Join("/", acme.HTTP01ChallengePath(token))
-
- err = p.Present(domain, token, keyAuth)
- assert.NoError(t, err)
- mc, err := memcache.New(memcachedHosts[0])
- assert.NoError(t, err)
- i, err := mc.Get(challengePath)
- assert.NoError(t, err)
- assert.Equal(t, i.Value, []byte(keyAuth))
-}
-
-func TestMemcachedPresentMultiHost(t *testing.T) {
- if len(memcachedHosts) <= 1 {
- t.Skip("Skipping memcached multi-host tests")
- }
- p, err := NewMemcachedProvider(memcachedHosts)
- assert.NoError(t, err)
-
- challengePath := path.Join("/", acme.HTTP01ChallengePath(token))
-
- err = p.Present(domain, token, keyAuth)
- assert.NoError(t, err)
- for _, host := range memcachedHosts {
- mc, err := memcache.New(host)
- assert.NoError(t, err)
- i, err := mc.Get(challengePath)
- assert.NoError(t, err)
- assert.Equal(t, i.Value, []byte(keyAuth))
- }
-}
-
-func TestMemcachedPresentPartialFailureMultiHost(t *testing.T) {
- if len(memcachedHosts) == 0 {
- t.Skip("Skipping memcached tests")
- }
- hosts := append(memcachedHosts, "5.5.5.5:11211")
- p, err := NewMemcachedProvider(hosts)
- assert.NoError(t, err)
-
- challengePath := path.Join("/", acme.HTTP01ChallengePath(token))
-
- err = p.Present(domain, token, keyAuth)
- assert.NoError(t, err)
- for _, host := range memcachedHosts {
- mc, err := memcache.New(host)
- assert.NoError(t, err)
- i, err := mc.Get(challengePath)
- assert.NoError(t, err)
- assert.Equal(t, i.Value, []byte(keyAuth))
- }
-}
-
-func TestMemcachedCleanup(t *testing.T) {
- if len(memcachedHosts) == 0 {
- t.Skip("Skipping memcached tests")
- }
- p, err := NewMemcachedProvider(memcachedHosts)
- assert.NoError(t, err)
- assert.NoError(t, p.CleanUp(domain, token, keyAuth))
-}
diff --git a/vendor/github.com/xenolf/lego/providers/http/webroot/webroot.go b/vendor/github.com/xenolf/lego/providers/http/webroot/webroot.go
deleted file mode 100644
index 4bf211f39..000000000
--- a/vendor/github.com/xenolf/lego/providers/http/webroot/webroot.go
+++ /dev/null
@@ -1,58 +0,0 @@
-// Package webroot implements a HTTP provider for solving the HTTP-01 challenge using web server's root path.
-package webroot
-
-import (
- "fmt"
- "io/ioutil"
- "os"
- "path"
-
- "github.com/xenolf/lego/acme"
-)
-
-// HTTPProvider implements ChallengeProvider for `http-01` challenge
-type HTTPProvider struct {
- path string
-}
-
-// NewHTTPProvider returns a HTTPProvider instance with a configured webroot path
-func NewHTTPProvider(path string) (*HTTPProvider, error) {
- if _, err := os.Stat(path); os.IsNotExist(err) {
- return nil, fmt.Errorf("Webroot path does not exist")
- }
-
- c := &HTTPProvider{
- path: path,
- }
-
- return c, nil
-}
-
-// Present makes the token available at `HTTP01ChallengePath(token)` by creating a file in the given webroot path
-func (w *HTTPProvider) Present(domain, token, keyAuth string) error {
- var err error
-
- challengeFilePath := path.Join(w.path, acme.HTTP01ChallengePath(token))
- err = os.MkdirAll(path.Dir(challengeFilePath), 0755)
- if err != nil {
- return fmt.Errorf("Could not create required directories in webroot for HTTP challenge -> %v", err)
- }
-
- err = ioutil.WriteFile(challengeFilePath, []byte(keyAuth), 0644)
- if err != nil {
- return fmt.Errorf("Could not write file in webroot for HTTP challenge -> %v", err)
- }
-
- return nil
-}
-
-// CleanUp removes the file created for the challenge
-func (w *HTTPProvider) CleanUp(domain, token, keyAuth string) error {
- var err error
- err = os.Remove(path.Join(w.path, acme.HTTP01ChallengePath(token)))
- if err != nil {
- return fmt.Errorf("Could not remove file in webroot after HTTP challenge -> %v", err)
- }
-
- return nil
-}
diff --git a/vendor/github.com/xenolf/lego/providers/http/webroot/webroot_test.go b/vendor/github.com/xenolf/lego/providers/http/webroot/webroot_test.go
deleted file mode 100644
index 99c930ed3..000000000
--- a/vendor/github.com/xenolf/lego/providers/http/webroot/webroot_test.go
+++ /dev/null
@@ -1,46 +0,0 @@
-package webroot
-
-import (
- "io/ioutil"
- "os"
- "testing"
-)
-
-func TestHTTPProvider(t *testing.T) {
- webroot := "webroot"
- domain := "domain"
- token := "token"
- keyAuth := "keyAuth"
- challengeFilePath := webroot + "/.well-known/acme-challenge/" + token
-
- os.MkdirAll(webroot+"/.well-known/acme-challenge", 0777)
- defer os.RemoveAll(webroot)
-
- provider, err := NewHTTPProvider(webroot)
- if err != nil {
- t.Errorf("Webroot provider error: got %v, want nil", err)
- }
-
- err = provider.Present(domain, token, keyAuth)
- if err != nil {
- t.Errorf("Webroot provider present() error: got %v, want nil", err)
- }
-
- if _, err := os.Stat(challengeFilePath); os.IsNotExist(err) {
- t.Error("Challenge file was not created in webroot")
- }
-
- data, err := ioutil.ReadFile(challengeFilePath)
- if err != nil {
- t.Errorf("Webroot provider ReadFile() error: got %v, want nil", err)
- }
- dataStr := string(data)
- if dataStr != keyAuth {
- t.Errorf("Challenge file content: got %q, want %q", dataStr, keyAuth)
- }
-
- err = provider.CleanUp(domain, token, keyAuth)
- if err != nil {
- t.Errorf("Webroot provider CleanUp() error: got %v, want nil", err)
- }
-}