Refactoring of code

This commit is contained in:
Jonas Kaninda
2024-11-18 11:50:53 +01:00
parent 4ce89bed17
commit bc60fc78e0
3 changed files with 29 additions and 12 deletions

View File

@@ -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:

View File

@@ -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: []
```

View File

@@ -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"`
}