Make create_user domain-aware for V3CredsClient
Currently create_user is just inherited from CredsClient and, therefore,
does not pass a domain_id to the /v3/users POST API call to create a new
user. As a result a domain with id "default" is used as no domain is
explicitly passed in the API call which results in 404 NOT FOUND and the
following error: "Could not find domain: default.".
The right way is passing a domain from:
1) CONF.auth.admin_domain_name
2) CONF.auth.default_credentials_domain_name
This is already taken into account when a domain_name is passed from
identity_utils during object instantiation and used for in the
create_project method specific to V3CredsClient. The API calls only
accept a domain_id which is why creds_domain field of a V3CredsClient
object is used to store an id of a domain_name domain passed via
constructor. The same can be used for create_user method specific to v3.
Change-Id: I66f22c61d7a8596cafdc415654edfecdc5495d2e
Closes-Bug: #1613819
diff --git a/releasenotes/notes/make-create-user-domain-aware-for-v3-creds-client-5054f58e715adc0c.yaml b/releasenotes/notes/make-create-user-domain-aware-for-v3-creds-client-5054f58e715adc0c.yaml
new file mode 100644
index 0000000..8931f09
--- /dev/null
+++ b/releasenotes/notes/make-create-user-domain-aware-for-v3-creds-client-5054f58e715adc0c.yaml
@@ -0,0 +1,9 @@
+---
+fixes:
+ - |
+ [`bug 1613819 <https://bugs.launchpad.net/tempest/+bug/1613819>`_]
+ admin_domain_name and default_credentials_domain_name parameters
+ under [auth] now affect a domain used for creating test users just
+ as they affect it for projects. Previously a domain with an id set
+ to "default" had to be present in order for test user creation to
+ succeed with Keystone v3.