Commit Graph

83 Commits

Author SHA1 Message Date
lovemai073
bc2ccea9ea Add AWS region ap-east-1(HK)
User using ELB in HK region will add new CNAME and TXT records to Route53.
Add AWS HK available region ap-east-1.
https://docs.aws.amazon.com/general/latest/gr/elb.html
note:clear repository
2020-04-08 20:43:03 +08:00
Markus Cisler
14d64e09f2 Change DomainFilter to apply to records as well
This moves `domain_filter.go` to the `endpoint` package to make it
possible to filter and exclude record names in
`plan.filterRecordsForPlan()` so it does not have to be implemented in
every single provider.

Because some providers access `DomainFilter.filters` directly it had to
be exported.
2020-02-24 11:19:45 +01:00
Tariq Ibrahim
394f46cd64
uprade golangci-lint and add megacheck & interface linters 2020-01-23 14:49:23 -08:00
tariqibrahim
672b00d821 add ctx parameter to provider interface and aws API 2020-01-12 13:16:55 -08:00
Tariq Ibrahim
bf4b1767fa
add more linters and improve code quality 2020-01-07 15:18:00 -08:00
Tariq Ibrahim
41ba7f1ff5
rename project root package to sigs.k8s.io 2020-01-06 08:08:35 -08:00
Bryan Stenson
26b32f3e4f typo; remove extra space 2019-12-06 13:37:48 -08:00
Nick Jüttner
9418e3acd8
Merge pull request #1008 from devkid/feature/aws-routing-policies
[RFC] Add support for all AWS Route53 routing policies; add additional Setldentifier abstraction layer
2019-11-19 11:21:12 +01:00
Mostafa Dahab
4f662d48ea
Add me-south region to canonicalHostedZones
https://github.com/kubernetes-sigs/external-dns/issues/1265
2019-11-08 21:00:34 +03:00
Helgi Þormar Þorbjörnsson
e70338deb0
Add gov LB hosted zone
At the bottom of https://docs.aws.amazon.com/govcloud-us/latest/UserGuide/using-govcloud-endpoints.html it says:
> Amazon Route 53 hosted Zone ID for the regional endpoint in the AWS GovCloud (US) region is Z1K6XKP9SAGWDV.
2019-11-06 11:43:29 -08:00
Nick Jüttner
f763d2a413 Move into kubernetes-sigs organization (#1245)
* Move into kubernetes-sigs organization

* Disable labeler action for forks
2019-11-01 17:10:19 +01:00
Bjørn Sørensen
2bfa8d95d9 Fix build errors 2019-09-10 20:51:45 +02:00
Alfred Krohmer
2d02bb374e Use switch case instead of many ifs 2019-09-10 20:47:36 +02:00
Alfred Krohmer
b2a3e88303 Fixes and cleanup 2019-09-10 20:47:36 +02:00
Alfred Krohmer
6681a3a358 Add support for all AWS Route53 routing policies; add additional SetIdentifier abstraction layer
This adds support for all AWS Route53 routing policies, namely:
* simple (default)
* weighted
* latency
* failover
* geolocation
* multi value answer

These routing policies allow to create multiple records with the same
name, but different "SetIdentifiers". Therefor, as a prerequisite for
implementing support for above routing policies, there is a new
"abstraction layer" added that handles this SetIdentifier by adding a
new attribute in the Endpoint struct and adding another level in the
plan table.
2019-09-10 20:47:36 +02:00
Helgi Þormar Þorbjörnsson
bccffc251b
Add the AWS Hosted Zone ID to log info
Useful when the private/public zones are named the same but a problem happens in one of them

Additionally adds info about which Hosted Zone AWS Batch errors are happening in

```
level=error msg="InvalidChangeBatch: [Tried to create resource record set [name=woof.service.example.com., type=CNAME, set-identifier=legacy] but it already exists, Tried to create resource record set [name=best.service.example.com., type=CNAME, set-identifier=legacy] but it already exists, Tried to create resource record set [name=better.service.example.com., type=CNAME, set-identifier=legacy] but it already exists, Tried to create resource record set [name=my.service.example.com., type=CNAME, set-identifier=legacy] but it already exists]\n\tstatus code: 400, request id: XXX-XXX-XXX-XX"
```
2019-08-02 20:59:25 -07:00
Martin Linkhorst
4dce600a2b feat(aws): allow to force usage of CNAME over ALIAS 2019-07-17 14:46:32 +02:00
twilfong
d68d06f17c add dualstack support for AWS provider with ALB ingress controllers 2019-06-26 18:05:22 -07:00
Arturo Contreras
74d8842dd9 Fix panic on empty targets for custom resources. 2019-05-15 08:57:04 -06:00
Michael Fraenkel
fab942f486 Cache the endpoints on the controller loop
The controller will retrieve all the endpoints at the beginning of its
loop. When changes need to be applied, the provider may need to query
the endpoints again. Allow the provider to skip the queries if its data was
cached.
2019-05-07 19:51:53 -04:00
Michael Fraenkel
f4f9708791 Set a default TTL for AWS Alias records 2019-04-13 16:21:12 -04:00
Kubernetes Prow Robot
38089fcd8c
Merge pull request #966 from fraenkel/streamline
Streamline AWS ApplyChanges
2019-04-11 08:44:13 -07:00
Michael Fraenkel
f4f3c9939f Streamline AWS ApplyChanges
- collect the zones and records once
2019-04-11 07:32:20 -04:00
Jason Fillo
44c32e1ed8 aws-r53: adding china ELB endpoints and hosted zone id's. fixed typo when reformatting 2019-04-09 11:51:44 -05:00
Jason Fillo
3881192067 aws-r53: adding china ELB endpoints and hosted zone id's. corrected formatting 2019-04-09 09:58:10 -05:00
Jason Fillo
2f34d2d201 aws-r53: adding china ELB endpoints and hosted zone id's 2019-04-09 09:25:21 -05:00
Martin Linkhorst
a29d24ddaf
fix: reduce number of API requests by caching a bit 2019-01-29 14:55:06 +01:00
Nick Jüttner
6d39526069
Merge branch 'master' into cloudflare-proxied-annotation 2019-01-24 11:16:54 +01:00
Joe Hohertz
7a28e3047a Adds a new flag --aws-api-retries which allows overriding the
number of retries that API calls will attempt before giving up.

This somewhat mitigates the issues discussed in #484 by allowing
the current sync attempt to complete vs. failing and starting anew.

Defaults to 3, which is what the aws-sdk-go defaults to where not
specified.

Signed-off-by: Joe Hohertz <joe@viafoura.com>
2019-01-17 12:37:27 -05:00
Joakim Olsson
ca0d3aa59c Add support for eu-north-1 2019-01-07 15:37:22 +01:00
Cesar Wong
65e13af9b7 Add zone tag filter for AWS 2018-12-07 10:38:52 -05:00
Erik Swets
e0e7a9defd Allow setting Cloudflare proxying by annotation 2018-11-16 12:52:47 +01:00
Nick Jüttner
ae2b782b58
Merge pull request #742 from mytaxi/feature/add-alias-annotation
Feature/add alias annotation
2018-11-14 14:22:58 +01:00
k8s-ci-robot
3bc7e07cd3
Merge pull request #727 from etopeter/aws_wildcard_txtprefix_match
Matching entire string for wildcard in txt records with prefixes
2018-11-14 04:55:27 -08:00
vaegt
38dc658270
Change log level 2018-11-09 11:19:19 +01:00
vaegt
a4b753df6c
Format changes 2018-10-16 14:29:41 +02:00
vaegt
bb80f99e17
Add alias annotation for ingress 2018-10-16 13:30:07 +02:00
Peter Strzyzewski
e9faea3596 Matching entire string for wildcard in txt records with prefixes 2018-10-02 14:40:18 -07:00
Martin Linkhorst
f21f45b15d
fix(aws): correctly populate target health check on existing records 2018-10-02 17:44:02 +02:00
Peter Bale
93053087f1 Adding new tests for additional batching logic
This is to add two new tests which will cover the new logic where the
submit route53 changes function can error if any one of the updates
fails for any given batch in any given zone. Additionally, there is now
a test to check that the application does not try and create a set of
entries if the total number of changes associated with a given name is
greater than the total number of allowed changes per batch.
2018-09-06 16:44:20 +01:00
Peter Bale
be4b4accf9 Change the way aws batching works
This is to change the way batching works when using the aws provider.
Originally, batching would take the first n records you want to update
and perform the desired actions on those records as part of a sync. It
would then wait for the configured sync period and take the first n
records again and sync them. The issue with this is that when you are
using the TXT registry with a custom prefix, the updates can sync a TXT
record and not the accompanying A/CNAME record. This causes external-dns
to get out of sync with what is created and what the current state
actually is. This update uses the same idea of batching, however, rather
than stopping after the first batch until the next run, batching will
now have a separate batch interval which controls the interval between
each batch in the same sync period. This allows external-dns to fully
sync with route53 as part of each sync and can then know that the state
is complete.

Fixes https://github.com/kubernetes-incubator/external-dns/issues/679
2018-09-06 16:44:20 +01:00
Aditya Purandare
5c552a953d fix log message for #592 when no updates in hosted zones (#634) 2018-07-16 10:19:53 +02:00
Peter Bale
ee941aab56 Add aws-evaluate-target-health flag
This is to add a new `--aws-evaluate-target-health` which allows the
user to override the default EvaluateTargetHealth value (currently set
to `true`) when creating AWS Route53 ALIAS records. To disable, pass
`--no-aws-evaluate-target-health` as outlined in the help page.

Closes https://github.com/kubernetes-incubator/external-dns/issues/627
2018-07-06 11:58:55 +01:00
Nick Jüttner
2e4778fac8
Merge pull request #594 from elordahl/names
AWS provider: Properly check suitable domains
2018-06-20 17:15:46 +02:00
Peter Bale
e34bf552d6 Add aws max change count flag (#596)
* Create `NewAWSProvider` with `AWSConfig` struct

Rather than calling `NewAWSProvider` with a list of objects, you will
now call it using a new `AWSConfig` struct. This allows for clearer
declarations of variables which becomes even  more important as more
variables are added.

* Add `aws-max-change-count` flag

Adding a new `aws-max-change-count` flag to override the default max
change count on the aws provider.

Included updated tests with a new `defaultMaxChangeCount` constant and
tests for setting the value as a flag and as an environment variable.

* Update CHANGELOG.md

Updating CHANGELOG.md with 'Add aws max change count flag' PR.
2018-06-18 14:21:37 +02:00
Svend Sorensen
e01cf2f61d Print a message if no hosted zones match (aws provider) (#592)
* Print a message if no hosted zones match (aws provider)

Fixes #590

* Remove early return
2018-06-14 20:53:54 +02:00
Eric Lordahl
d250699af3
AWS provider: Properly check suitable domains 2018-06-14 14:18:10 -04:00
Martin Linkhorst
3f675b0cb1 feat: add support for AWS NLBs 2018-04-19 10:10:38 +02:00
Nick Jüttner
8819ed62e8
Merge pull request #524 from linki/assume-role
AWS: Allow to assume another role
2018-04-18 16:02:06 +02:00
Martin Linkhorst
790a78292a
fix: actually change the correct config object 2018-04-18 13:51:28 +02:00