Extend get_ingress_address() to discard certain IP addresses. (#20)
This patch adds a parameter to get_ingress_address() named
ignore_addresses that when passed those IP addresses won't be
considered in the list of possible values to return.
Ensure efficient and atomic updates of kubeconfigs (#17)
* Ensure efficient and atomic updates of kubeconfigs
The various kubeconfig files are rewritten on every hook even if they
don't change. Additionally, due to the use of `kubectl` to write the
data using the correct fields, there is a mutli-second window in which
clients reading the file could see an empty or partial file. This
changes it to only update a given config file if it has actually changed
and to do so in an entirely atomic fashion which will not disrupt
clients which are actively reading the file.
Set use-octavia and lb-provider with Neutron LBaaS (#16)
Last versions of Kubernetes set use-octavia=true and
lb-provider=amphora as the default values. This PR
explicitly sets use-octavia=false and lb-provider=haproxy
when the underlying OpenStack cloud relies on the old
Neutron LBaaS technology.