Friday, 2018-11-16

*** tosky has quit IRC00:04
*** slaweq has quit IRC00:56
*** openstackgerrit has quit IRC02:22
*** openstackgerrit has joined #openstack-sdks02:41
openstackgerritYang JianFeng proposed openstack/openstacksdk master: Add support for octavia's resuorces quota
openstackgerritzhouxinyong proposed openstack/oaktree master: Optimizing the safety of the http link site in HACKING.rst
*** Luzi has joined #openstack-sdks07:15
*** e0ne has joined #openstack-sdks07:15
*** dayou_ has quit IRC07:16
*** dayou_ has joined #openstack-sdks07:16
amitohey, anyone here this time of day? :)07:20
*** slaweq has joined #openstack-sdks07:35
*** slaweq has quit IRC07:47
*** slaweq has joined #openstack-sdks07:49
*** dayou_ has quit IRC08:26
*** dayou has joined #openstack-sdks08:27
*** e0ne has quit IRC08:28
*** jpena|off is now known as jpena08:45
*** slaweq has quit IRC08:46
*** jpich has joined #openstack-sdks08:51
*** tosky has joined #openstack-sdks08:57
openstackgerritYang JianFeng proposed openstack/openstacksdk master: Add support for octavia's resuorces quota
openstackgerritArtem Goncharov proposed openstack/openstacksdk master: implement block-storage backup resource
*** dtantsur|afk is now known as dtantsur09:41
*** dave-mccowan has joined #openstack-sdks09:46
*** dave-mccowan has quit IRC09:50
*** openstackgerrit has quit IRC09:52
*** irclogbot_2 has quit IRC09:53
*** gtema has joined #openstack-sdks09:58
*** irclogbot_2 has joined #openstack-sdks10:03
*** dtantsur is now known as dtantsur|afk10:10
*** openstackgerrit has joined #openstack-sdks11:31
openstackgerritYang JianFeng proposed openstack/openstacksdk master: Add support for octavia's resuorces quota
*** dtantsur|afk is now known as dtantsur11:37
*** gtema has quit IRC11:48
*** slaweq has joined #openstack-sdks12:19
*** jpena is now known as jpena|lunch12:29
*** gtema has joined #openstack-sdks12:32
openstackgerritLars Kellogg-Stedman proposed openstack/openstacksdk master: _make_proxy attempts to referenced undefined variable api_version
gtemadtansur, are you here?12:45
openstackgerritLars Kellogg-Stedman proposed openstack/openstacksdk master: _make_proxy attempts to referenced undefined variable api_version
*** jpich has quit IRC12:50
*** mordred has quit IRC12:55
openstackgerritLars Kellogg-Stedman proposed openstack/openstacksdk master: several errors in _make_proxy
*** jpena|lunch is now known as jpena13:37
openstackgerritLars Kellogg-Stedman proposed openstack/openstacksdk master: several errors in _make_proxy
*** dtantsur is now known as dtantsur|afk13:50
*** pbourke has quit IRC14:04
*** pbourke has joined #openstack-sdks14:04
*** Luzi has quit IRC14:56
*** larsks has joined #openstack-sdks14:59
larsksHey folks.  I'm running into a variety of problems with ansible's os_loadbalancer module, and it looks like it's tripping over problems in openstack/ There appears to be a ton of untested code there (e.g., it's trying to raise exceptions.UnsupportedVersionWarning all over the place, but that exception doesn't seem to exist).15:02
larsks...but it's doing that because it doesn't seem to be able to determine the api version for the octavia service, and I'm wondering if someone here has thoughts on what might be going on.  The openstack cli works fine.15:03
fricklerlarsks: I fear lots of folks are still recovering from the summit, I'm off for the weekend now, too. probably best create a story at!/project/openstack/openstacksdk , include some error logs and mention the story here15:05
larsksCurses!  But sure, I'll do that.15:06
fricklerusually mordred might want to take a look, but he also seems to be busy recovering ;)15:06
gtemalarsks: what's your endpoint url for octavia? Do you also set/change octavia api version in your clouds.yaml?15:33
gtemaUnsupportedVersionWarning should be either created in or replaced with UnsupportedServiceVersion. Not sure what mordred would prefer15:36
larsksgtema: The endpoint url does not hav a version (https://my.public.hostname:13876).  I did try setting load_balancer_api_version: 2 in the clouds.yaml file but that didn't appear to resolve the issue.15:36
gtemaunder "cli" you mean octaviaclient, right?15:38
larsksgtema: I mean "openstack loadbalancer ...", which uses octaviaclient, yes.15:39
johnsomlarsks What version of Octavia do you have deployed?15:41
larsksjohnsom: 'octavia-api --version' tells me 2.0.2.dev4215:42
johnsomQueens. Ok, you should be good with the API versioning. It's v2. If you do an "openstack versions show" you should see lines like this:15:44
larsksjohnsom: ah, there's a problem.  The same command here shows:
larsksIf I curl the endpointa address I get:
johnsomHmm, yeah, I have more versions because I'm running Rocky, but I'm not sure why they aren't being listed with the queens version that has one v215:48
larsksjohnsom: apparently 'openstack versions' doesn't like the output from octavia?
johnsomAh, yeah, ok. Queens doesn't have the "links" stuff, so that openstack versions show is correct. It still shows the v2 API though, so you should be good to go. As you saw with the OpenStack client15:52
larsksjohnsom: here is the specific behavior I see:
amitoHey all, I'm working on the integration for manila (shared file systems) and openstack SDK. It's in progress and I guess a patch will be uploaded sometime in the next few weeks.15:57
gtemaamito: cool15:57
gtemalarsks: isn't it working further? the proxy should be fine, it seems to just throw a warning15:59
gtemacan you add `conn.load_balancer.load_balancers()`15:59
larsksgtema: the os_loadbalancer attempts to call cloud.load_balancer.find_load_balancer, which fails, since that's not a REST pass-through.15:59
gtemalarsks: how it fails?16:00
larsksgtema: re: your question, AttributeError: 'Proxy' object has no attribute 'load_balancers'16:00
larsksAnd the attempt to use find_load_balancer fails the same way.16:00
gtemaok, so empty proxy16:00
johnsomlarsks I know a bunch of changes were made to API version discovery around that time in openstacksdk. I would try adding an explicit version "v2.0" to your cloud definition for the load-balancer service.16:01
larsksjohnsom: like this? load_balancer_api_version: "v2.0"16:02
johnsomIt might be v2 though.  load-balancer_api_version I think16:02
johnsomThe service type has a hyphen in it16:03
larsksI'm pretty sure that all "-" get convereted to "_" for use as keys, but I can put both in.16:03
larsksjohnsom: I've tried this: I've set the api version to "2", "2.0", "v2", and "v2.0", all seem to result in the same error.16:06
gtemalarsks: would you try adding `openstack.enable_logging(debug=True, http_debug=True)` into your test to see which requests are being sent? I'm extending SDK with own services, which also do not properly support discovery but I have not faced such behaviour so far16:10
larsksgtema: sure, just a second.16:11
larsksgtema: there are a bunch of "Skipping invalid version data. Missing links" in the debug output:
gtemalarsks: hmm. The version discovery response is certanly bad. In each version item there should be "links" attribute16:20
gtemalarsks: i guess if no response would have been sent - it would be better than that. To tell the truth - I have no clue so far. Parsing of this document is not done in SDK, but keystoneauth1 (I guess)16:21
gtemabut  I would rather ask - why is this response wrong?16:22
larsksAs far as I know, that's just what this version of octavia spits out.16:22
larsksjohnsom: ^^^^ is that correct?16:23
gtemasure, but I mean why is it spitting this out16:23
gtemathere might be bug in octavia (this version) or configuration. Since I do not have Octavia - I do not know for sure16:24
larsksThat I don't know.  I just wish there were some way to skip the version discovery and *tell* openstacksdk what to use.16:24
johnsomWell, the version discovery in openstacksdk changed, this is why octavia changed and added the links in a later version.  Still, openstacksdk can use Octavia, it's how the CLI and horizon dashboard work. We just have some configuration issue in openstacksdk that is causing it to not be happy for some reason.16:25
johnsomYeah, there definitely is a way to tell the SDK to use a specific version, but you tried the way I know. Sadly, I haven't spent much time with openstacksdk in over a year.16:26
gtemathere is a way, but just temporarily - `openstacksdk:openstack.load_balancer.v2._proxy.Proxy.skip_discovery = True`16:26
gtemabut you will not get it landed in SDK16:27
*** d0ugal has quit IRC16:27
*** d0ugal has joined #openstack-sdks16:27
gtemajohnsom: the problem is that octavia in this case does not return a valid version discovery doc, so I might try to process this correctly. But the root should be fixed16:28
johnsomgtema It returned a valid discovery doc for the Queens timeframe16:29
johnsomgtema He is running Queens16:29
gtemaare you sure links was not mandatory field? I am using Mitaka and services return this attribute16:29
johnsomSince the CLI is working, the SDK works against the queens Octavia API16:30
johnsomYep, it was not required until later16:30
gtemaCLI is working because octaviaclient is not using SDK (I guess)16:30
gtemayesm octaviaclient is not using SDK as of now16:31
johnsomAh, it was just octavia-dashboard that used the SDK at that time16:32
larsksOkay, I'm going to punt on this right now and just right my playbook using the openstack cli rather than os_loadbalancer for now.16:33
johnsomWe just need monty or someone that knows about that version discovery change to tell us what the configuration magic is for the SDK16:33
larsksI'm going to spend a little time stepping through the code with pdb and see if maybe it's obvious...16:34
gtemaI know that you can disable version discovery per service (from the code, not configurable), but I am quite sure for Octavia it will not be switched off that easy16:34
gtema`openstack.load_balancer.v2._proxy.Proxy.skip_discovery = True`16:34
larsksgtema: isn't that at the wrong place?  The problem right now is that it doesn't know to use the load_balancer.v2 proxy because of the version discovery issue...16:35
gtemalarsks: if the discovery is skipped - it should not even try to get it and return a "proper" proxy16:36
johnsomlarsks Try one more thing, looking at the code it bypasses that if both the version and the endpoint of overriden in the config16:37
larsksgtema: setting openstack.load_balancer.v2._proxy.Proxy.skip_discovery=True doesn't seem to impact the issue.16:38
larsksjohnsom: let me try that...16:38
johnsomSince you are using the old port way of doing endpoints, append "/v2" to what you have in keystone and try that as an override16:38
larsksActually, what's the syntax for that...load_balanacer_endpoint?16:38
larsks...but spelled correctly.16:38
johnsommy "openstack endpoints" gives and uses "" for the sdk endpoint.16:39
larsksjohnsom: success!16:40
larsks(although apparently octavia lives at /v2.0)16:41
johnsomYeah, so something might have changed in the newer sdk that broke the old funky stuff that was happening in queens.  Monty did a ton of work here to fix the SDK version discovery stuff.16:41
gtemaapi-ref says /v2.0 would be an alias to /v216:41
johnsomYeah, /v2.0 is good and will work16:42
larsksAaaaand now os_loadbalancer is happy, and I can rewind my stack back a couple of hours and continue :).  Thanks johnsom , gtema !16:42
gtemalarsks: congrats for "funny" friday ;-)16:43
*** mordred has joined #openstack-sdks17:20
gtemamordred: have you arrived already?17:21
gtemamordred or anyone else who might know: all latest pathes fail in `bifrost-integration-tinyipa-ubuntu-xenial` with `Unable to establish connection to HTTPConnectionPool(host='', port=5050): Max retries exceeded with url`17:24
gtemaI was not able to figure out the reason yet17:24
*** gtema has quit IRC17:35
*** jpena is now known as jpena|off17:46
fricklergtema: TheJulia: ^^ that looks like something in ironic may have broken
*** e0ne has joined #openstack-sdks19:20
*** e0ne has quit IRC19:49
*** bobh has joined #openstack-sdks21:50
*** bobh has quit IRC22:11
*** bobh has joined #openstack-sdks22:28
*** bobh has quit IRC22:33

Generated by 2.15.3 by Marius Gedminas - find it at!