Ugh, that won't really work either. In your case, no matter what direction we go we'll never end up with the right info. In some cases it'll actually work out alright, but it's not all correct.
In the proposed change, we start at the root and work outward. That's how we end up getting your Keystone versions.
If we try the reverse and go outward in, we'd end up just getting the version info for what's configured in the service catalog, not for all available versions, which is what we need this for.
Ugh, that won't really work either. In your case, no matter what direction we go we'll never end up with the right info. In some cases it'll actually work out alright, but it's not all correct.
Given something like http:// cloud.com: 1234/service/ vX
In the proposed change, we start at the root and work outward. That's how we end up getting your Keystone versions.
If we try the reverse and go outward in, we'd end up just getting the version info for what's configured in the service catalog, not for all available versions, which is what we need this for.