Add endpoint_override keyword to v2.Client() and check for the
session argument in DesignateAdapter()
Add unit test, fix minor typos
Change-Id: I038ec7b0d1feadc9642bd47285e397b3fe84c13c
Closes-Bug: 1469739
The previous commit at [1] introduced a bug due to last
minute reordering of code, this fixes the ordering
and adds a couple of tests to verify the functionaility.
[1]: I2e3d74168976868ea1e4dd6c797f6340faa50d0f
Change-Id: Ia6f8df92b2700f63b2208290ede85f247b33bc63
edit_managed/all_tenants were moved from get_session
to the Client constructor, we should support both
for a period of time.
Change-Id: I2e3d74168976868ea1e4dd6c797f6340faa50d0f
Initializing designate client with a pre-existing keystone session
won't work as designate expects keystone session to have the
'all_tenants' and 'edit_managed' attributes:
Example code:
keystone_session = ksc_session.Session(
auth=keystone_auth,
verify=True,
cert=my_cert
)
than later:
self._designate_client = designate_client(
session=keystone_session,
region_name=region_name
)
with that code, wrap_api_call() will raise an exception:
AttributeError: 'Session' object has no attribute 'all_tenants'
Same goes for 'edit_managed'.
This patch moves both attributes from Keystone session to designate
Client.
Closes-Bug: 1457821
Change-Id: I13d6c9ed46406fefc8cfa5de46811e4be009f1af
Currently designate allows to identify a resource only by its id. This
change allows to identify domains by name or id. This change defines
the method find_resourceid_by_name_or_id which could be reused to
identify other resources by name or id.
Change-Id: I8e64cdbc5572623d05781d0c4e735ff0c429ea91
Closes-Bug: #1443858
The user has to use the command "designate --all-tenants domain-list" to list all domains from all tenants.
When the above command is used "X-Auth-All-Projects" value is set to true and it is passed as a header to
designate.This will allow us to list all domains from all tenants.
Change-Id: I4cd4dd5427f5f35cdec95dbdf36c7386b60a2949
Fixes: bug #1418156
This removes the code for checking if the service catalog has a version part in
the url or not aka /v1 and removing it as it's handled by the underlying
ksclient code in sessions. It also removes old authentication code.
Change-Id: I04109a935d7d94518c7dab05122a64ef37190d44
We now defer the majority of our auth to keystoneclient, rather
than continuing to maintain our custom code.
Change-Id: Ia8409940d3941bc82a8b54ec60e82efa6d043102
Closes-Bug: 1323435
H306, module imports should be in alphabetical order
This hacking check actually improves readability quite
a bit, as module imports can be sorted in groups (python stdlibs,
external imports, in-module imports)
Change-Id: I11dc9155fbfc84389f2a5956f393f705388f83ba