* Added initial support for Headless services
* service.go: Fixed some formatting
* forgot to run gometalinter
* service: implemented alternative proposal, to reuse existing annotation
* source: some refactoring
* 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
This commit adds ability to use TLS transport for etcd.
New logic is applied when the etcd URL has https:// scheme.
TLS parameters are passed in the environment variables:
ETCD_CA_FILE - path to CA certificate. If not specified, then
system-provided certificates are used.
ETCD_CERT_FILE - client certificate
ETCD_KEY_FILE - client key file
- either both of none of this two must be specified
ETCD_TLS_SERVER_NAME - expected CN of the certificate. Useful when
URL points to a different domain from that in server certificate
ETCD_TLS_INSECURE - if set to "1" (or "true" or "yes") makes client
bypass server certificate validation.
Also for unification with other providers and rest of connection
settings, etcd URL is no longer specified in the command line, but
rather in ETCD_URLS environment variable (defaults to
http://localhost:2379). More than one comma-separated URL can be
specified. All of the URLs must start with either http:// or https://
Also, now it possible to communicate with etcd through proxy specified
in standard environment variables
* allow filtering by ingress class
* generic source annotation filter as opposed to ingress class filter
* rename and fix argument ordering, switch to label selector semantics
* remove redundant parameters
This commit adds ability to have several endpoints for single domain
name with CoreDNS by adding random to the DNS name and setting
TargetStrip to 1 so that it will be stripped upon read. When TXT
record is encountered, it is merged with the first available A
record, if any available. Otherwise dedicated record is created.
This commit adds support for CoreDNS through its etcd middleware.
Because the middleware is backward compatible with SkyDNS this
commit adds support for SkyDNS as well. In fact, new provider
is available under two names in CLI (coredns and skydns).
All interactions with middleware happen through etcd cluster,
whose location (URIs) is specified via --etcd CLI parameter
by default http://localhost:2379).
The provider translates CoreDNS/DkyDNS SRV records to
A/CNAME + optional TXT endpoints, when reading from etcd and
combines A/CNAME with TXT endpoints back into single SRV record
when writing it back.
Also adds github.com/coreos/etcd package to glide.yaml and vendor folder
because it is used by the provider
- Add `--inmemory-zone flag`
- Implement `InMemoryZoneInit` function to setup initial zones for
inmemory provider
- Make "" the default zone for the inmemory provider instead of
nil/none when no initial zones are specified
- Update config/flag parsing tests to accept new flag
* fix nil ptr dereference if zoneid does not match and we get empty string from im.filter.EndpointZoneID(ep, zones)
* add test that passes a not defined zone
* reuse the init struct to use it with expectedZonesState
* try to work around pointer check problem from assert.Equal, if this does not work we have to do a deep check
* use deep compare to test and not just check references
* remove test case that I added before and do not reflect the test needed to be done
* remove zone fiel that is not needed and use assert.Equal which is fine
* Cloudflare: Disable proxy mode for TXT and others
* Improve code according to review
* Add test
* Disable proxy mode for wildcards
* Fix review, add test
* Move var
* chore: fix some golang related stuff
* chore: update changelog to reflect latest changes
* 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
* 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
* #228 Simplify DNS provider requirements by extracting common
* #228 Simplify DNS provider requirements by extracting common
* Missing boilerplate added
* rename recordtypefilter, fail fast statements
* rework zone finder, update deps
* chore: drop namespace from cloudflare method name
TLS parameters can be passed through the following environment
variables:
* OPENSTACK_CA_FILE - CA file path
* OPENSTACK_CERT_FILE - cert file path
* OPENSTACK_KEY_FILE - key file path. Either both or none of cert/key
must be specified
* OPENSTACK_TLS_SERVER_NAME - (optional) expected CN of the server
certificate if differs from domain in the URL
* OPENSTACK_TLS_INSECURE - if set to yes|true|1 disables validation of
the server certificate
Code that loads tls.Config from environment variables was extracted
into dedicated package so that it could be reused by different providers
* ClusterIP service support
- First pass at addresssing #187 by allowing services with type ClusterIP to be directly supported
* Getting existing tests to pass
* Adjusting formatting for gofmt/govet
* Adding in guard logic around publishing of ClusterIP sources
* Addressing PR feedback
* Adding in CHANGELOG entry
* Adding in Headless service test
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.
* feat: add a logo
* move logo above headline and make it smaller
* make it even smaller to fit README
* enlarge logo and center align it
* try with div align center
* center using p
block
* 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.