Fix conversion of file upstreams

This commit is contained in:
Joel Speed 2020-08-31 14:05:52 +01:00
parent b40517bbe3
commit bd619ab63e
No known key found for this signature in database
GPG Key ID: 6E80578D6751DEFB
2 changed files with 7 additions and 4 deletions

View File

@ -4,6 +4,7 @@ import (
"fmt"
"net/url"
"strconv"
"strings"
"time"
"github.com/oauth2-proxy/oauth2-proxy/pkg/logger"
@ -87,6 +88,8 @@ func (l *LegacyUpstreams) convert() (Upstreams, error) {
if u.Fragment != "" {
upstream.ID = u.Fragment
upstream.Path = u.Fragment
// Trim the fragment from the end of the URI
upstream.URI = strings.SplitN(upstreamString, "#", 2)[0]
}
case "static":
responseCode, err := strconv.Atoi(u.Host)

View File

@ -21,7 +21,7 @@ var _ = Describe("Legacy Options", func() {
legacyOpts.LegacyUpstreams.PassHostHeader = true
legacyOpts.LegacyUpstreams.ProxyWebSockets = true
legacyOpts.LegacyUpstreams.SSLUpstreamInsecureSkipVerify = true
legacyOpts.LegacyUpstreams.Upstreams = []string{"http://foo.bar/baz", "file://var/lib/website#/bar", "static://204"}
legacyOpts.LegacyUpstreams.Upstreams = []string{"http://foo.bar/baz", "file:///var/lib/website#/bar", "static://204"}
truth := true
staticCode := 204
@ -38,7 +38,7 @@ var _ = Describe("Legacy Options", func() {
{
ID: "/bar",
Path: "/bar",
URI: "file://var/lib/website#/bar",
URI: "file:///var/lib/website",
FlushInterval: &flushInterval,
InsecureSkipTLSVerify: true,
PassHostHeader: &truth,
@ -100,11 +100,11 @@ var _ = Describe("Legacy Options", func() {
FlushInterval: &flushInterval,
}
validFileWithFragment := "file://var/lib/website#/bar"
validFileWithFragment := "file:///var/lib/website#/bar"
validFileWithFragmentUpstream := Upstream{
ID: "/bar",
Path: "/bar",
URI: validFileWithFragment,
URI: "file:///var/lib/website",
InsecureSkipTLSVerify: skipVerify,
PassHostHeader: &passHostHeader,
ProxyWebSockets: &proxyWebSockets,