A simple http router for apt downloads based on GeoIP
Go to file
Tyler 08da75d309 Disable cgo 2022-08-06 16:24:45 -04:00
assets Add mirror status endpoint, timestamp on last activity 2022-04-02 04:50:12 -04:00
.drone.yml Disable cgo 2022-08-06 16:24:45 -04:00
.gitignore Initial testing implementation of checks 2022-08-06 16:20:46 -04:00
Dockerfile Add proper CMD 2022-03-30 20:43:10 -04:00
LICENSE Initial testing implementation of checks 2022-08-06 16:20:46 -04:00
README.md Initial testing implementation of checks 2022-08-06 16:20:46 -04:00
armbianmirror_suite_test.go Initial testing implementation of checks 2022-08-06 16:20:46 -04:00
check.go Initial testing implementation of checks 2022-08-06 16:19:12 -04:00
check_test.go Initial testing implementation of checks 2022-08-06 16:20:46 -04:00
config.go Initial testing implementation of checks 2022-08-06 16:19:12 -04:00
dlrouter.yaml Mimic existing mirrors endpoint, add geoip 2022-03-31 22:04:19 -04:00
go.mod Initial testing implementation of checks 2022-08-06 16:20:46 -04:00
go.sum Update go.sum 2022-08-06 16:23:50 -04:00
http.go Resolve issue with returning a lower number of servers, add auth to reload 2022-04-02 14:35:46 -04:00
main.go Resolve issue with returning a lower number of servers, add auth to reload 2022-04-02 14:35:46 -04:00
map.go Strip leading slashes from requests to download map 2022-04-02 01:21:42 -04:00
middleware.go Allow real IP from loopback AND private 2022-03-30 22:58:15 -04:00
mirrors.go Add mirror status endpoint, timestamp on last activity 2022-04-02 04:50:12 -04:00
servers.go Initial testing implementation of checks 2022-08-06 16:19:12 -04:00
util.go Resolve issue with returning a lower number of servers, add auth to reload 2022-04-02 14:35:46 -04:00

README.md

Armbian Redirector

This repository contains a redirect service for Armbian downloads, apt, etc.

It uses multiple current technologies and best practices, including:

  • Go 1.17/1.18
  • GeoIP + Distance routing
  • Server weighting, pooling (top x servers are served instead of a single one)
  • Health checks (HTTP, TLS)

Code Quality

The code quality isn't the greatest/top tier. All code lives in the "main" package and should be moved at some point.

Regardless, it is meant to be simple and easy to understand.