CHANGELOG.md 9.16 KB
Newer Older
Peter Bale's avatar
Peter Bale committed
1
2
  - Add aws evaluate target health flag (#628) @peterbale

3
4
5
6
7
8
9
10
11
12
## v0.5.4 - 2018-06-28

  - Only store endpoints with their labels in the cache (#612) @njuettner
  - Read hostnames from spec.tls.hosts on Ingress object (#611) @ysoldak
  - Reorder provider/aws suitable-zones tests (#608) @elordahl
  - Adds TLS flags for pdns provider (#607) @jhoch-palantir
  - Update RBAC for external-dns to list nodes (#600) @njuettner
  - Add aws max change count flag (#596) @peterbale
  - AWS provider: Properly check suitable domains (#594) @elordahl
  - Annotation with upper-case hostnames block further updates (#579) @njuettner
13
  
Nick Jüttner's avatar
Nick Jüttner committed
14
15
16
17
18
19
20
21
22
## v0.5.3 - 2018-06-15

  - Print a message if no hosted zones match (aws provider) (#592) @svend
  - Add support for NodePort services (#559) @grimmy
  - Update azure.md to fix protocol value (#593) @JasonvanBrackel
  - Add cache to limit calls to providers (#589) @jessfraz
  - Add Azure MSI support (#578) @r7vme
  - CoreDNS/SkyDNS provider (#253) @istalker2

23
24
25
26
27
28
29
30
31
## v0.5.2 - 2018-05-31

  - DNSimple: Make DNSimple tolerant of unknown zones (#574) @jbowes
  - Cloudflare: Custom record TTL (#572) @njuettner
  - AWS ServiceDiscovery: Implementation of AWS ServiceDiscovery provider (#483) @vanekjar
  - Update docs to latest changes (#563) @Raffo
  - New source - connector (#552) @shashidharatd
  - Update AWS SDK dependency to v1.13.7 @vanekjar

32
33
34
35
36
37
38
39
40
41
42
## v0.5.1 - 2018-05-16

  - Refactor implementation of sync loop to use `time.Ticker` (#553) @r0fls
  - Document how ExternalDNS gets permission to change AWS Route53 entries (#557) @hjacobs
  - Fix CNAME support for the PowerDNS provider (#547) @kciredor
  - Add support for hostname annotation in Ingress resource (#545) @rajatjindal
  - Fix for TTLs being ignored on headless Services (#546) @danbondd
  - Fix failing tests by giving linters more time to do their work (#548) @linki
  - Fix misspelled flag for the OpenStack Designate provider (#542) @zentale
  - Document additional RBAC rules needed to read Pods (#538) @danbondd

43
44
## v0.5.0 - 2018-04-23

45
  - Google: Correctly filter records that don't match all filters (#533) @prydie @linki
46
  - AWS: add support for AWS Network Load Balancers (#531) @linki
47
  - Add a flag that allows FQDN template and annotations to combine (#513) @helgi
48
  - Fix: Use PodIP instead of HostIP for headless Services (#498) @nrobert13
49
  - Support a comma separated list for the FQDN template (#512) @helgi
50
  - Google Provider: Add auto-detection of Google Project when running on GCP (#492) @drzero42
51
  - Add custom TTL support for DNSimple (#477) @jbowes
52
  - Fix docker build and delete vendor files which were not deleted (#473) @njuettner
53
  - DigitalOcean: DigitalOcean creates entries with host in them twice (#459) @njuettner
54
  - Bugfix: Retrive all DNSimple response pages (#468) @jbowes
55
  - external-dns does now provide support for multiple targets for A records. This is currently only supported by the Google Cloud DNS provider (#418) @dereulenspiegel
56
  - Graceful handling of misconfigure password for dyn provider (#470) @jvassev
57
  - Don't log sensitive data on start (#463) @jvassev
58
  - Google: Improve logging to help trace misconfigurations (#388) @stealthybox
59
  - AWS: In addition to the one best public hosted zone, records will be added to all matching private hosted zones (#356) @coreypobrien
60
61
62
63
64
  - Every record managed by External DNS is now mapped to a kubernetes resource (service/ingress) @ideahitme
    - New field is stored in TXT DNS record which reflects which kubernetes resource has acquired the DNS name
    - Target of DNS record is changed only if corresponding kubernetes resource target changes
    - If kubernetes resource is deleted, then another resource may acquire DNS name
    - "Flapping" target issue is resolved by providing a consistent and defined mechanism for choosing a target
65
  - New `--zone-id-filter` parameter allows filtering by zone id (#422) @vboginskey
66
67
  - TTL annotation check for azure records (#436) @stromming
  - Switch from glide to dep (#435) @bkochendorfer
68

69
## v0.4.8 - 2017-11-22
70

71
  - Allow filtering by source annotation via `--annotation-filter` (#354) @khrisrichardson
72
  - Add support for Headless hostPort services (#324) @Arttii
73
  - AWS: Added change batch limiting to a maximum of 4000 Route53 updates in one API call.  Changes exceeding the limit will be dropped but all related changes by hostname are preserved within the limit. (#368) @bitvector2
74
  - Google: Support configuring TTL by annotation: `external-dns.alpha.kubernetes.io/ttl`. (#389) @stealthybox
75
76
  - Infoblox: add option `--no-infoblox-ssl-verify` (#378) @khrisrichardson
  - Inmemory: add support to specify zones for inmemory provider via command line (#366) @ffledgling
77

78
79
80
81
## v0.4.7 - 2017-10-18

  - CloudFlare: Disable proxy mode for TXT and others (#361) @dunglas

82
83
## v0.4.6 - 2017-10-12

84
  - [AWS Route53 provider] Support customization of DNS record TTL through the use of annotation `external-dns.alpha.kubernetes.io/ttl` on services or ingresses (#320) @kevinjqiu
85
  - Added support for [DNSimple](https://dnsimple.com/) as DNS provider (#224) @jose5918
86
  - Added support for [Infoblox](https://www.infoblox.com/products/dns/) as DNS provider (#349) @khrisrichardson
87
88
89

## v0.4.5 - 2017-09-24

90
91
92
93
94
  - Add `--log-level` flag to control log verbosity and remove `--debug` flag in favour of `--log-level=debug` (#339) @ultimateboy
  - AWS: Allow filtering for private and public zones via `--aws-zone-type` flag (#329) @linki
  - CloudFlare: Add `--cloudflare-proxied` flag to toggle CloudFlare proxy feature (#340) @dunglas
  - Kops Compatibility: Isolate ALIAS type in AWS provider (#248) @sethpollack

95
96
## v0.4.4 - 2017-08-17

97
  - ExternalDNS now services of type `ClusterIP` with the use of the `--publish-internal-services`.  Enabling this will now create the apprioriate A records for the given service's internal ip.  @jrnt30
98
  - Fix to have external target annotations on ingress resources replace existing endpoints instead of appending to them (#318)
99

100
## v0.4.3 - 2017-08-10
101

102
103
  - Support new `external-dns.alpha.kubernetes.io/target` annotation for Ingress (#312)
  - Fix for wildcard domains in Route53 (#302)
104

105
106
107
108
## v0.4.2 - 2017-08-03

  - Fix to support multiple hostnames for Molecule Software's [route53-kubernetes](https://github.com/wearemolecule/route53-kubernetes) compatibility (#301)

109
110
111
112
## v0.4.1 - 2017-07-28

  - Fix incorrect order of constructor parameters (#298)

113
114
## v0.4.0 - 2017-07-21

115
116
117
118
119
120
121
122
123
124
125
126
127
128
  - ExternalDNS now supports three more DNS providers:
    * [AzureDNS](https://azure.microsoft.com/en-us/services/dns) @peterhuene
    * [CloudFlare](https://www.cloudflare.com/de/dns) @njuettner
    * [DigitalOcean](https://www.digitalocean.com/products/networking) @njuettner
  - Fixed a bug that prevented ExternalDNS to be run on Tectonic clusters @sstarcher
  - ExternalDNS is now a full replace for Molecule Software's `route53-kubernetes` @iterion
  - The `external-dns.alpha.kubernetes.io/hostname` annotation accepts now a comma separated list of hostnames and a trailing period is not required anymore. @totallyunknown
  - The flag `--domain-filter` can be repeated multiple times like `--domain-filter=example.com --domain-filter=company.org.`. @totallyunknown
  - A trailing period is not required anymore for `--domain-filter` when AWS (or any other) provider is used. @totallyunknown
  - We added a FakeSource that generates random endpoints and allows to run ExternalDNS without a Kubernetes cluster (e.g. for testing providers) @ismith
  - All HTTP requests to external APIs (e.g. DNS providers) generate client side metrics. @linki
  - The `--zone` parameter was removed in favor of a provider independent `--domain-filter` flag. @linki
  - All flags can now also be set via environment variables. @linki

129
130
## v0.3.0 - 2017-05-08

Yerken's avatar
Yerken committed
131
Features:
132

133
134
135
136
137
138
139
  - Changed the flags to the v0.3 semantics, the following has changed:
    1. The TXT registry is used by default and has an owner ID of `default`
    2. `--dry-run` is disabled by default
    3. The `--compatibility` flag was added and takes a string instead of a boolean
    4. The `--in-cluster` flag has been dropped for auto-detection
    5. The `--zone` specifier has been replaced by a `--domain-filter` that filters domains by suffix
  - Improved logging output
140
  - Generate DNS Name from template for services/ingress if annotation is missing but `--fqdn-template` is specified
141
  - Route 53, Google CloudDNS: Support creation of records in multiple hosted zones.
142
  - Route 53: Support creation of ALIAS records when endpoint target is a ELB/ALB.
143
144
145
146
147
  - Ownership via TXT records
    1. Create TXT records to mark the records managed by External DNS
    2. Supported for AWS Route53 and Google CloudDNS
    3. Configurable TXT record DNS name format
  - Add support for altering the DNS record modification behavior via policies.
Yerken's avatar
Yerken committed
148

149
150
## v0.2.0 - 2017-04-07

151
152
153
154
Features:

  - Support creation of CNAME records when endpoint target is a hostname.
  - Allow omitting the trailing dot in Service annotations.
155
  - Expose basic Go metrics via Prometheus.
156
157
158
159
160

Documentation:

  - Add documentation on how to setup ExternalDNS for Services on AWS.

161
162
163
164
165
166
## v0.1.1 - 2017-04-03

Bug fixes:

  - AWS Route 53: Do not submit request when there are no changes.

Martin Linkhorst's avatar
Martin Linkhorst committed
167
168
169
170
171
## v0.1.0 - 2017-03-30 (KubeCon)

Features:

  - Manage DNS records for Services with `Type=LoadBalancer` on Google CloudDNS.