Add config #3
							
								
								
									
										2
									
								
								main.go
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								main.go
									
									
									
									
									
								
							| @@ -32,7 +32,7 @@ func main() { | ||||
| 					cfg := configFromCtx(c.Context) | ||||
|  | ||||
| 					srv := server.NewServer(cfg) | ||||
| 					srv.Addr = cfg.HTTPListenAddr | ||||
| 					srv.Addr = cfg.HTTP.ListenAddr | ||||
| 					if err := srv.ListenAndServe(); err != nil && !errors.Is(err, http.ErrServerClosed) { | ||||
| 						return err | ||||
| 					} | ||||
|   | ||||
| @@ -3,7 +3,8 @@ | ||||
| # Env: MINISTREAM_SITENAME | ||||
| SiteName = "stream.example.org" | ||||
|  | ||||
| [HTTP] | ||||
| # HTTPListenAddr is which port the HTTP server will listen on. | ||||
| # Default: ":8080" | ||||
| # Env: MINISTREAM_HTTPLISTENADDR | ||||
| # Env: MINISTREAM_HTTP_LISTENADDR | ||||
| HTTPListenAddr = ":8080" | ||||
|   | ||||
| @@ -8,14 +8,20 @@ import ( | ||||
| ) | ||||
|  | ||||
| type Config struct { | ||||
| 	SiteName       string `json:"siteName" toml:"siteName"` | ||||
| 	HTTPListenAddr string `json:"httpListenAddr" toml:"HTTPListenAddr"` | ||||
| 	SiteName string     `toml:"siteName"` | ||||
| 	HTTP     ConfigHTTP `toml:"http"` | ||||
| } | ||||
|  | ||||
| type ConfigHTTP struct { | ||||
| 	ListenAddr string `json:"ListenAddr" toml:"ListenAddr"` | ||||
| } | ||||
|  | ||||
| func DefaultConfig() *Config { | ||||
| 	return &Config{ | ||||
| 		SiteName:       "ministream", | ||||
| 		HTTPListenAddr: ":8080", | ||||
| 		SiteName: "ministream", | ||||
| 		HTTP: ConfigHTTP{ | ||||
| 			ListenAddr: ":8080", | ||||
| 		}, | ||||
| 	} | ||||
| } | ||||
|  | ||||
| @@ -24,8 +30,8 @@ func (c *Config) OverrideFromEnv() { | ||||
| 		c.SiteName = siteName | ||||
| 	} | ||||
|  | ||||
| 	if httpAddr, ok := os.LookupEnv("MINISTREAM_HTTPLISTENADDR"); ok { | ||||
| 		c.HTTPListenAddr = httpAddr | ||||
| 	if httpAddr, ok := os.LookupEnv("MINISTREAM_HTTP_LISTENADDR"); ok { | ||||
| 		c.HTTP.ListenAddr = httpAddr | ||||
| 	} | ||||
| } | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user