This fix updates:
- github.com/miekg/dns to 1.15 (#2947)
- github.com/aws/aws-sdk-go to 1.20.13 (#2953)
- google.golang.org/grpc to 1.22.0 (#2966)
This fix fixes#2947
This fix fixes#2953
This fix fixes#2966
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* plugin/file: make non-existent file non-fatal
If the zone file being loaded doesn't exist *and* reload is enabled,
just wait the file to pop up in the normal Reload routine.
If reload is set to 0s; we keep this a fatal error on startup. Aslo fix
the ticker in z.Reload(): remove the per second ticks and just use the
reload interval for the ticker.
Brush up the documentation a bit as well.
Fixes: #2951
Signed-off-by: Miek Gieben <miek@miek.nl>
* Stickler and test compile
Signed-off-by: Miek Gieben <miek@miek.nl>
* Remove there too
Signed-off-by: Miek Gieben <miek@miek.nl>
* Cant README test these because zone files dont exist
Signed-off-by: Miek Gieben <miek@miek.nl>
The -cpu flag is a weird one (and copied originally from Caddy), it
basically sets GOMAXPROCS which can be *easily* done by just setting
that environment variable. Also with systemd and containerized env you
set this externally *anyway*, so there is little use to do this again in
the binary.
Also the option's help was confusing (i.e. percentage of what?). Remove
the option and supporting files.
Signed-off-by: Miek Gieben <miek@miek.nl>
Run through the motions; create manual pages. Run go generate for good
measure. Fix typo in Makefile.release while at it.
Signed-off-by: Miek Gieben <miek@miek.nl>
* file: close correctlty after AXFR
Don't hijack, but wait for the writes to be done and then savely close
the connection.
Fixes: #2929
Signed-off-by: Miek Gieben <miek@miek.nl>
* Update comment
Signed-off-by: Miek Gieben <miek@miek.nl>
* file: close correctlty after AXFR (#2943)
apply
Signed-off-by: Miek Gieben <miek@miek.nl>
* Update Caddy to 1.0.1, and update import path
This fix updates caddy to 1.0.1 and also
updates the import path to github.com/caddyserver/caddy
This fix fixes 2959
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* Also update plugin.cfg
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* Update and bump zplugin.go
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
`upstream` is not needed as a setting; just set if unconditionally and
remove all documentation and tests for it.
At some point we want remove the hanlding for `upstream` as well and
error out on seeing it.
Signed-off-by: Miek Gieben <miek@miek.nl>
This fixes a long standing bug:
fixes: #1609
Load secondary zones in a go-routine; this required another mutex to
protect some fields; I think those were needded anyway because a
transfer can also happen when we're running; we just didn't have a test
for that situation.
The test had to be changed to wait for the transfer to happen at this is
async now.
Signed-off-by: Miek Gieben <miek@miek.nl>
* added a test for transferring a large zone in file plugin
* avoid hardcoding number of RRs multiple times
* don't do testing.Parallel as suggested.
* applied gofmt -s
* Provide example to utilize k8s_external plugin
The example provides a specific use case of k8s_external and may help others to grasp `k8s_external`'s capabilities.
* Update plugin/k8s_external/README.md
Co-Authored-By: Chris O'Haver <cohaver@infoblox.com>
* Update plugin/k8s_external/README.md
Co-Authored-By: Chris O'Haver <cohaver@infoblox.com>
* add metrics for reload
* documented release process better
* run: Makefile.doc all to push reload doc to man-pages
Signed-off-by: Miek Gieben <miek@miek.nl>
* Run gofmt -s and golint on the codebase
Run golint and fix everythign it flagged (except the context arg
ordering), mostly edits in the rewrite plugin.
Signed-off-by: Miek Gieben <miek@miek.nl>
* ... and ofcourse the test as well
Signed-off-by: Miek Gieben <miek@miek.nl>
* Add 1.5.1 release notes
Prepare for imminent release.
Also list PRs merged in a new section to provide more detail.
Signed-off-by: Miek Gieben <miek@miek.nl>
* Updates after review
Signed-off-by: Miek Gieben <miek@miek.nl>
This fix updates:
- github.com/miekg/dns from 1.1.12 to 1.1.14
- google.golang.org/grpc from 1.21.0 to 1.21.1
- github.com/aws/aws-sdk-go from 1.19.41 to 1.20.3
- github.com/prometheus/common from 0.4.1 to 0.6.0
- gopkg.in/DataDog/dd-trace-go.v1 from 1.14.0 to 1.15.0
This fix fixes#2899
This fix fixes#2900
This fix fixes#2901
This fix fixes#2902
This fix fixes#2903
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
* plugin/cache: remove item.Autoritative
Confuses clients if not set; remove it.
Signed-off-by: Miek Gieben <miek@miek.nl>
* Add extra comments on why we do this
Signed-off-by: Miek Gieben <miek@miek.nl>
While running make encountered the following error:
```
$ docker run -i -t --rm -v $PWD:/v --net=host -w /v golang:1.12 make
...
...
** presubmit/test-lowercase
plugin/kubernetes/metadata_test.go: t.Errorf("case %d expected metadata %v and got %v", i, tc.Md, md)
** presubmit/test-lowercase: please start with an upper case letter when using t.Error*()
Makefile:62: recipe for target 'presubmit' failed
make: *** [presubmit] Error 1
```
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Add OnRestartFailed to the ready plugin and some various cleanups.
Document slightly better how things are supposed to work with multiple
`ready`'s in the multiple Server Blocks.
All manually tested with this Corefile:
~~~
. {
log
ready
}
example.org {
log
chaos
ready
}
~~~
And then `kill -SIGUSR1` and curling the ready endpoint. This works
well, the FailedReload is triggered by adding a syntax error in the
Corefile.
See #2659
Signed-off-by: Miek Gieben <miek@miek.nl>
This fix updates several direct dependencies (grpc, aws, protobuf) in go mod,
and removed duplicates with `go mod tidy`
Note: tracing related dependencies are not touched, as
DataDog/tracing dependencies still give trouble.
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Don't add pods to our internal cache that are being deleted. This saves
a field in the struct as well.
Add (extra) comments about adding fields to the
object/{Pod,Service,Endpoint} structs.
Signed-off-by: Miek Gieben <miek@miek.nl>
* make sure client CA and auth type are set if CA is explicitly specified.
added some simple tests to confirm the effect.
* test certificates (forgot to add them in the previous commit)
* made client auth policy configurable with new client_auth option.
README has been updated accordingly.
* fix editorial in README
* Fix for #2842, instead of returning the first Pod, return the one which is Running
* a more memory efficient version of the fix, string -> bool
* fix with no extra fields in struct, return nil at Pod conversion if Pod is not Running
* let Kuberneretes filter for Running Pods using FieldSelector
* filter for Pods that are Running and Pending (implicit)