Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

middleware: etcd #9

Closed
miekg opened this issue Mar 18, 2016 · 8 comments
Closed

middleware: etcd #9

miekg opened this issue Mar 18, 2016 · 8 comments

Comments

@miekg
Copy link
Member

miekg commented Mar 18, 2016

Add a middleware that can talk to etcd, just like SkyDNS

@miekg
Copy link
Member Author

miekg commented Mar 25, 2016

todo:

  • stubzones
  • porting all previous test (in progress)
  • stubzone tests
  • bugfixes, code cleanup
  • configuration from Corefile
  • Multi zones tests
  • Nodata responses
  • Integration tests

@miekg
Copy link
Member Author

miekg commented Mar 25, 2016

sooo, sometimes the tests fails with

--- FAIL: TestLookup (0.36s)
    setup_test.go:192: answer 3 should have a Target of "a.server1.prod.region1.skydns.test.", but has "b.server1.prod.region1.skydns.test."
    setup_test.go:120: ;; opcode: QUERY, status: NOERROR, id: 25332
        ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 7, AUTHORITY: 0, ADDITIONAL: 3

        ;; QUESTION SECTION:
        ;*.region1.skydns.test. IN   SRV

        ;; ANSWER SECTION:
        *.region1.skydns.test.  300 IN  SRV 10 14 0 sub.server1.
        *.region1.skydns.test.  300 IN  SRV 10 14 0 unresolvable.skydns.test.
        *.region1.skydns.test.  300 IN  SRV 10 14 80 sub.server2.
        *.region1.skydns.test.  300 IN  SRV 10 14 8080 b.server1.prod.region1.skydns.test.
        *.region1.skydns.test.  300 IN  SRV 10 14 8080 b.server6.prod.region1.skydns.test.
        *.region1.skydns.test.  300 IN  SRV 10 14 8080 c.sub.region1.skydns.test.
        *.region1.skydns.test.  300 IN  SRV 10 14 8080 dev.server1.

        ;; ADDITIONAL SECTION:
        b.server1.prod.region1.skydns.test. 300 IN  A   10.0.0.2
        b.server6.prod.region1.skydns.test. 300 IN  AAAA    ::1
        c.sub.region1.skydns.test.  300 IN  A   10.0.0.1

    setup_test.go:164: answer 0 should have a Header Name of "a.server1.prod.region1.skydns.test.", but has "b.server1.prod.region1.skydns.test."
    setup_test.go:127: ;; opcode: QUERY, status: NOERROR, id: 25332
        ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 7, AUTHORITY: 0, ADDITIONAL: 3

        ;; QUESTION SECTION:
        ;*.region1.skydns.test. IN   SRV

        ;; ANSWER SECTION:
        *.region1.skydns.test.  300 IN  SRV 10 14 0 sub.server1.
        *.region1.skydns.test.  300 IN  SRV 10 14 0 unresolvable.skydns.test.
        *.region1.skydns.test.  300 IN  SRV 10 14 80 sub.server2.
        *.region1.skydns.test.  300 IN  SRV 10 14 8080 b.server1.prod.region1.skydns.test.
        *.region1.skydns.test.  300 IN  SRV 10 14 8080 b.server6.prod.region1.skydns.test.
        *.region1.skydns.test.  300 IN  SRV 10 14 8080 c.sub.region1.skydns.test.
        *.region1.skydns.test.  300 IN  SRV 10 14 8080 dev.server1.

        ;; ADDITIONAL SECTION:
        b.server1.prod.region1.skydns.test. 300 IN  A   10.0.0.2
        b.server6.prod.region1.skydns.test. 300 IN  AAAA    ::1
        c.sub.region1.skydns.test.  300 IN  A   10.0.0.1

FAIL

@miekg
Copy link
Member Author

miekg commented Mar 25, 2016

For some reason *.region1.skydns.test. 300 IN SRV 10 14 8080 c.sub.region1.skydns.test. get included, which seems wrong.

@miekg
Copy link
Member Author

miekg commented Mar 25, 2016

Ah wait sub should be included - which makes sense. So b.server1.prod.region1.skydns.test. is included but (strangely) a.server1.prod.region1.skydns.test. has dropped out of the set. Replacing it with the c.sub ones... #hmmm

@miekg
Copy link
Member Author

miekg commented Mar 25, 2016

Had changed an optimization (bx in etcd.go) to not include n.Key which made it do the wrong thing. (Might actually be a bug in SkyDNS as well...)

@miekg
Copy link
Member Author

miekg commented Mar 25, 2016

see e62eb2c

@miekg
Copy link
Member Author

miekg commented Apr 12, 2016

nodata responses and integration tests left.

@miekg
Copy link
Member Author

miekg commented Apr 12, 2016

All fixed, closing in favour of integration tests in #100

@miekg miekg closed this as completed Apr 12, 2016
miekg added a commit that referenced this issue Apr 12, 2016
* Finish the nodata stuff. See issue #9
* middleware/etc: add response to SOA queries
* Remove and add a few TODOs
miekg added a commit that referenced this issue Apr 12, 2016
* Finish the nodata stuff. See issue #9
* middleware/etc: add response to SOA queries
* Remove and add a few TODOs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant