From ba29f9d41d7951bde07dc2e0d6a1471c40bb7145 Mon Sep 17 00:00:00 2001 From: Matthew Holt Date: Thu, 19 Sep 2019 12:42:36 -0600 Subject: httpcaddyfile: Global storage configuration (closes #2758) --- caddyconfig/httpcaddyfile/httptype.go | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'caddyconfig/httpcaddyfile/httptype.go') diff --git a/caddyconfig/httpcaddyfile/httptype.go b/caddyconfig/httpcaddyfile/httptype.go index 6b2ee6b..ff340de 100644 --- a/caddyconfig/httpcaddyfile/httptype.go +++ b/caddyconfig/httpcaddyfile/httptype.go @@ -57,15 +57,18 @@ func (st ServerType) Setup(originalServerBlocks []caddyfile.ServerBlock, dir := segment.Directive() var val interface{} var err error + disp := caddyfile.NewDispenser(segment) switch dir { case "http_port": - val, err = parseHTTPPort(caddyfile.NewDispenser(segment)) + val, err = parseOptHTTPPort(disp) case "https_port": - val, err = parseHTTPSPort(caddyfile.NewDispenser(segment)) + val, err = parseOptHTTPSPort(disp) case "handler_order": - val, err = parseHandlerOrder(caddyfile.NewDispenser(segment)) + val, err = parseOptHandlerOrder(disp) case "experimental_http3": - val, err = parseExperimentalHTTP3(caddyfile.NewDispenser(segment)) + val, err = parseOptExperimentalHTTP3(disp) + case "storage": + val, err = parseOptStorage(disp) default: return nil, warnings, fmt.Errorf("unrecognized parameter name: %s", dir) } @@ -207,6 +210,9 @@ func (st ServerType) Setup(originalServerBlocks []caddyfile.ServerBlock, if !reflect.DeepEqual(tlsApp, caddytls.TLS{}) { cfg.AppsRaw["tls"] = caddyconfig.JSON(tlsApp, &warnings) } + if storageCvtr, ok := options["storage"].(caddy.StorageConverter); ok { + cfg.StorageRaw = caddyconfig.JSON(storageCvtr, &warnings) + } return cfg, warnings, nil } -- cgit v1.2.3