docs: def _get_valid_endpoint(resp, name, entry_type):
          """
          Parse the service catalog returned by the Identity API for an endpoint matching
          the Nova service with the requested version
          Sends a CRITICAL service check when no viable candidates are found in the Catalog
          """
          catalog = resp.get('token', {}).get('catalog', [])
          for entry in catalog:
              if (
                  entry.get('name')
                  and entry.get('type')
                  and entry.get('name') == name
                  and entry.get('type') == entry_type
              ):
                  # Collect any endpoints on the public or internal interface
                  valid_endpoints = {}
                  for ep in entry.get('endpoints'):
                      interface = ep.get('interface', '')
                      if interface in ['public', 'internal']:
                          valid_endpoints[interface] = ep.get('url')
  
                  if valid_endpoints:
                      # Favor public endpoints over internal
                      return valid_endpoints.get('public', valid_endpoints.get('internal'))
  
          return None