2233 Commits

Author SHA1 Message Date
dependabot-preview[bot]
34ffe2a0a5 build(deps): bump github.com/Azure/go-autorest/autorest/azure/auth (#3376)
Bumps [github.com/Azure/go-autorest/autorest/azure/auth](https://github.com/Azure/go-autorest) from 0.3.0 to 0.4.0.
- [Release notes](https://github.com/Azure/go-autorest/releases)
- [Changelog](https://github.com/Azure/go-autorest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Azure/go-autorest/compare/tracing/v0.3.0...tracing/v0.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-15 01:13:00 +09:00
dependabot-preview[bot]
0c03290c79 build(deps): bump google.golang.org/api from 0.10.0 to 0.11.0 (#3377)
Bumps [google.golang.org/api](https://github.com/google/google-api-go-client) from 0.10.0 to 0.11.0.
- [Release notes](https://github.com/google/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/master/CHANGES.md)
- [Commits](https://github.com/google/google-api-go-client/compare/v0.10.0...v0.11.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-15 00:52:39 +09:00
dependabot-preview[bot]
dc02c20d39 build(deps): bump github.com/aws/aws-sdk-go from 1.25.1 to 1.25.11 (#3378)
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.25.1 to 1.25.11.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Changelog](https://github.com/aws/aws-sdk-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.25.1...v1.25.11)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-15 00:51:33 +09:00
dependabot-preview[bot]
70d3d94585 build(deps): bump github.com/Azure/go-autorest/autorest (#3375)
Bumps [github.com/Azure/go-autorest/autorest](https://github.com/Azure/go-autorest) from 0.9.1 to 0.9.2.
- [Release notes](https://github.com/Azure/go-autorest/releases)
- [Changelog](https://github.com/Azure/go-autorest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Azure/go-autorest/compare/autorest/v0.9.1...autorest/v0.9.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-15 00:47:57 +09:00
Miek Gieben
62f7e0784f Add release notes for 1.6.5 (#3373)
Signed-off-by: Miek Gieben <miek@miek.nl>
2019-10-14 01:37:24 +09:00
Miek Gieben
1820c71f28 Run makefile.doc (#3365)
Generate manual pages; no other changes.

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-10-10 07:45:28 +01:00
yuxiaobo96
bf356e79fc fix spelling mistakes (#3364)
Automatically submitted.
2019-10-09 07:24:18 +00:00
Miek Gieben
65458b2de2 Directive -> plugin (#3363)
Caught my eye, we name things directive still, esp when talking about
the prometheus *plugin*. Rename everything that needs to be plugin to
'plugin'. Also make sure Metrics is a H2 section (not H1).

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-10-08 10:20:48 +01:00
Miek Gieben
ffe6225ff6 kubernetes: brush up README, rename metric (#3360)
Other latency metrics have `_duration` in the name change this metric
to be in sync with the other ones.

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-10-07 08:38:46 -07:00
Miek Gieben
f1415e8573 circle CI: run with latest Go (#3358)
* circle CI: run with latest Go

We compile coredns with latest Go on each release, do this same in
Circle-ci

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-10-05 10:48:51 +01:00
Miek Gieben
62d6002323 upgrade etcd remove pin (#3359)
This upgrade etcd to v3.4.1:

    go get go.etcd.io/etcd@a14579fbfb

this is the commit latest on the release page.

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-10-05 16:51:34 +09:00
Miek Gieben
ea54bc0ad5 Upgrade to miekg/dns 1.1.22 (#3356)
Signed-off-by: Miek Gieben <miek@miek.nl>
2019-10-05 08:58:03 +09:00
janluk
d7cdb992b4 Measure and expose DNS programming latency from Kubernetes plugin. (#3171)
For now metric is measure only for headless services. Informer has been slighlty
refactored, so the code can measure latency without storing extra fields on
Endpoint struct.

Signed-off-by: Janek Łukaszewicz <janluk@google.com>

Suggestions from code review

Co-Authored-By: Chris O'Haver <cohaver@infoblox.com>
2019-10-04 16:48:43 +01:00
Miek Gieben
03ea2ae955 Make request.Request smaller (#3351)
* Make request.Request smaller

This makes the request struct smaller and removes the pointer to the do
boolean (tri-bool) as size == 0 will indicate if we have cached it.

Family can be a int8 because it only carries 3 values, Size itself is
just a uint16 under the covers.

This is a more comprehensive fix than #3292

Closes #3292

Signed-off-by: Miek Gieben <miek@miek.nl>

* cache: fix test

this now needs a valid response writter

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-10-04 09:44:58 +01:00
Miek Gieben
f8551df272 cache: move goroutine closure to separate function to save memory (#3353)
The goroutine closure was causing objects to be heap allocated.  Moving
it to a separate function fixes that.

```benchmark                                old ns/op     new ns/op     delta
BenchmarkCacheResponse/NoPrefetch-12     773           713           -7.76%
BenchmarkCacheResponse/Prefetch-12       878           837           -4.67%
BenchmarkHash-12                         9.17          9.18          +0.11%

benchmark                                old allocs     new allocs     delta
BenchmarkCacheResponse/NoPrefetch-12     9              8              -11.11%
BenchmarkCacheResponse/Prefetch-12       9              8              -11.11%
BenchmarkHash-12                         0              0              +0.00%

benchmark                                old bytes     new bytes     delta
BenchmarkCacheResponse/NoPrefetch-12     471           327           -30.57%
BenchmarkCacheResponse/Prefetch-12       471           327           -30.57%
BenchmarkHash-12                         0             0             +0.00%
```

Signed-off-by: Charlie Vieth <charlie.vieth@gmail.com>
Signed-off-by: Miek Gieben <miek@miek.nl>
2019-10-03 15:05:44 +01:00
Miek Gieben
aa96d6b443 plugin/route53: remove amazon intialization from init (#3348)
Don't perform this code in the init, this allocated 1 megabyte of memory
even if you don't use the plugin. Looks to be only there for testing,
adding a comment to reflect that.

Fixes #3342

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-10-03 07:21:11 +01:00
Miek Gieben
8fde7407d9 plugin/clouddns: remove initialization from init (#3349)
* plugin/clouddns: remove initialization from init

Init should just call the plugin.Register with a setup function.

Fixes: #3343

Signed-off-by: Miek Gieben <miek@miek.nl>

* Fix placement for var f

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-10-02 15:18:36 -07:00
Hauke Löffler
0da2c0c366 Use whitelist in .dockerignore (#3347)
Signed-off-by: Hauke Löffler <hloeffler@users.noreply.github.com>
2019-10-02 12:23:30 +01:00
Yong Tang
d48d8516e3 Add clouddns/OWNERS file (#3346)
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2019-10-02 07:42:29 +01:00
Miek Gieben
64f0345e63 plugin/erratic: doc and zone transfer (#3340)
Fix the documentation, remove autopath entry and fix the transfer by
copying some bits from the file plugin.

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-10-02 07:22:26 +01:00
Ingo Gottwald
fa6718d026 Fix grpc test vet warning (#3341)
This fixes the vet warning: the cancel function returned by
context.WithTimeout should be called, not discarded, to avoid a context
leak.

Signed-off-by: Ingo Gottwald <in.gottwald@gmail.com>
2019-10-01 21:32:59 +01:00
Miek Gieben
575cea4496 Move map to array (#3339)
* Move map to array

The map was not needed move to an array, see #1941 for the original
idea. That of course didn't apply anymore; make a super minimal change
to implements the idea from #1941

Signed-off-by: Miek Gieben <miek@miek.nl>

* Add total count

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-10-01 20:45:52 +01:00
Miek Gieben
2d98d520b5 plugin/forward: make Yield not block (#3336)
* plugin/forward: may Yield not block

Yield may block when we're super busy with creating (and looking) for
connection. Set a small timeout on Yield, to skip putting the connection
back in the queue.

Use persistentConn troughout the socket handling code to be more
consistent.

Signed-off-by: Miek Gieben <miek@miek.nl>

Dont do

Signed-off-by: Miek Gieben <miek@miek.nl>

* Set used in Yield

This gives one central place where we update used in the persistConns

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-10-01 16:39:42 +01:00
Uladzimir Trehubenka
7b69dfebb5 plugin/file: fix panic in miekg/dns.CompareDomainName() (#3337)
Signed-off-by: utrehubenka <utrehubenka@infoblox.com>
2019-10-01 13:22:42 +01:00
Erfan Besharat
4ffbee299a Remove deprecated function calls flagged by staticcheck (#3333)
* Use session.NewSession instead of session.New

Signed-off-by: Erfan Besharat <erbesharat@gmail.com>

* Use grpc.DialContext instead of grpc.WithTimeout

Signed-off-by: Erfan Besharat <erbesharat@gmail.com>

* Pass non-nil context to context.WithTimeout

Signed-off-by: Erfan Besharat <erbesharat@gmail.com>

* Return the error directly in route53 setup

Co-Authored-By: Miek Gieben <miek@miek.nl>
Signed-off-by: Erfan Besharat <erbesharat@gmail.com>
2019-10-01 07:42:10 +01:00
Miek Gieben
dbd1c047cb Run gostaticheck (#3325)
* Run gostaticheck

Run gostaticcheck on the codebase and fix almost all flagged items.

Only keep

* coremain/run.go:192:2: var appVersion is unused (U1000)
* plugin/chaos/setup.go:54:3: the surrounding loop is unconditionally terminated (SA4004)
* plugin/etcd/setup.go:103:3: the surrounding loop is unconditionally terminated (SA4004)
* plugin/pkg/replacer/replacer.go:274:13: argument should be pointer-like to avoid allocations (SA6002)
* plugin/route53/setup.go:124:28: session.New is deprecated: Use NewSession functions to create sessions instead. NewSession has the same functionality as New except an error can be returned when the func is called instead of waiting to receive an error until a request is made.  (SA1019)
* test/grpc_test.go:25:69: grpc.WithTimeout is deprecated: use DialContext and context.WithTimeout instead.  Will be supported throughout 1.x.  (SA1019)

The first one isn't true, as this is set via ldflags. The rest is
minor. The deprecation should be fixed at some point; I'll file some
issues.

Signed-off-by: Miek Gieben <miek@miek.nl>

* Make sure to plug in the plugins

import the plugins, that file that did this was removed, put it in the
reload test as this requires an almost complete coredns server.

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-10-01 07:41:29 +01:00
dependabot-preview[bot]
55a01dadaa build(deps): bump github.com/aws/aws-sdk-go from 1.24.3 to 1.25.1 (#3330)
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.24.3 to 1.25.1.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Changelog](https://github.com/aws/aws-sdk-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.24.3...v1.25.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-30 08:29:59 -07:00
dependabot-preview[bot]
9ae5a1a856 build(deps): bump google.golang.org/grpc from 1.23.0 to 1.24.0 (#3332)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.23.0 to 1.24.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.23.0...v1.24.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-30 09:16:13 -04:00
Miek Gieben
cd5aeecb43 Makefiles: remove GO111MODULE (#3326)
* Makefiles: remove GO111MODULE

This is the default in 1.13 it can be removed; also make the test out
log less, so failure are more pronounced in the travis out, hide
coverage stats for instance.

Signed-off-by: Miek Gieben <miek@miek.nl>

* Kill -v as wel

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-09-30 09:01:19 +01:00
Miek Gieben
03a3695ea9 plugins: calling Dispenser itself is a mistake (#3323)
Remove all these uses and just make them work on caddy.Controller. Also
don't export parsing functions as their should be private to the plugin.

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-09-28 10:41:12 +01:00
Miek Gieben
ba5d4a6372 plugin register (#3321)
These plugins where missed in #3287 because their setup is done in a file
other than setup.go

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-09-28 10:40:43 +01:00
Miek Gieben
4ff5635a6e Run go generate and update deps (#3319)
Go gen updated the deps this is why 1.6.4 has that suffix. Do a go gen
and a go mod tidy.

Fixes: #3318

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-09-27 11:49:14 -07:00
Miek Gieben
b139ba34f3 Set version to 1.6.4 (#3317)
Signed-off-by: Miek Gieben <miek@miek.nl>
v1.6.4
2019-09-27 14:36:14 +01:00
Miek Gieben
22dd0a6f45 Add 1.6.4 release notes (#3315)
Automatically submitted.
2019-09-27 12:47:57 +00:00
Miek Gieben
4568a3c25a doc: run make -f Makefile.doc (#3314)
add the acl manual page; mechanical change otherwise.

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-09-27 13:30:22 +01:00
Miek Gieben
7328d3e8c9 plugin/reload: reflow documentation (#3313)
* plugin/reload: reflow documentation

For some reason these we're all bullets points, which made for awkward
reading.

Signed-off-by: Miek Gieben <miek@miek.nl>

* typo

Signed-off-by: Miek Gieben <miek@miek.nl>

* Update plugin/reload/README.md

Co-Authored-By: Michael Grosser <development@stp-ip.net>
2019-09-27 11:10:47 +01:00
Guangming Wang
8af4685587 cleanup code by lint (#3312)
Signed-off-by: Guangming Wang <guangming.wang@daocloud.io>
2019-09-27 11:10:34 +01:00
Miek Gieben
f2df37a1fe plugin/forward: metrics: make docs reflect reality (#3311)
Remove talk about labels that are not added.

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-09-27 11:09:59 +01:00
xieyanker
9a5e4fa1a0 fix mis-spelling (#3310)
Signed-off-by: xieyanker <xjsisnice@gmail.com>
2019-09-26 13:19:45 +01:00
Miek Gieben
27e22b0696 Use strings.ToLower in server (#3304)
Automatically submitted.
2019-09-25 17:18:54 +00:00
Guangming Wang
eb59e79207 plugin: cleanup code based on staticcheck warnings (#3302)
TrimPrefix re-assign to former variable

Signed-off-by: Guangming Wang <guangming.wang@daocloud.io>
2019-09-25 13:23:43 +01:00
dependabot-preview[bot]
47719756fe build(deps): bump github.com/aws/aws-sdk-go from 1.23.21 to 1.24.3 (#3296)
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.23.21 to 1.24.3.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Changelog](https://github.com/aws/aws-sdk-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.23.21...v1.24.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-24 07:25:14 +01:00
dependabot-preview[bot]
2881eacd06 build(deps): bump gopkg.in/DataDog/dd-trace-go.v1 from 1.17.0 to 1.18.0 (#3295)
Bumps [gopkg.in/DataDog/dd-trace-go.v1](https://github.com/DataDog/dd-trace-go) from 1.17.0 to 1.18.0.
- [Release notes](https://github.com/DataDog/dd-trace-go/releases)
- [Commits](https://github.com/DataDog/dd-trace-go/compare/v1.17.0...v1.18.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-24 07:24:49 +01:00
li mengyang
50bac4d3c3 fix: delete unused var and const (#3294)
Signed-off-by: hwdef <hwdef97@gmail.com>
2019-09-24 07:06:37 +01:00
Guangming Wang
081e45afa3 cleanup: remove redundant return statement (#3297)
Signed-off-by: Guangming Wang <guangming.wang@daocloud.io>
2019-09-23 14:40:14 +01:00
Miek Gieben
004c5fca9d all: simply registering plugins (#3287)
Abstract the caddy call and make it simpler.

See #3261 for some part of the discussion.

Go from:

~~~ go
func init() {
       caddy.RegisterPlugin("any", caddy.Plugin{
               ServerType: "dns",
               Action:     setup,
       })
}
~~~

To:

~~~ go
func init() { plugin.Register("any", setup) }
~~~

This requires some external documents in coredns.io to be updated as
well; the old way still works, so it's backwards compatible.

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-09-20 08:02:30 +01:00
yeya24
85e65702bd add host metrics (#3277)
* add host metrics

Signed-off-by: yeya24 <yb532204897@gmail.com>

* update hosts readme docs

Signed-off-by: yeya24 <yb532204897@gmail.com>
2019-09-19 16:38:15 +01:00
Miek Gieben
62317c3c14 update doc to not use the root zone for everything (#3288)
Update all documentation in the tree to use example.org as an example
configuration (in so far possible). As to get out of the just use "."
and fallthrough and things would be fine.

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-09-19 06:17:53 -07:00
Miek Gieben
31299108ce Run go mod -tidy (#3286)
* Run go mod -tidy

Tidy up and fix the require of x/net to the hash used in miekg/dns, this
seems to fix the "incompatible version bla bla"

Signed-off-by: Miek Gieben <miek@miek.nl>

* Run go mod tidy

Signed-off-by: Miek Gieben <miek@miek.nl>
2019-09-19 06:16:36 -07:00
Guangming Wang
2324439adf ready_test.go: rm t.Fatalf in goroutine (#3284)
Signed-off-by: Guangming Wang <guangming.wang@daocloud.io>
2019-09-19 07:04:19 +01:00