Commit Graph

61 Commits

Author SHA1 Message Date
Michael Shen
5ec37e0699
Refactor AWS provider to aws-sdk-go-v2
Signed-off-by: Michael Shen <mishen@umich.edu>
2024-09-06 09:44:54 -04:00
Thibault Jamet
b2ff1619f5
Add Domain filter interface 2024-08-14 10:20:59 +02:00
Jan Roehrich
604a93670e resolve SZUECS' findings 2024-06-10 21:09:18 +02:00
Jan Roehrich
fd74c25661
rebase 2024-03-05 23:27:07 +01:00
Jan Roehrich
38621aafc3
Rebase adaptions 2024-03-05 23:06:18 +01:00
Jan Roehrich
7fb25f44ce
Allow usage of (multiple) AWS profiles using .credentials file 2024-03-05 23:06:16 +01:00
Kubernetes Prow Robot
6cf4783a07
Merge pull request #4178 from papayakiwi/fix/aws-alias-records
fix(aws): allow alias records to be created when using the alias annotation
2024-02-29 10:23:42 -08:00
Megum1n
7d3d355175
Merge branch 'master' into aws-provider-validate-value-size 2024-02-07 16:27:36 +01:00
papaya kiwi
f9ee550912 fix(aws): allow alias records to be created when using the alias annotation 2024-01-14 23:17:50 +00:00
Megum1n
a814586ca2
Test fixes 2024-01-05 22:02:02 +01:00
Kubernetes Prow Robot
874dd2bcba
Merge pull request #4115 from PascalBourdier/remove-compareboolean
fix: remove useless functions
2023-12-29 11:18:49 +01:00
Alfred Krohmer
366c070d89 cleanup: remove dead code ((Create|Update|Delete)Records functions in AWS, Google, DNSimple)
These functions where exported but unused; only `CreateRecords` was used in some tests, but its use can be replaced with `ApplyChanges`.
2023-12-20 16:55:49 +01:00
Megum1n
c391f5588a
Validate AWS record values size during batch set generation 2023-12-19 10:21:47 +01:00
Pascal Bourdier
279cc2d889 fix: remove escapeAWSRecords func
escapeAWSRecords() is no more used

cf: a799233125
2023-12-16 15:45:29 +01:00
Kubernetes Prow Robot
f42e4fe854
Merge pull request #3910 from johngmyers/a-alias
Represent AWS Alias records as record type A
2023-09-18 12:08:57 -07:00
John Gardiner Myers
72a4fd8343
Address review comment
Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com>
2023-09-15 19:43:36 -07:00
John Gardiner Myers
c596611f9e Allow AdjustEndpoints to return error 2023-09-03 11:23:03 -07:00
John Gardiner Myers
ff7412a844 Represent AWS Alias records as record type A 2023-09-02 17:54:50 -07:00
Kubernetes Prow Robot
16b28d8afe
Merge pull request #3711 from johngmyers/domainfilter
Refactor Provider to require DomainFilter
2023-07-20 04:02:07 -07:00
Seweryn Chlewicki
ce192181fb
Revert to recordTTL 2023-06-27 21:07:40 +01:00
Seweryn Chlewicki
0019d158dc
Unset instead 2023-06-27 17:49:58 +01:00
Sewci0
bbeb167e20
Update provider/aws/aws_test.go
Co-authored-by: John Gardiner Myers <jgmyers@proofpoint.com>
2023-06-27 17:20:02 +01:00
Seweryn Chlewicki
d18abe5f39
[AWS] Adjust TTL for alias records 2023-06-27 16:28:09 +01:00
John Gardiner Myers
43eea7fa9b Refactor Provider to require DomainFilter 2023-06-19 20:25:59 -07:00
John Gardiner Myers
55bbb29f55 Route53 update configuration of target health checks 2023-06-09 17:11:28 -07:00
John Gardiner Myers
f4756f8498 Remove unnecessary Route53 code 2023-06-08 15:51:25 -07:00
John Gardiner Myers
10a6a04e47 Refactor route53 test assertions
Makes relevant tests verify the precise resulting route53 records
2023-05-15 17:57:23 -07:00
John Gardiner Myers
a799233125 Refactor route53 test initial state
Makes tests cover errors in conversion between endpoints and records and allows testing of records that can't be generated from an endpoint.
2023-05-15 17:56:40 -07:00
Seweryn Chlewicki
2533415e24
Add tests for AWS 2023-05-02 17:30:27 +01:00
Jeff Wenzbauer
1a683e440c
Update canonical zone test to dynamically test all canonical zones 2023-02-22 13:29:02 -07:00
Bruno Leite Alves
0dc451d7de add ap-northeast-3 (Osaka) network balancer hosted zone ID to aws provider 2023-01-26 18:23:41 +01:00
Alfred Krohmer
7dd84a589d Route53: retry single changes in a batch if the batch fails
If a single change fails during the retry, it will be added to a queue.
In the next iteration, changes from this queue will be submitted after
all other changes.

