merge from trunk
merge from trunk
log as warn if things are obviously wrong

If something is broken as in a built in config, or code
just broken, then logging warning during search for metadata
is ok.
fix a bug, use a list instead of tuple for _versions

using tuple for _versions was just not necessary.
fix reference to undefined os_versions.
openstack: fix bug referencing undefined variable, revert some changes

I had leaked in a couple exception loud-ness changes previously.
This does fix one bug in that os_versions was not defined.