Commit Graph

34 Commits

Author SHA1 Message Date
Yerken
0b43cf511f cmd flags fixes, fix the bug with multi source (#149) 2017-04-12 18:13:03 +02:00
Yerken
98de0142ba kickoff txt registry (#137)
* kickoff txt registry

* fix inmemory dns provider to include recordtype info for validation

* Merge master

* fix ununsed variable in inmemory provider

* add tests for records

* add test for no prefix name formatter

* implement apply changes with tests

* add flag to enable txt registry

* add txt registry to main

* improve sort testing

* filter out non-owned records

* NewEndpoint(...) requires record type

* use newendpoint in aws_test, fix tests

* change suitable type implementation

* fix the test for compatibility component

* change inmemory provider to include recordtype and use suitable type

* fix comments, CNAME should target hostname

* name mapper do not use pointer on struct

* txt prefix - just concatenate, remove spew, fix txt record label

* allow TXT records as result from dns provider

* add changelog

* fix tests

* TXT records need to be enclosed in double quotes
2017-04-11 23:10:38 +02:00
Martin Linkhorst
9d48d89240 feat(source): support services annotated with mate's annotations (#141) 2017-04-10 15:43:41 +02:00
Yerken
be452acdf7 endpoint sanitize dns in the init func (#131)
* revert changes, start a new

* remove sanitize

* fix tests for source pkg

* fix aws_tests
2017-04-07 10:18:52 +02:00
Martin Linkhorst
b0f437a438 support hostnames as endpoint targets (CNAME support) (#122)
* feat(aws): support hostnames as endpoint targets

* docs: describe how to run ExternalDNS on AWS

* docs: update changelog with CNAME feature

* docs: update changelog to include AWS documentation

* fix(aws): test that updating records removes the old value

* feat(google): add CNAME support to Google provider

* fix(source): sanitize source and target hostnames

* docs: update changelog to include latest changes

* docs(aws): mention that ExternalDNS takes full ownership of a hosted zone

* fix(aws): switch route53 tests to use endpoint pointers

* docs: add TODO to remove record filtering once ownership is in place
2017-04-05 14:58:10 +02:00
Yerken
f9402d7ed1 use pointer to endpoint via NewEndpoint initializer (#125)
* use pointer to endpoint via NewEndpoint initializer

* return nil if record does not exist in plan

* add test for NewEndpoint
2017-04-04 16:41:49 +02:00
Martin Linkhorst
f3c1d0f770 fix(source): ingresses should be ignored if other controller (#108) 2017-03-23 16:33:44 +01:00
Martin Linkhorst
e6749c8d3d feat: allow to register and lookup sources by name (#84) 2017-03-14 10:55:12 +01:00
Martin Linkhorst
08d752c592 Ingress: appends trailing dot to hostnames (#85)
* fix(ingress): append trailing dot to hostnames

* fix(source): update tests for sanitized DNS names
2017-03-14 10:54:24 +01:00
Martin Linkhorst
f326f65c7e MultiSource: a Source that merges results from other Sources (#79)
* feat(source): promote MockSource to source package

* feat(source): add MultiSource to merge other Sources

* feat(source): make structs and members of multiSource private
2017-03-13 15:05:17 +01:00
Martin Linkhorst
c3378f7f67 use constructor methods to create sources (#82)
* ref(source): use constructor methods to create sources

* fix: import and use missing package

* fix(source): fix merge conflict with master branch
2017-03-13 14:18:20 +01:00
Martin Linkhorst
cf9c5e39ed feat(source): promote MockSource to source package (#78) 2017-03-13 14:17:55 +01:00
Martin Linkhorst
b29e7343e1 fix(source): validate that sources adhere to the interface (#80) 2017-03-13 12:39:57 +01:00
Martin Linkhorst
69565ced3e
chore: use alpha annotations 2017-03-08 11:50:21 +01:00
Martin Linkhorst
af5fc5ab0f
Merge remote-tracking branch 'upstream/master' into namespace 2017-03-07 17:51:36 +01:00
Martin Linkhorst
298e0ca5a0 ref(source): avoid shadowing the endpoint package (#66) 2017-03-07 17:48:12 +01:00
Martin Linkhorst
78a2b1d8d5
feat: allow passing a namespace that limits found resources 2017-03-06 16:41:14 +01:00
ideahitme
0115c2007d test ingress on diff namespaces 2017-03-02 16:57:29 +01:00
ideahitme
d9697c0463 gofmt ingress_test 2017-03-02 15:26:17 +01:00
ideahitme
c14b4107f0 ingress tests 2017-03-02 15:14:37 +01:00
ideahitme
d89a94e928 Merge branch 'master' into ingress/basic-support 2017-03-02 12:04:46 +01:00
ideahitme
50c50c655e add boilerplate header to shared test 2017-03-02 11:34:46 +01:00
ideahitme
43e11ea66b scoped ingress tests 2017-03-02 11:34:01 +01:00
ideahitme
014982cafc create shared_test and scope service tests 2017-03-02 11:24:23 +01:00
ideahitme
ef76c7dc73 first implementation without test 2017-03-02 11:11:13 +01:00
ideahitme
4e04f36c6f ingress kickoff 2017-03-01 16:37:09 +01:00
Martin Linkhorst
99371a1e83 implementation of basic control loop (#40)
* feat(google): add ability to apply changes generated from a plan

* feat(controller): first implementation of controller

* feat: allow to configure in-cluster and kubeconfig

* fix(controller): call RunOnce at the right time and in a loop

* feat(google): add dryRun attribute to Google DNS provider

* fix: use hosted zone id instead of DNS name

* fix(google): stupidly filter by A records for now

* feat: allow specifying the google project and zone

* feat: provide a dry-run flag which defaults to false

* chore: vendor new dependencies

* fix(config): fix failing tests for config object

* ref(controller): return plain value of ApplyChanges

* ref: simplify how to get a valid kubernetes client
2017-03-01 16:17:47 +01:00
Martin Linkhorst
f3458d0dbd
fix(source): consistently use CoreV1() instead of Core() 2017-03-01 11:30:39 +01:00
Justin Santa Barbara
18318b84be Extract Status.LoadBalancer.Hostname from service annotations
On AWS, the loadbalancer is / will be / should be set up in the
hostname.
2017-02-26 22:22:43 -05:00
Martin Linkhorst
f156cd89d7
chore(source): add boilerplate headers 2017-02-24 17:16:26 +01:00
Martin Linkhorst
c14dc609d2
ref: rename test message to test title 2017-02-23 15:32:26 +01:00
Martin Linkhorst
e6bb517738
ref: run individual table tests in sub tests 2017-02-23 14:14:24 +01:00
Martin Linkhorst
062ffc61e7
fix: typo in docs describing ServiceSource 2017-02-23 14:13:15 +01:00
Martin Linkhorst
84910c4844
feat(services): implement Kubernetes services source 2017-02-23 12:04:13 +01:00