Commit Graph

101 Commits

Author SHA1 Message Date
Quentin McGaw
05d566c807 chore(all): format code using gofumpt 2024-10-20 13:12:33 +00:00
Quentin McGaw
4c7c794494 chore(lint): upgrade linter from v1.56.2 to v1.61.0 2024-10-20 13:10:31 +00:00
Quentin McGaw
c16287e48a fix(unix): umask behavior for file creation
- remove bad calculation of "our own" umask
- remove umask "union effect"
- do not touch system umask unless `UMASK` is set
- set system umask only if `UMASK` is set
2024-09-19 14:21:55 +00:00
Quentin McGaw
3a6262ef2c feat(files): configurable UMASK defaulting to system umask 2024-09-16 14:33:37 +00:00
Quentin McGaw
918df24488 change(all): deprecate provider_ip config field
- change should not affect any existing configurations
- change solves issues with dual stack updates (#767)
- was unneeded and adds unneeded complexity
2024-07-26 08:06:24 +00:00
Quentin McGaw
c345a788e3 hotfix(duckdns): fix behavior for full domain strings 2024-06-27 17:03:05 +00:00
Quentin McGaw
158fed7c51 hotfix(goip): fix behavior for full domain strings 2024-06-27 16:53:13 +00:00
Quentin McGaw
07d7645d78 feat(config): read both owner and domain from domain
- retro-compatible change: keep using host/owner if set
- otherwise extract owner and eTLD+1 from domain field
- documentation updated to only use the `domain` field
2024-06-27 13:10:16 +00:00
Quentin McGaw
dbd2f79760 chore(providers): move domain check to each provider validation 2024-06-27 08:37:04 +00:00
Quentin McGaw
32fafeca95 chore(all): rename host to owner
- Retro-compatible change, `host` field still works
- Documentation updated to use `owner` field
- Code updated to use owner variable name
2024-06-27 06:51:08 +00:00
Quentin McGaw
85780dc6e1 chore(lint): add multiple linters 2024-06-13 09:23:19 +00:00
Quentin McGaw
ae4ab39421 fix(settings): trim spaces from each host value 2024-04-29 14:27:28 +00:00
CyberAustin
b31d848d96 chore(params): validate domain strings for providers using it (#638) 2024-04-01 14:35:10 +02:00
Quentin McGaw
b6e8f699a6 hotfix(ipv6): restore compatibility with old IPV6_PREFIX 2024-02-01 09:23:28 +00:00
Quentin McGaw
8d282cd6d9 hotfix(params): only log warning if ipv6 suffix is set for ipv4 2024-02-01 09:07:16 +00:00
Quentin McGaw
bad0d3aeda fix(ipv6): add JSON IPv6 suffix parameter (#611)
- Remove `IPV6_PREFIX` environment variable (unneeded) and remove associated code
- Update all documentation for each provider supporting IPv6
- Build IPv6 as prefix:suffix when getting it from a public IP source for each record IPv6 suffix parameter
- Automatically disable provider_ip if public ip is IPv6 and IPv6 suffix is set (they are not compatible with each other)
2024-01-29 17:31:07 +01:00
Quentin McGaw
e665684fa4 fix(google): removed since no longer functional
- Logs error if provider google is used
- Documentation updated
- Fixes #605
2024-01-27 21:24:27 +00:00
Quentin McGaw
4a6020558f chore(all): rename settings package to provider
- internal/provider: rename `Settings` interface to `Provider`
- internal/params: rename *Settings* to *Providers*
- internal/records: rename `Settings` to `Provider`
2023-06-14 06:25:56 +00:00
Quentin McGaw
4b51c8b35b chore(config): rework entire global settings reading
- Use qdm12/gosettings
- No functional changes (at least intended)
- Remove qdm12/golibs dependency

chore(params): remove dependency on golibs
2023-06-12 06:17:24 +00:00
Quentin McGaw
15c6ad4b01 chore(all): use string comparisons instead of length for string variables 2023-04-13 16:58:33 +00:00
Quentin McGaw
3339c838fa chore(all): remove short if error checks 2023-04-13 15:38:05 +00:00
Quentin McGaw
49b779813a chore(lint): bump from v1.50.1 to v1.52.2 2023-04-13 09:44:27 +00:00
Quentin McGaw
0e3703b8f2 chore(settings): validate using local regexes 2023-04-13 09:25:35 +00:00
Quentin McGaw
2165b69137 chore(log): use github.com/qdm12/log 2022-12-07 10:10:18 +00:00
Quentin McGaw
bcbf0938c1 chore(lint): add revive linter and fix issues
- Export returned struct types
- Do not export interfaces for other packages to use
2022-08-28 22:18:19 +00:00
Quentin McGaw
1561babd76 chore(lint): add ireturn linter
- Return concrete structs
- Accept interfaces
- Define narrow interfaces locally where needed
2022-08-28 19:50:02 +00:00
Quentin McGaw
a688255270 chore(lint): bump from v1.46.2 to v1.49.0 2022-08-28 15:09:50 +00:00
Quentin McGaw (desktop)
7fccf2c979 Feat: additional logging about config read 2021-10-21 03:19:47 +00:00
Quentin McGaw (desktop)
335c82b4be Maint: upgrade qdm12/golibs
- Fix logging settings inheritance
- Fix debug logging for HTTP client
2021-08-25 00:24:57 +00:00
Quentin McGaw (desktop)
41e61ddaa6 Fix: better error messages for JSON unmarshal 2021-08-10 22:27:17 +00:00
Quentin McGaw (desktop)
ee69feaaea Maint: rename params.go to reader.go 2021-08-10 22:20:50 +00:00
Quentin McGaw (desktop)
9252bca505 Maint: http client logger middleware 2021-08-10 20:47:36 +00:00
Quentin McGaw (desktop)
1e74dc6179 Fix: write JSON file from CONFIG variable 2021-06-30 01:36:08 +00:00
Quentin McGaw (desktop)
36a6275bd2 Maint: config package for environment variables 2021-06-29 16:12:28 +00:00
Quentin McGaw (desktop)
9b8ec3298b Maintenance: simplify file paths logic 2021-06-07 13:51:45 +00:00
Quentin McGaw (desktop)
cc670b3939 Feature: request url and body debug logs 2021-06-07 12:58:17 +00:00
Quentin McGaw (desktop)
0c3d258620 Feature: HEALTH_SERVER_ADDRESS 2021-06-07 12:05:30 +00:00
Quentin McGaw (desktop)
d39ecd6fd3 Fix: IPv6 prefix support to avoid unneeded updates 2021-06-03 14:19:21 +00:00
Quentin McGaw
381af0cd90 Feature: allow to run without settings 2021-05-23 22:16:50 +00:00
Quentin McGaw
da4341fbba Maintenance: move settings creation
- From params package to settings package
- Remove constructor type
- Remove regex.Matcher arg if not needed for some providers
2021-05-20 14:47:40 +00:00
Quentin McGaw
1705afeada Maintenance: settings shared code in sub packages 2021-05-20 14:35:52 +00:00
Quentin McGaw
844904aa7b Maintenance: upgrade linting setup
- Update Golangci-lint to v1.40.1
- Add more linters
- Remove rules from .golangci.yml in favor of inline nolint comments
- Fix linting errors
2021-05-19 01:00:42 +00:00
Quentin McGaw
d727feefc4 Feature: Variomedia support (#208)
- Taken from #174 with added fixes to support IPv6
- Closes #174
2021-05-18 20:28:36 -04:00
Matthew Hill
c0e57c6e1d Fix: read case sensitive CONFIG variable (#192)
Converting the string to lowercase breaks case sensitive api keys/secrets
Signed-off-by: Matthew Hill <matthewchill7@gmail.com>
2021-04-04 11:14:38 -04:00
Quentin McGaw
e3472476e2 SPDyn support, fixes #182 (#179) 2021-03-23 11:18:02 -04:00
Quentin McGaw
869cf52c7d Njalla support fixes #180 (#181) 2021-03-22 22:15:15 -04:00
Quentin McGaw
8b2e83a69e Feature: HTTP and DNS Public IP fetching options, fixes #136 (#187) 2021-03-22 17:49:58 -04:00
Quentin McGaw
0a89666d1d Feature: public IP package to work over HTTPs and DNS (#158) 2021-03-21 17:59:17 -04:00
Quentin McGaw
6e0d48f7c1 Maintenance: remove no_dns_lookup and replace DNSLookup() method with Proxied() (#160) 2021-03-02 02:07:52 +00:00
Quentin McGaw
a10fb64ffd Maintenance: golibs logger update (#170) 2021-03-01 20:51:22 -05:00