The default working directory for OpenStack services installed is in var/lib, e.g. /var/lib/trove. When run from this location the API extension routes will not be loaded and trove commands such as user-list and database-list will fail.
API extension routes are loaded based on the config option api_extensions_path. The specified path is assumed to be either an absolute path or relative to the working directory. The default path is 'trove/extensions/routes' so in a default install the extensions are not loaded.
We could do one of the following:
- default to '$pybasedir/extensions/routes'
- modify class TroveExtensionMiddleware to check that the specified api_extensions_path exists, and if not check to see if it exists relative to pybasedir.
Fix proposed to branch: master /review. openstack. org/98021
Review: https:/