Commit Graph

1048 Commits

Author SHA1 Message Date
Nick Jüttner
2e4238014f Update RBAC for external-dns to list nodes
Introducing support for NodePort services might break cluster which
using RBAC

* allow external-dns to list nodes

Signed-off-by: Nick Jüttner <nick@zalando.de>
2018-06-15 17:03:24 +02:00
Nick Jüttner
8683d25b19 Bump version to v0.5.3
* Add recent changes to the changelog
* Update version in docs

Signed-off-by: Nick Jüttner <nick@zalando.de>
2018-06-15 11:52:29 +02:00
Jason L. van Brackel
49f36ea479 Update azure.md to fix protocol value (#593)
'tcp' is not a supported value whereas 'TCP' is.
2018-06-14 10:56:06 +02:00
Jaromir Vanek
e7cbc5239c bump version to v0.5.2 (#586) 2018-06-06 09:57:41 +02:00
Roman Sokolkov
b2a5ed229d
Add Azure MSI support 2018-05-31 14:57:58 +02:00
Nick Jüttner
baa1da6fa0
Merge pull request #483 from vanekjar/AWS-SD-final
Add AWS Service Discovery provider
2018-05-30 10:31:34 +02:00
Nick Jüttner
74de102a13 Remove the logic of preventing failing TTL's which are less than 120
Signed-off-by: Nick Jüttner <nick@juni.io>
2018-05-28 09:54:32 +02:00
Jaromir Vanek
cd94888800 Implementation of AWS ServiceDiscovery provider 2018-05-25 07:45:47 -07:00
Raffaele Di Fazio
a104993630 Update docs to latest changes (#563)
* Minor changes to docs and faq

* Other minor changes

* better docs

* Addressed comments
2018-05-22 18:23:08 +02:00
shashidharatd
c18c1c79ec Add a new source called connector (#552)
* Add new connector source

* Update docs for connector source
2018-05-22 17:49:16 +02:00
Martin Linkhorst
960151a5ac
chore: bump version to v0.5.1 (#560) 2018-05-16 13:53:53 +02:00
Henning Jacobs
e664bde484 AWS IAM Instance Profile (#557) 2018-05-15 16:42:57 +02:00
Dan Bond
25af706af3 docs/tutorials: add pods resources to external-dns ClusterRole 2018-04-24 16:07:51 +01:00
Martin Linkhorst
b94288fcb9
chore: bump version to v0.5.0 2018-04-23 16:50:13 +02:00
Anhad Jai Singh
bea99407c6 Add docs for pdns provider 2018-04-17 18:56:16 +05:30
Nick Jüttner
f58f53a3e4 RBAC permissions 2018-04-16 17:38:41 +02:00
Nick Jüttner
5fc7d31a57 Resolving merge conflicts 2018-04-05 12:40:27 +02:00
Helgi Þormar Þorbjörnsson
321d4d463b Support a comma separated list for the FQDN template (#512)
* Support a comma separated list for the FQDN template

* Add documentation for comma separated FQDN templates

* chore: add multiple fqdn templates to changelog
2018-04-04 11:39:39 +02:00
Seshadri Mahalingam
a7c6a77285 Update nginx-ingress.md (#516) 2018-04-04 08:39:24 +02:00
jmo808
1559f6508c
Update azure.md
Added nginx-ingress information and made setting up AzureDNS with k8s on AKS or other providers easier to understand.
2018-03-27 09:46:46 -06:00
John Slivka
297b503a6e
Fix typo for serviceAccountName in RBAC example
serviceAccountName was transposed onto the non-RBAC example
2018-03-21 11:51:28 -06:00
Anders Bruun Olsen
0d6f3ce312 Update helper-text and GKE tutorial to reflect google project auto-detection. (#494) 2018-03-14 13:14:00 +01:00
Zach Arnold
389527785d update RBAC rules in docs (#451)
* update RBAC rules in docs

* update docs with split between rbac and non

* make deployment use new sa

* docs: correctly reference service account in CRB

* docs: correctly reference service account in CRB in other docs
2018-02-27 11:54:20 +01:00
Herrmann Hinz
21c3dce4c2 fixing image tag typo in public-private-route53.md tutorial (#476)
* fixing image tag typo in public-private-route53.md tutorial

* fixing image tag typo in public-private-route53.md tutorial
2018-02-23 16:02:09 +01:00
Kamil Szczygieł
1832011c3a Setting up ExternalDNS using same domain for public/private Route53 zones (#472)
* setting up externaldns using the same domain for public and private route53 zones

* update nginx-ingress-controller image to 0.11.0
2018-02-22 13:47:54 +01:00
Nick Jüttner
bd1aef2667
Merge pull request #461 from eik3/patch-1
Typos
2018-02-09 11:11:56 +01:00
Nick Jüttner
9ed9bae16d
Merge pull request #457 from jvassev/dyn-provider
Add Dyn Provider
2018-02-09 11:11:00 +01:00
Eike Herzbach
2d632f229d
Typos 2018-02-09 10:15:28 +01:00
Julian Vassev
414d394354 Add Dyn Provider
* add "dyn" provider
* add several --dyn-* args to configure Dyn login
* add github.com/nesv/go-dynect/dynect@0.6.0 to Gopkg and vender/ (the client
  of choice by Terraform)
* make externdns.Version public so it can be stored when committing
  zone changes
* add tutorial for Ingress resources and update root README.md file

Dyn REST API is documented here: https://help.dyn.com/dns-api-knowledge-base/

Example usage:

  external-dns \
    --provider=dyn \
    --dyn-customer-name=acme \
    --dyn-username=acme-api \
    --dyn-password=t0pS3cr3t \
    --domain-filter=portal.acme.com \
    --zone-id-filter=acme.com \
    --namespace=my-test-ns \
    --log-level=debug \
    --txt-prefix=_
2018-02-08 09:37:33 -08:00
shane lee
272e12e62a [aws-doc-update] docker image version and new arg aws-zone-type (#371)
* [aws-doc-update] docker image version and new arg aws-zone-type

* changes after review

* remove annotation for ingress

* docs: modify docs according to suggestions
2018-01-26 11:12:51 +01:00
Søren Mathiasen
a7ad512d04 Add documentation about annotation-filter (#448)
There were no documentation describing how to use the annotation-filter
parameter
2018-01-26 11:00:59 +01:00
Yerken
998f3618b8
add first proposal version for multi target (#396)
* add first proposal version for multi target

* update docs

* remove todo, add how to do it for other providers
2017-12-21 11:45:02 +01:00
Fabian Topfstedt
5f88867e75 Adding required name values (#416)
Added a name value so make Kubernetes 1.8.5 work.

Had this error before:
```The Service "nginx" is invalid:
* spec.ports[0].name: Required value```
2017-12-10 03:08:34 +01:00
Arttii
40350a9b23 Added HostPort feature docs (#399)
* Added HostPort feature docs

* Fixed some typos
2017-11-24 09:11:39 +01:00
Henning Jacobs
76dc93bd29
update docs to use latest release v0.4.8 (#398) 2017-11-24 09:04:43 +01:00
leigh schrandt
65f4239d44 provider=google: Add Ttl from annotations:
Use `int64(ep.RecordTTL)` in `newRecord()`
Fallback to hardcoded 300s for backwards-compat
Add `TestNewRecords()`
Add notes in *ttl.md*
2017-11-14 15:23:51 -07:00
Lars Kristian Bremnes
238dfb1102 Doc: how to use Azure DNS from non-Azure cluster (#385)
* How to use Azure DNS from non-Azure cluster

If the cluster is not Azure Container Service (or acs-engine) the configuration file for Azure DNS needs to be created manually.

* Azure.md, give explicit name to Service Principal
2017-11-13 16:09:46 +01:00
Khris Richardson
84634fd1a7 address #378 (#384) 2017-11-13 15:11:05 +01:00
Tom Downes
9d6d137f65 Fix minimum version of external-dns container to match that needed for InfoBlox DNS provider. (#383) 2017-11-07 20:45:43 +01:00
Khris Richardson
cab3e0454e Initial commit of Infoblox provider (#349)
* Initial commit of Infoblox provider

* address @ideahitme's observations

* fail at addressing @szuecs comments

* fix(infoblox): avoid shadowing err variable

* fix flag descriptions

* default ssl verify to true. thanks @szuecs

* chore(infoblox): bump minium required version

This should ideally be a minor bump but let's do that when we have v0.5
2017-10-12 13:41:18 +02:00
Kevin J. Qiu
71723bdd5b Allow specifying a custom TTL through annotation on Ingress or Service (#320)
* Add RecordTTL

* Route53: test for custom TTL

* Fix tests

* Fix remaining tests

* Add ttl when endpoint is created from ingress

* Missed a word

* Fix bad refactoring

* Add ingress custom TTL test

* gofmt

* Satisfy go-lint

* Unshadow `endpoint` in azure provider

* Fix and add an output test

* Add TTL for endpoints generated from service templates

* Take TTL into account when generating update plan

* Tests for TTL change impact on the plan

* Refactor factory method name

* Refactoring

* Run gofmt

* Make endpoint string format look like BIND config

* Update plan and plan_test

* Replace NewEndpointWithTTLValue with NewEndpointWithTTL in aws

* Remove NewEndpointWithTTLValue func

* Update references to TTL

* Remove getTTLValue func

* Handle merge conflict

* Update tests

* Update README, CHANGELOG and documentation

* Run gofmt

* Move getTTLFromAnnotations to a common file

* Refactor getTTLFromAnnotations

* Gofmt

* Add tests for getTTLFromAnnotations

* Trigger build

* Add boilerplate header

* Update README/CHANGELOG according to code review

* Add ttl.md and link it from README

* change CNAME string to endpoint.RecordTypeCNAME

* fix test cases with AWS ALIAS records, these do not behave different in these tests
2017-10-11 14:17:02 +02:00
Stan Lagun
09a6f6bac8 Tutorial with example on how to use Designate was added 2017-09-22 20:55:08 -07:00
Kévin Dunglas
02c38d5cf7 Add a new --cloudflare-proxied flag to toggle Cloudflare proxy feature (#340)
* Add a new --cloudflare-proxied flag to toggle Cloudflare proxy feature

* Change flag description
2017-09-18 10:54:08 +02:00
Clayton O'Neill
ea4cbfe803 Ingress target annotation should set, not append (#318)
If the user has specified a target for the ingress, treat that as
overriding any endpoints already set on the ingress, even if that list
is not empty.  This allows overriding the IP address or hostname set
when using a service like kube-keepalived-vip.
2017-08-17 22:27:14 +02:00
Henning Jacobs
d54cd72e94 Support for annotation based targets for Ingress (#312)
* Support for annotation based targets for Ingress

* stay DRY: extract into addEndpointsFromTargetAnnotation
2017-08-10 20:53:22 +02:00
Martin Linkhorst
5d3926bdff docs: document how to configure sources via env vars (#310) 2017-08-10 20:23:55 +02:00
Martin Linkhorst
d4cc1fbef3
docs: update docs to the latest release 2017-08-03 09:47:53 +02:00
Peter Luttrell
24e871faa7 Update README.md and docs/faq.md (#296)
* Update the docs/faq.md to include details on propertly setting up nginx-ingress-controller to assign the fqdn of ELBs on AWS.

* Updated the README.md to include links to the tutorials to the various platforms.

* Corrected invalid YAML.
2017-08-01 14:17:13 +02:00
Martin Linkhorst
aa17c342a6 docs(faq): add answer for how to run ExternalDNS under service account (#293) 2017-07-27 23:25:43 +02:00
Martin Linkhorst
12a67523c2 docs: update documented version to v0.4 (#294) 2017-07-27 23:25:17 +02:00
Martin Linkhorst
804dbc00ed docs(faq): add gke permissions to the faq (#288) 2017-07-25 21:05:21 +02:00
Martin Linkhorst
669f98b7a0 docs: update docs to the v0.4.0 release (#286) 2017-07-24 12:48:09 +02:00
Martin Linkhorst
aa3f6c04c5 tutorials: add tutorial for digital ocean (#282)
* docs(tutorials): add tutorial for digital ocean

* docs(tutorials): fix version used in cloudflare tutorial

* chore: update the changelog with the latest and greatest, thanks to all who contributed
2017-07-21 17:43:39 +02:00
Martin Linkhorst
e891397a3d docs(faq): add some questions to the FAQ (#268) 2017-07-19 21:21:50 +02:00
Nick Jüttner
c69c557fbc Cloudflare Tutorial (#271) 2017-07-17 11:25:21 +02:00
Nils Juenemann
73d397961e Support for multiple domains within --domain-filter (#252)
* Support for multiple domains within --domain-filter

The parameter accepts a comma separated list of domains with or without trailing dot. Example: --domain-filter="example.org, company.test.,staging.com". Closes #247 and #229

* Add boilerplate header

* Add documentation for methods and structs

* use StringsVar for the domain-filter flag

* go fmt

* Remove camel case from tests

* Revert changes in README.md

* Move DomainFilter to provider package

* Make a new slice and copy elements to it

* Update CHANGELOG.md

* docs: change minor spelling mistake
2017-06-29 18:59:05 +02:00
jordanjennings
1592ef0afa Fix incorrect flag in nginx-ingress.md (#245)
Originally had `dry-run=true` as the dry run flag but that doesn't work and makes external-dns fail to start. Changed to `--dry-run`.
2017-06-20 23:15:01 +02:00
Martin Linkhorst
c1f5179739 docs: explain the concept behind sources and providers (#226)
* docs(contributing): explain the concept behind sources and providers

* docs(contributing): we don't filter Services by type
2017-06-16 11:07:10 +02:00
Shane Starcher
bc4127b0b7 Add IAM permissions to tutorial (#231) 2017-06-08 14:11:24 +02:00
Peter Huene
3355528c16 Implement Azure DNS provider (#210) (#214)
* vendor Azure Go SDK (#210)

* vendor the Azure Go SDK and dependencies

* add initial Azure DNS provider implementation (#210)

* add 'azure' value to 'provider' command line option
* add 'azure-config-file' command line option
* add 'azure-resource-group' command line option
* implement initial Azure DNS provider

note: azure provider is not yet fully implemented (does not query for existing
records).

tests and documentation are forthcoming.

* add a tutorial for the Azure provider (#210)

* add tutorial for using ExternalDNS with Azure DNS

* finish implementation of Azure DNS provider (#210)

* implement the Records method for the Azure DNS provider

* refactor Azure API interface for future tests (#210)

* make Azure provider use an interface for future unit tests

* add unit tests for the Azure provider (#210)

* test retrieving Azure DNS records.
* test updating and deleting Azure DNS records.
* test dry run for the Azure provider (i.e. noop).
2017-06-02 15:24:52 +02:00
Martin Linkhorst
a2c893f2bb fix: align more docs with the current release (#202) 2017-05-08 18:45:59 +02:00
Henning Jacobs
55d709c38c fix link to AWS tutorial (#201) 2017-05-08 18:02:42 +02:00
Yerken
55816ae57c adjust docs before the v0.3.0 release (#184)
* adjust docs before the v0.3.0 release

* minor fixes

* docs: add missing dot

* docs: add missing dot

* docs: drop line

* docs: drop another line

* adjust documentation

* update main readme

* checkbox for releases, add --txt-owner-id flag in description

* docs: minor weird character fixes [ci skip]
2017-05-08 17:29:17 +02:00
Martin Linkhorst
d6222a454d
docs: do not reference buggy version 2017-04-28 00:46:23 +02:00
Omar Yasin
d4a396b667 Tutorial uses buggy version for GKE example (#177)
Bug in question: https://github.com/kubernetes-incubator/external-dns/issues/154

This is fixed in 0.2.1
2017-04-26 09:07:59 +02:00
Martin Linkhorst
04bbdb5d80
docs: update docs to the latest release 2017-04-07 23:01:33 +02:00
Martin Linkhorst
7f6626921d docs: update tutorials to latest version (#134) 2017-04-07 14:56:26 +02:00
Martin Linkhorst
9f712c15af
chore: bump version to v0.2.0 2017-04-07 14:29:23 +02:00
Martin Linkhorst
26d1b6f241
chore: bump version to v0.2.0-beta.1 2017-04-07 14:21:23 +02:00
Martin Linkhorst
02253aa70c
docs(aws): update aws tutorial with passing the hosted zone id 2017-04-06 14:58:20 +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
Martin Linkhorst
5c794e1b39 docs: document how to use ExternalDNS with nginx ingress controller (#113) 2017-04-05 11:48:32 +02:00
Yerken
d507345a63 adjust documentation as per latest discussion regarding registry/storage (#114)
* adjust documentation as per latest discussion regarding registry/storage

* rename group-id -> owner-id
2017-04-04 12:02:37 +02:00
Lauri Apple
4db71d480b Edited README and FAQ (#115)
* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update faq.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* docs: minor changes to the readme and faq
2017-04-03 15:48:48 +02:00
Martin Linkhorst
5ff801557b Elaborate the docs, add a faq section (#109)
* docs: elaborate the docs, add a faq section

* docs: fix a messed up command

* docs: update docs to reference v0.1 release

* docs(faq): fix stray whitespace

* docs: restructure docs for a leaner README

* docs: move first run section back to main readme

* docs: fix references to packages

* docs: fix reference to gke tutorial

* docs: fix missing source flag in examples

* docs: fix missing provider flag in examples

* docs: mention ingress support in main readme
2017-03-30 11:30:06 +02:00
Martin Linkhorst
d7b107aab3 chore: remove cloudbuild to avoid confusion (#106) 2017-03-17 17:35:10 +01:00
Martin Linkhorst
318c6e532c ref(*): rename DNSProvider to just Provider (#101) 2017-03-17 14:35:10 +01:00
Martin Linkhorst
ff0461219d docs: move example from README to tutorials (#100) 2017-03-16 21:03:23 +01:00
Martin Linkhorst
000297b1e9 add tutorial on how to use external-dns with GKE (#92)
* docs(tutorials): add tutorial on how to use external-dns with GKE

* docs(gke): document how to setup a zone with its parent
2017-03-16 15:34:24 +01:00
Yerken
15f45fcacd storage proposal v1 (#76)
* storage proposal v1

* few fixes, remove code

* link issues

* another caveat

* fix typos, more details

* small refactoring
2017-03-13 14:17:14 +01:00
Martin Linkhorst
69565ced3e
chore: use alpha annotations 2017-03-08 11:50:21 +01:00
Justin Santa Barbara
cb364cdbf7 Move config to apimachinery (#37)
Types that we want to work using apimachinery typically go into
pkg/apis/X, and the validation goes into pkg/apis/X/validation.  We then
add versions into e.g. pkg/apis/X/v1alpha1, but this feels premature at
the moment.

Changing this later is annoyingly difficult, especially in terms of
validation and dependencies.

We will want the apimachinery, so that we can configure from a
configuration file that is versioned.  Hopefully dns-controller won't
end up so complicated that we will require it, but I think there is also
value in following the "standard" patterns for controllers that are
emerging from e.g. ingress.

For a fairly simple example of an API, please consult
https://github.com/kubernetes/kubernetes/tree/master/pkg/apis/certificates
2017-03-01 11:49:02 +01:00
Justin Santa Barbara
67fa237cd4 Document existing kops dns-controller annotations
Kops includes a dns-controller, and this document describes the existing
annotations and their behaviour.  This document is intended to allow us
to see the use-cases identified by kops dns-controller, to ensure the
same annotations can be recognized (perhaps with a `--compatibilty`
flag), and to ensure that we have comparable functionality.
2017-02-26 16:38:52 -05:00
ideahitme
ef5b7b38f9 small readme adjustments 2017-02-23 17:15:54 +01:00
ideahitme
35d28f23f9 typo fix 2017-02-21 16:31:46 +01:00
ideahitme
5c7f4a5bbb minor changes, list client libraries 2017-02-21 16:30:02 +01:00
ideahitme
9f429a8641 include interace files 2017-02-20 15:22:44 +01:00
ideahitme
ee2ac2c3ea include flag lib, config file 2017-02-20 15:10:00 +01:00
ideahitme
4b3516e282 consisten naming, controller package 2017-02-20 13:46:38 +01:00
ideahitme
d74dc27972 main proposal + alternatives 2017-02-20 12:04:39 +01:00
ideahitme
ac624ce106 naming fixes 2017-02-20 12:00:15 +01:00
ideahitme
4717109fda Draft project structure documentation 2017-02-20 11:58:12 +01:00
ideahitme
d9825d7202 be more elaborate regarding required annotations, compatibility 2017-02-14 15:58:45 +01:00
Adam Sunderland
30c04fb338 Tweak configuration section
Fix formatting
2017-02-13 12:21:58 -06:00
Adam Sunderland
49fb86d782 Document compatibility with route53-kubernetes 2017-02-13 12:08:33 -06:00
Adam Sunderland
4a4b8c71fd Add Design/Configuration section 2017-02-13 11:45:34 -06:00
ideahitme
b2306cc7d2 fix broken table 2017-02-13 16:38:43 +01:00
ideahitme
dc16c78810 initial-design file 2017-02-13 16:05:30 +01:00