When submitting single changes, they are always submitted as batches of
changes with the same DNS name and ownership relation to avoid
inconsistency between the record created and the TXT records.
2023-01-16 16:03:16 +01:00
Alfred Krohmer
adf6ad753f Route53: wrap route53.Change in preparation of retry mechanism 2023-01-16 16:03:03 +01:00
Jesse Gonzalez
2b28a334c9
test(aws/provider): Adding test for func requireDelteCreate(). 2023-01-10 00:12:48 -06:00
Jesse Gonzalez
6580182b79
refactor(provider/aws): Refactor createUpdateChanges() with helper requiresDeleteCreate() to see if change is UPSERT capable. 2023-01-09 22:55:19 -06:00
Jesse Gonzalez
b747cc8835
test(provider/aws): Updating TestAWSApplyChanges() to include a policy change from weighted to latency based routing. 2023-01-09 22:50:32 -06:00
Jesse Gonzalez
2a92eb8085
fix: Support conversion from/to simple to/from other routing policies for the AWS provider. 2023-01-09 22:50:32 -06:00
Raffaele Di Fazio
031347b078
Revert "fix: Support conversion from/to simple to/from other routing policies for the AWS provider." 2022-12-03 10:26:20 +01:00
Jesse Gonzalez
606ce34012 fix: Support conversion from/to simple to/from other routing policies for the AWS provider. 2022-11-15 00:52:25 -06:00
Andy Bursavich
74ffff6c26 gofumpt 2022-09-20 20:48:57 -07:00
Luke Plausin
a4e0b54ef2 #2757 add missing regions Jakarta (ap-southest-3) and Milan (eu-south-1) 2022-05-13 09:55:19 +01:00
Kubernetes Prow Robot
de1311af1d
Merge pull request #2236 from TwiN/master
Add missing test for AWS geolocation subdivision routing policy
2021-12-17 00:46:29 -08:00
Tariq Ibrahim
1aef05c8e5
remove unused parameters in aws change submit method 2021-09-23 13:32:05 -07:00
TwinProduction
be55ce3571 Add missing test for AWS Geolocation subdivision code 2021-08-18 18:11:34 -04:00
Thibault Jamet
17fb8813d0
Reduce AWS Route53 API calls
Currently, planning instructs to create all records even
those which does not match any zone.
Later, those records will be checked towards the existing
records and filtered whether they match or not a hosted zone.

This causes a problem, at least in the specific case of the Route53
implementation as it always calls the ApplyChanges method, which in its
turn always retrieves all records in all zones.

This causes high pressure on Route53 APIs, for non-necessary actions.

By being able to filter all unmanaged records from the plan, we can
prevent from calling ApplyChanges when nothing has to be done and hence
prevent an unnecessary listing of records.

By doing so, the rate of API calls to AWS Route53 is expected to be
reduced by 2
2021-04-25 18:10:36 +02:00
Kubernetes Prow Robot
e2eefbec7b
Merge pull request #1860 from LogMeIn/aws-fix-alias-records
AWS Route 53 provider: fix various problems with handling of alias records
2021-04-07 00:51:53 -07:00
Alfred Krohmer
0d4cf9915c Address review comments 2021-04-05 21:37:13 +02:00
Thibault Jamet
d0120542ca
Use a constant 300 AWS page size 2021-03-24 11:15:02 +01:00
Steffen Pøhner Henriksen
4345ce6a31 AWS: fix handling of alias records 2021-03-22 14:38:15 +01:00
Thibault Jamet
6b8035e0ad
Increase AWS pagination size
From measurements, AWS by default has pagination of 100 items per
page when listing hosted zone resources.

This increases the number of requests required to list all our zones,
and pushes a hard constraint on the rate limits.

From the experiments, it seems that on the server-side, there is a hard
limit of 300 elements per page, as per AWS documentation:
https://docs.aws.amazon.com/Route53/latest/APIReference/API_ListResourceRecordSets.html

> ListResourceRecordSets returns up to 300 resource record sets at a time in ASCII order,
> beginning at a position specified by the name and type elements

Hence raising the page size from 100 to 300 items would decrease by 3
the number of requests posted to Route53

We even set a higher limit so we can benefit from a lower number of
requests if ever AWS increases the hard limit of 300.
2021-03-12 12:01:50 +01:00