From 485986d5ae8925e880a772bd5537e3ce5d373213 Mon Sep 17 00:00:00 2001 From: Dan Smith <dansmith@redhat.com> Date: Mon, 28 Nov 2016 14:16:39 -0800 Subject: [PATCH] Register opts if we're going to check conf.transport_url in parse() In TransportURL.parse(), a classmethod, we expect conf.transport_url to be accessible if a url is not passed in. However, since the _transport_opts are not registered yet, that will fail, which is a pretty easy case to hit if we're constructing our TransportURL for the first time on startup. This registers the opts if we're likely to hit it. Change-Id: Id94bc0a7fec3ce536e134d4f162ac253a775b238 --- oslo_messaging/transport.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/oslo_messaging/transport.py b/oslo_messaging/transport.py index b7408201d..084fbc738 100644 --- a/oslo_messaging/transport.py +++ b/oslo_messaging/transport.py @@ -395,6 +395,8 @@ class TransportURL(object): :returns: A TransportURL """ + if not url: + conf.register_opts(_transport_opts) url = url or conf.transport_url if not url: return cls(conf, aliases=aliases)