git.iko.soy/typeable/oauth2-proxy
on master help sign in
Move all pagewriter related code to dedicated pagewriter package
commit225ff478a1e8ef683508001465db544baec0fdda authorJoel Speed <joel.speed@hotmail.co.uk> dateSat 13 Feb 2021, 11:38 (6 years ago) parente8e2af7
10 files changed+27−27
oauthproxy.go+3−3 pkg/app/error_page.go → pkg/app/pagewriter/error_page.go+1−1 pkg/app/error_page_test.go → pkg/app/pagewriter/error_page_test.go+1−1 pkg/app/pagewriter.go → pkg/app/pagewriter/pagewriter.go+8−8 pkg/app/app_suite_test.go → pkg/app/pagewriter/pagewriter_suite_test.go+1−1 pkg/app/pagewriter_test.go → pkg/app/pagewriter/pagewriter_test.go+9−9 pkg/app/sign_in_page.go → pkg/app/pagewriter/sign_in_page.go+1−1 pkg/app/sign_in_page_test.go → pkg/app/pagewriter/sign_in_page_test.go+1−1 pkg/app/templates.go → pkg/app/pagewriter/templates.go+1−1 pkg/app/templates_test.go → pkg/app/pagewriter/templates_test.go+1−1
oauthproxy.go+3−3
@@ -17,7 +17,7 @@ import (
1717 middlewareapi "github.com/oauth2-proxy/oauth2-proxy/v7/pkg/apis/middleware"
1818 "github.com/oauth2-proxy/oauth2-proxy/v7/pkg/apis/options"
1919 sessionsapi "github.com/oauth2-proxy/oauth2-proxy/v7/pkg/apis/sessions"
20− "github.com/oauth2-proxy/oauth2-proxy/v7/pkg/app"
20+ "github.com/oauth2-proxy/oauth2-proxy/v7/pkg/app/pagewriter"
2121 "github.com/oauth2-proxy/oauth2-proxy/v7/pkg/authentication/basic"
2222 "github.com/oauth2-proxy/oauth2-proxy/v7/pkg/cookies"
2323 "github.com/oauth2-proxy/oauth2-proxy/v7/pkg/encryption"
@@ -101,7 +101,7 @@ type OAuthProxy struct {
101101 sessionChain alice.Chain
102102 headersChain alice.Chain
103103 preAuthChain alice.Chain
104− pageWriter app.PageWriter
104+ pageWriter pagewriter.Writer
105105}
106106
107107// NewOAuthProxy creates a new instance of OAuthProxy from the options provided
@@ -121,7 +121,7 @@ func NewOAuthProxy(opts *options.Options, validator func(string) bool) (*OAuthPr
121121 }
122122 }
123123
124− pageWriter, err := app.NewPageWriter(app.PageWriterOpts{
124+ pageWriter, err := pagewriter.NewWriter(pagewriter.Opts{
125125 TemplatesPath: opts.Templates.Path,
126126 ProxyPrefix: opts.ProxyPrefix,
127127 Footer: opts.Templates.Footer,
pkg/app/error_page.go → pkg/app/pagewriter/error_page.gorenamed+1−1
@@ -1,4 +1,4 @@
1−package app
1+package pagewriter
22
33import (
44 "fmt"
pkg/app/error_page_test.go → pkg/app/pagewriter/error_page_test.gorenamed+1−1
@@ -1,4 +1,4 @@
1−package app
1+package pagewriter
22
33import (
44 "errors"
pkg/app/pagewriter.go → pkg/app/pagewriter/pagewriter.gorenamed+8−8
@@ -1,29 +1,29 @@
1−package app
1+package pagewriter
22
33import (
44 "fmt"
55 "net/http"
66)
77
8−// PageWriter is an interface for rendering html templates for both sign-in and
8+// Writer is an interface for rendering html templates for both sign-in and
99// error pages.
1010// It can also be used to write errors for the http.ReverseProxy used in the
1111// upstream package.
12−type PageWriter interface {
12+type Writer interface {
1313 WriteSignInPage(rw http.ResponseWriter, redirectURL string)
1414 WriteErrorPage(rw http.ResponseWriter, status int, redirectURL string, appError string, messages ...interface{})
1515 ProxyErrorHandler(rw http.ResponseWriter, req *http.Request, proxyErr error)
1616}
1717
18−// pageWriter implements the PageWriter interface
18+// pageWriter implements the Writer interface
1919type pageWriter struct {
2020 *errorPageWriter
2121 *signInPageWriter
2222}
2323
24−// PageWriterOpts contains all options required to configure the template
24+// Opts contains all options required to configure the template
2525// rendering within OAuth2 Proxy.
26−type PageWriterOpts struct {
26+type Opts struct {
2727 // TemplatesPath is the path from which to load custom templates for the sign-in and error pages.
2828 TemplatesPath string
2929
@@ -51,9 +51,9 @@ type PageWriterOpts struct {
5151 SignInMessage string
5252}
5353
54−// NewPageWriter constructs a PageWriter from the options given to allow
54+// NewWriter constructs a Writer from the options given to allow
5555// rendering of sign-in and error pages.
56−func NewPageWriter(opts PageWriterOpts) (PageWriter, error) {
56+func NewWriter(opts Opts) (Writer, error) {
5757 templates, err := loadTemplates(opts.TemplatesPath)
5858 if err != nil {
5959 return nil, fmt.Errorf("error loading templates: %v", err)
pkg/app/app_suite_test.go → pkg/app/pagewriter/pagewriter_suite_test.gorenamed+1−1
@@ -1,4 +1,4 @@
1−package app
1+package pagewriter
22
33import (
44 "testing"
pkg/app/pagewriter_test.go → pkg/app/pagewriter/pagewriter_test.gorenamed+9−9
@@ -1,4 +1,4 @@
1−package app
1+package pagewriter
22
33import (
44 "io/ioutil"
@@ -10,13 +10,13 @@ import (
1010 . "github.com/onsi/gomega"
1111)
1212
13−var _ = Describe("PageWriter", func() {
14− Context("NewPageWriter", func() {
15− var writer PageWriter
16− var opts PageWriterOpts
13+var _ = Describe("Writer", func() {
14+ Context("NewWriter", func() {
15+ var writer Writer
16+ var opts Opts
1717
1818 BeforeEach(func() {
19− opts = PageWriterOpts{
19+ opts = Opts{
2020 TemplatesPath: "",
2121 ProxyPrefix: "/prefix",
2222 Footer: "<Footer>",
@@ -31,7 +31,7 @@ var _ = Describe("PageWriter", func() {
3131 Context("With no custom templates", func() {
3232 BeforeEach(func() {
3333 var err error
34− writer, err = NewPageWriter(opts)
34+ writer, err = NewWriter(opts)
3535 Expect(err).ToNot(HaveOccurred())
3636 })
3737
@@ -70,7 +70,7 @@ var _ = Describe("PageWriter", func() {
7070
7171 opts.TemplatesPath = customDir
7272
73− writer, err = NewPageWriter(opts)
73+ writer, err = NewWriter(opts)
7474 Expect(err).ToNot(HaveOccurred())
7575 })
7676
@@ -117,7 +117,7 @@ var _ = Describe("PageWriter", func() {
117117 })
118118
119119 It("Should return an error", func() {
120− writer, err := NewPageWriter(opts)
120+ writer, err := NewWriter(opts)
121121 Expect(err).To(MatchError(ContainSubstring("template: sign_in.html:1: function \"Custom\" not defined")))
122122 Expect(writer).To(BeNil())
123123 })
pkg/app/sign_in_page.go → pkg/app/pagewriter/sign_in_page.gorenamed+1−1
@@ -1,4 +1,4 @@
1−package app
1+package pagewriter
22
33import (
44 "html/template"
pkg/app/sign_in_page_test.go → pkg/app/pagewriter/sign_in_page_test.gorenamed+1−1
@@ -1,4 +1,4 @@
1−package app
1+package pagewriter
22
33import (
44 "html/template"
pkg/app/templates.go → pkg/app/pagewriter/templates.gorenamed+1−1
@@ -1,4 +1,4 @@
1−package app
1+package pagewriter
22
33import (
44 "fmt"
pkg/app/templates_test.go → pkg/app/pagewriter/templates_test.gorenamed+1−1
@@ -1,4 +1,4 @@
1−package app
1+package pagewriter
22
33import (
44 "bytes"