github qdm12/ddns-updater v2.4.0

latest releases: v2.6.0, v2.5.0, v2.4.1...
2 years ago

Features

  • Support for domaindiscount24.com (#207)
  • Support Shoutrrr addresses
  • PUBLICIP_DNS_TIMEOUT variable

Bug fixes

  • Wildcard hosts (#214)
    • Keep multi-dots wildcard host structure in display strings
    • Use a function BuildURLQueryHostname for API calls to send the correct wildcard hostname
    • Send the wildcard character in API calls
    • Fix behavior for wildcard hosts for: cloudflare, ddnss.de, digitalocean, dnsomatic, dreamhost, dyn, dynv6, google, informaniak, njalla, noip, opendns, ovh, selfhost.de, spdyn, strato and variomedia
  • Healthcheck query to 127.0.0.1:port instead of for example 0.0.0.0:port
  • DATADIR defaults to /updater/data
  • Server listens on all interfaces (IPv4 and IPv6) instead of just 0.0.0.0
  • Context dependent DNS resolutions (to exit the program promptly)
  • Larger default timeout of 3s for DNS query of public IP

Documentation

  • Add missing architectures to readme: ppc64le, s390x, riscv64 and armv6

Maintenance

  • internal/config package for environment variables
  • Remove github.com/ovh/go-ovh dependency
  • Use time/tzdata anonymous import instead of Alpine's tzdata
  • Use github.com/qdm12/goshutdown to handle program shutdown
  • Simplify file paths logic
  • Use signal.NotifyContext (introduced with Go 1.16)
  • Inject more objects to _main() in main.go:
    • params.Env
    • os.Args
    • a default parent logger
  • More robust main logic
    • Change main() to encapsulate _main() and handle OS signals itself
    • _main() returns an error instead of an exit code
  • Move setupGotify inline in _main() function
  • Local scoped buildInfo variable
  • Optimize Dockerfile for faster rebuilds, better layer caching and faster cross-builds
    • Pull xcputranslate for build platform only (faster x-builds)
    • Install golangci-lint from qmcgaw/binpot (faster)
    • Install g++ in base stage (for caching)
    • Copy xcputranslate in base stage (for caching)
    • Install golangci-lint in base stage (for caching)
    • Push ARG TARGETPLATFORM down in build stage (faster x-builds)
    • Push versioning ARGs and LABEL down in final stage (for caching)
    • Move data directory COPY up in final stage (for caching)
  • Upgrade golangci-lint to v1.41.1
  • Upgrade qmcgaw/xcputranslate to v0.6.0
  • Set Docker test stage entrypoint in Dockerfile instead of CI

Don't miss a new ddns-updater release

NewReleases is sending notifications on new releases.