diff --git a/docs/quickstart/extra-route.md b/docs/quickstart/extra-route.md index e03019c..e6267d5 100644 --- a/docs/quickstart/extra-route.md +++ b/docs/quickstart/extra-route.md @@ -16,7 +16,23 @@ When dealing with many routes, maintaining them in one file can quickly become u Example of an extra route -Create a file using `yaml` or `.yaml` extensions +Defined an extra route path in `gateway` section as shown below. + +```yaml +version: 1.0 +gateway: + ... + ## Add additional routes + extraRoutes: + # path + directory: /etc/goma/extra + watch: false + routes: + - path: / + name: example +``` + +Create a file in `/etc/goma/extra` using `yaml` or `.yaml` extension. ```yaml routes: diff --git a/docs/quickstart/gateway.md b/docs/quickstart/gateway.md index e72d1d3..e8db1e7 100644 --- a/docs/quickstart/gateway.md +++ b/docs/quickstart/gateway.md @@ -64,11 +64,6 @@ gateway: accessLog: /dev/Stdout errorLog: /dev/stderr logLevel: info - ## Add additional routes - extraRoutes: - # path - directory: /etc/goma/extra - watch: true disableRouteHealthCheckError: false disableDisplayRouteOnStart: false disableKeepAlive: false @@ -85,5 +80,10 @@ gateway: Access-Control-Allow-Credentials: "true" Access-Control-Allow-Headers: Origin, Authorization, Accept, Content-Type, Access-Control-Allow-Headers, X-Client-Id, X-Session-Id Access-Control-Max-Age: "1728000" + ## Add additional routes + extraRoutes: + # path + directory: /etc/goma/extra + watch: true routes: [] ``` \ No newline at end of file diff --git a/internal/gateway_type.go b/internal/gateway_type.go index f3e55a3..dd04ec7 100644 --- a/internal/gateway_type.go +++ b/internal/gateway_type.go @@ -34,11 +34,11 @@ type Gateway struct { // RateLimit Defines the number of request peer minutes RateLimit int `yaml:"rateLimit" env:"GOMA_RATE_LIMIT, overwrite"` // BlockCommonExploits enable, disable block common exploits - BlockCommonExploits bool `yaml:"blockCommonExploits"` - AccessLog string `yaml:"accessLog" env:"GOMA_ACCESS_LOG, overwrite"` - ErrorLog string `yaml:"errorLog" env:"GOMA_ERROR_LOG=, overwrite"` - LogLevel string `yaml:"logLevel" env:"GOMA_LOG_LEVEL, overwrite"` - ExtraRoutes ExtraRouteConfig `yaml:"extraRoutes"` + BlockCommonExploits bool `yaml:"blockCommonExploits"` + AccessLog string `yaml:"accessLog" env:"GOMA_ACCESS_LOG, overwrite"` + ErrorLog string `yaml:"errorLog" env:"GOMA_ERROR_LOG=, overwrite"` + LogLevel string `yaml:"logLevel" env:"GOMA_LOG_LEVEL, overwrite"` + // DisableHealthCheckStatus enable and disable routes health check DisableHealthCheckStatus bool `yaml:"disableHealthCheckStatus"` // DisableRouteHealthCheckError allows enabling and disabling backend healthcheck errors @@ -52,7 +52,8 @@ type Gateway struct { InterceptErrors []int `yaml:"interceptErrors"` // Cors holds proxy global cors Cors Cors `yaml:"cors"` - + // ExtraRoutes additional routes from defined directory + ExtraRoutes ExtraRouteConfig `yaml:"extraRoutes"` // Routes holds proxy routes Routes []Route `yaml:"routes"` }