ThinkChaos
bcd1381e18
feat: update list config and code to use "allow/deny" language
2024-04-11 18:33:09 -04:00
Kwitsch
c3a319f199
refactoring - e2e network ( #1401 )
...
* change to testcontainers-go/network
2024-03-18 13:02:03 +01:00
Dimitri Herzog
716ad9498f
chore(build): update testcontainers dependency ( #1376 )
2024-02-14 08:20:18 +01:00
Ben
b8b4dc323a
feat: support CNAME records in customDNS mappings ( #1352 )
...
Co-authored-by: Ben McHone <ben@mchone.dev>
2024-01-29 11:22:03 -05:00
Kwitsch
2d3ad83087
Refactoring/e2e tests ( #1316 )
...
* WithNetwork refactoring
* removed tmpDir for blocky
* removed tmpDir from HTTPServer
2024-01-17 17:16:16 +01:00
ThinkChaos
7a3c054b43
feat: add `upstreams.init.strategy`
...
Replaces `startVerifyUpstream` and behaves just like
`blocking.loading.strategy`.
We use the bootstrap resolver for any requests that arrive before the
upstreams are initialized.
2023-12-05 20:52:46 -05:00
ThinkChaos
8c7b89cbb3
refactor(tests): remove `TmpFile.Error` to centralize error checks
2023-12-01 15:53:11 -05:00
ThinkChaos
891d0fba74
refactor(tests): move `DeferCleanup` into helper functions
2023-12-01 15:53:11 -05:00
ThinkChaos
f371857150
style(tests): use `ContainElements` where possible
2023-12-01 15:53:11 -05:00
ThinkChaos
321680250a
style(tests): `Should(Not(x))` -> `ShouldNot(x)`
2023-12-01 15:53:11 -05:00
Kwitsch
3378316982
Refactoring: FileDownloader ( #1281 )
...
* enabled containedctx & contextcheck
* enabled noctx
* less background context
* context metrics test
* use ginkgo context instead of background
* fix redis e2e tests
* made downloader context aware
2023-11-29 18:18:29 +01:00
ThinkChaos
b386e22ebe
refactor: embed `Upstreams` in `UpstreamGroup` to make values accessible
...
Move `startVerifyUpstream` to `upstreams.startVerify` so it's accessible
via `UpstreamGroup` and we don't need to pass `startVerify` to all
resolver constructors that call `NewUpstreamResolver`.
Also has the nice benefit of greatly reducing the usage of `GetConfig`.
2023-11-23 08:45:18 -05:00
ThinkChaos
d52c598546
fix(tests): properly silence log output ( #1259 )
...
* fix(tests): properly silence log output
Using `init` allows it to also work for benchmarks.
And `log.Silence` was sometimes getting overridden by `log.init`.
* squash: fix(server): don't setup the logger again
2023-11-19 17:51:49 -05:00
Dimitri Herzog
4a5a395655
fix: log.privacy option no longer hides domain names being resolved ( #1255 )
2023-11-17 15:59:22 +01:00
Dimitri Herzog
bcff170a94
chore(test): use testcontainers modules ( #1164 )
2023-09-22 10:35:51 -04:00
Dimitri Herzog
65ff6847ad
fix: return error code on server starup failure ( #1165 )
2023-09-20 17:44:52 +02:00
Dimitri Herzog
19865bba55
chore(test): change container wait strategy
2023-09-19 19:24:50 +02:00
Dimitri Herzog
ed864962b2
chore: improve execution time of e2e tests
2023-09-14 15:06:10 +02:00
Dimitri Herzog
b1d014017b
feat(querylog): add flushInterval parameter
2023-09-14 15:06:10 +02:00
Dimitri Herzog
81529996ce
chore(test): add retry on network deletion ( #1144 )
2023-09-14 09:02:17 -04:00
DerRockWolf
c112e86740
feat: add upstream strategy `strict` ( #1093 )
2023-08-21 09:50:23 +02:00
ThinkChaos
639fba5323
refactor(config): allow more configuration for `upstreams`
...
Rename the `upstream` option to `upstreams.groups` so we can have
more `upstreams` options.
2023-08-01 15:01:40 -04:00
ThinkChaos
cfc3699ab5
feat: support multiple hosts files
2023-07-07 09:16:20 -04:00
Dimitri Herzog
8614fde9d0
chore(test): add HTTP listener readiness check
2023-04-05 14:55:38 +02:00
Dimitri Herzog
eda3b505cd
chore(test): set default timeout for eventually
2023-04-05 14:55:38 +02:00
ThinkChaos
a2ab7c3ef1
feat: allow hosts file resolver to use a HTTP(S) link or inline block ( #884 )
...
Unify the hosts file parsing between the hosts resolver and lists so
the resolver supports more data sources than local files.
Lists' group cache is now re-used if refresh fails.
Also improve lookups in hosts:
Instead of iterating through all hosts+aliases for each A/AAAA query,
we can do a single lookup.
For PTR we search through only the hosts with an IP version that matches
the question. And compare IPs instead of building the reverse DNS name
for each IP in the hosts database.
2023-03-06 19:32:41 -05:00
Kwitsch
101e2c554b
Workflow changes ( #857 )
...
* fix linter errors
* fix for flaky redis unit test
* timeout adjustment
* e2e-test -> ci-build
* setup docker buildx
* added concurrency cancelation
* changed job name
* Test comment out problematic eventually
* added comment
* workflow file rename
* workflow name changed
* skip go generate
* added make generate
* removed unused go generate
* setup golang with caches if needed
* matrix revamp
* activate gofor e2e
* fix matrix
* test
* eventually timing
* removed linter workflow in favor of make matrix
* expect -> Eventually
* renamed workflow
2023-02-07 14:00:53 +01:00
Dimitri Herzog
5a9da900b2
chore(test): increase timeout ( #820 )
2023-01-09 07:40:44 +01:00
Dimitri Herzog
53a7d4fccc
Test refactoring ( #798 )
...
* test: refactor tests
* chore: fix possible race condition in cache
2022-12-29 14:58:25 +01:00
Kwitsch
9abeaeddea
Added gofumpt ( #805 )
...
* fix linter errors
* added gofumpt
* Makefile cleanup
* gofumpt run
* Update Makefile
Co-authored-by: ThinkChaos <ThinkChaos@users.noreply.github.com>
* go mod tidy
* fmt + lint
* go mod tidy
Co-authored-by: ThinkChaos <ThinkChaos@users.noreply.github.com>
2022-12-26 22:11:45 +01:00
Dimitri Herzog
943d6cc944
test: use 'eventually' to avoid flaky tests ( #792 )
2022-12-09 18:37:32 +01:00
Kwitsch
b73cd3b5ba
Config restructuring ( #771 )
...
To declutter the global top level config options i propose the grouping of ports and logging options as child options of top level options.
New structure:
ports:
dns: 43
http: 4000
https: 4443
tls: 853
log:
level: warn
format: json
privacy: true
timestamp: false
2022-12-02 21:55:40 +01:00
Dimitri Herzog
4ad7670bf9
test(e2e): added more `startVerifyUpstream` tests
2022-12-02 12:56:44 -05:00
Dimitri Herzog
be5fce031b
test: make e2e tests more resilient
2022-12-02 12:56:44 -05:00
ThinkChaos
c06c017a1a
fix: `startVerifyUpstream` not disabling all start checks
2022-12-02 12:56:44 -05:00
Dimitri Herzog
fb0810f18d
build(tests): e2e integration tests with docker and testcontainers ( #753 )
2022-11-24 21:54:52 +01:00