As seen in Bug #2045206 wait_for_endpoints can fails if keystone
is in a transient state. This change puts tenacity around the
keystone client setup to make it more resilient.
Closes-Bug: 2045206
Some endpoints (heat) return 401s if you try and access them
without authenticating. Given the ep has been able to verify
whether you are authenticated a 401 is ok for a rudementary
health check
The keystone-ldap tests are failing often due to accessing
the keystone endpoint before it is available. Adding tenacity
retries here to deal with this.
* Add method to check OpenStack endpoints
Add method to check OpenStack endpoints are returning acceptable
http codes. This should be used with caution as a charm whould
indicate if its payload is not ready via workload status and
workload status messages
* Fix dox string
Adds a test to check for groups that are coming from LDAP.
Adds a test to ensure that openstack is able to check the membership
of a user in the group.
Signed-off-by: Arif Ali <arif.ali@canonical.com>
- Reversed ldap-config-flags vs charm configs precedence
for https://review.opendev.org/748364
- Added new functional test to validate the precedence
- Added zaza helper function to assist handling charm configs
that do not accept "" (like booleans and ints), and reverting
to unset values through config_change()
- Fixed zaza reset helper function that apparently never
worked ({}.keys() returns dict_keys which is not a sequence)
New charm options for keystone-ldap are getting introdcued
as part of bug [1]. Modify the keystone ldap tests to
modify ldap options as per the new charm options.
Add ldap options to verify ldap-config-flags takes precendece
over explicit config flags.
[1] https://bugs.launchpad.net/charm-keystone-ldap/+bug/1832765
wait_for_cacert will wait for keystone to recieve and install
a cacert. This is particularly useful when the certificate
issuer is in a different model.