Add event filters to traffic dialogs and mirror city database in Gitea
This commit is contained in:
@@ -101,9 +101,25 @@ func trafficCityRoutes(mux *http.ServeMux) {
|
||||
writeJSON(w, status, nil)
|
||||
})
|
||||
}
|
||||
func installTrafficCity() error { return installTrafficCityFrom(cityDownloadURL, cityDatabaseSHA1) }
|
||||
func cityMirrorURL() string {
|
||||
base := strings.TrimRight(os.Getenv("GITEA_URL"), "/")
|
||||
if base == "" {
|
||||
base = "https://git.myown.center"
|
||||
}
|
||||
return base + "/maxim/ProxmoxDash/releases/download/v0.25.1/dbip-city-lite-2026-10.mmdb.gz"
|
||||
}
|
||||
func installTrafficCity() error {
|
||||
if err := installTrafficCityFrom(cityMirrorURL(), cityDatabaseSHA1); err == nil {
|
||||
return nil
|
||||
}
|
||||
return installTrafficCityFrom(cityDownloadURL, cityDatabaseSHA1)
|
||||
}
|
||||
func installTrafficCityFrom(source, expectedHash string) error {
|
||||
client := &http.Client{Timeout: 15 * time.Minute}
|
||||
transport := http.DefaultTransport.(*http.Transport).Clone()
|
||||
transport.ResponseHeaderTimeout = 20 * time.Second
|
||||
transport.DialContext = (&net.Dialer{Timeout: 10 * time.Second, KeepAlive: 30 * time.Second}).DialContext
|
||||
defer transport.CloseIdleConnections()
|
||||
client := &http.Client{Timeout: 15 * time.Minute, Transport: transport}
|
||||
response, err := client.Get(source)
|
||||
if err != nil {
|
||||
return err
|
||||
|
||||
Reference in New Issue
Block a user