| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-sdks - 2018-06-13 | |||
| 13:02:55 | cdent | what's different from what mnaser is doing and what what the scheduler report client (which uses ksa) is doing? | |
| 13:03:09 | mordred | cdent: when keystoneauth does version discovery it filters out statuses that are not CURRENT or SUPPORTED unless you provide a flag | |
| 13:03:28 | mordred | cdent: I'm not 100% sure yet why it's working in nova | |
| 13:04:26 | mordred | cdent: where can I look at the scheduler report client? | |
| 13:04:40 | cdent | nova/scheduler/client/report.py | |
| 13:06:34 | mordred | cdent: weird. I'll have to dig a bit more to figure it out | |
| 13:06:38 | umbSublime | awesome thanks mordred | |
| 13:07:49 | cdent | mordred: it may be in the way nova.utils.get_ksa_adapter is happening | |
| 13:08:01 | cdent | but in any case, I'll add a status | |
| 13:08:41 | mordred | cdent: something something API-SIG recommendations something something | |
| 13:08:44 | mordred | :) | |
| 13:09:20 | cdent | indeed, but also, something something someone ate my clones something something | |
| 13:10:01 | mordred | darned clone eaters | |
| 13:10:07 | mordred | I made you such nice ones just the other day | |
| 13:12:31 | cdent | such brief candles | |
| 13:14:56 | mordred | out. out | |
| 13:21:18 | openstackgerrit | Pavlo Shchelokovskyy proposed openstack/python-openstackclient master: Skip calls to glance and nova when got no servers https://review.openstack.org/568344 | |
| 13:21:19 | openstackgerrit | Pavlo Shchelokovskyy proposed openstack/python-openstackclient master: Add --name-lookup option to server list https://review.openstack.org/568345 | |
| 13:24:21 | openstackgerrit | Graham Hayes proposed openstack/os-api-ref master: Use 'sphinx.util.logging' https://review.openstack.org/563179 | |
| 13:37:09 | cdent | mordred: help me believe that the version discovery doc is not itself microversioned. If it is I'm going to gouge my eyes out | |
| 13:37:25 | cdent | and collapse into a logical black hole | |
| 13:40:12 | mordred | cdent: it is, in fact, not microversioned | |
| 13:40:20 | cdent | bless you | |
| 13:40:54 | mordred | cdent: and I contend that any changes to it that align it more with the API-SIG guidelines are not breaking API changes | |
| 13:41:43 | cdent | as would I | |
| 13:56:46 | mnaser | mordred: thanks. `placement = os_client_config.make_rest_client('placement', placement_endpoint_override='https://placement-ca-ymq-1.vexxhost.net')` doesn't seem to do the trick however? | |
| 13:58:41 | mordred | mnaser: well that's annoying | |
| 13:59:12 | mnaser | mordred: my wip is http://paste.openstack.org/show/723387/ | |
| 13:59:33 | mordred | mnaser: I'm unfortunately in a morning of meetings - but I'm very interested in helping to solve this for real -so if I go dark for chunks of time I haven't forgotten about you | |
| 13:59:44 | mnaser | i tried openstacksdk and i was running into the same issues too, alongside is_public not being something changable (that has since been fixed but not released) | |
| 13:59:58 | mnaser | mordred: oh don't worry about it, as async as you want, im not in a total rush about this | |
| 14:02:33 | mordred | mnaser: fwiw, I can reproduce it locally: | |
| 14:02:35 | mordred | >>> import openstack | |
| 14:02:37 | mordred | >>> c=openstack.connect(cloud='vexxhost') | |
| 14:02:39 | mordred | >>> c.placement.get('/allocation_candidates') | |
| 14:02:55 | mordred | (give me same traceback) | |
| 14:03:41 | mnaser | mordred: at least it's not me doing something wrong, yay. if there's anything on our side to do, i can look into it but this is a queens deployment | |
| 14:04:10 | mordred | mnaser: how hard would it be for you to cherry-pick https://review.openstack.org/575117 onto your nova? | |
| 14:05:07 | mnaser | mordred: not very, but i'd be much happier doing it if that type of thing gets backported | |
| 14:05:33 | mnaser | like: if you want a cherry pick to see how it looks like with no guarantee that it will stay there (because we will redeploy from upstream stable and the cherry pick will disappear) | |
| 14:06:05 | mordred | cdent: what do you think the chances are we convince anyone to cherry-pick your patch back to stable/queens? | |
| 14:06:05 | cdent | mnaser: that _will_ get back ported | |
| 14:06:09 | cdent | jinx | |
| 14:06:12 | mordred | _awesome_ | |
| 14:06:14 | mnaser | cool | |
| 14:06:23 | mnaser | this seems to be relatively low touch | |
| 14:06:25 | mnaser | lets break stuff now | |
| 14:07:54 | mnaser | i guess there will be a merge conflict because it looks like placement exists in `nova/api/openstack/placement/` in queens but we can take care of that easily in the backport | |
| 14:11:18 | mnaser | mordred, cdent: https://review.openstack.org/#/c/575117/1 cherry-picked and i can see it in effect http://placement-ca-ymq-1.vexxhost.net/ | |
| 14:11:32 | mnaser | i'm still getting a traceback in my code but who knows | |
| 14:11:40 | cdent | same or different? | |
| 14:11:46 | cdent | (traceback and code) | |
| 14:12:27 | mnaser | same code http://paste.openstack.org/show/723387/ giving same traceback | |
| 14:12:38 | cdent | drop the override? | |
| 14:12:51 | mnaser | oh right | |
| 14:14:31 | cdent | I'm concered confused by why the override didn't work, but I'm struggling to speculate because of lack of familiarity with the tools | |
| 14:15:48 | mnaser | i cant even get my `clouds.yaml` running properly | |
| 14:17:00 | mnaser | ok no my clouds.yaml is fine | |
| 14:17:30 | mnaser | http://paste.openstack.org/show/723390/ gives me http://paste.openstack.org/show/723391/ | |
| 14:17:43 | mnaser | (the nova print flavors parts works fine) | |
| 14:17:55 | openstackgerrit | Graham Hayes proposed openstack/os-api-ref master: General overhaul of testing setup https://review.openstack.org/575124 | |
| 14:23:26 | cdent | mnaser: i guess something is having trouble understanding how to define auth handling durig make_rest_client, but again, I've got no insight into that code. | |
| 14:24:00 | mnaser | cdent: yeah i tried digging into it but it is way beyond me :( it's not a fun user experience but then again not many people interact with the placement api directly i assume | |
| 14:24:44 | cdent | as far as I can tell the problems you're experience aren't because of placement itself, it is something about how the libraries are trying to contact it | |
| 14:24:51 | cdent | placement itself is way simple | |
| 14:25:09 | cdent | if curl to placement with a valid keystone token, it will just work | |
| 14:25:38 | cdent | but i'm not normal | |
| 14:28:49 | mnaser | cdent: oh yeah, i agree, but i'm saying that the tooling to get me something that interacts with it relatively cleanly doesn't exist fully yet | |
| 14:28:56 | mordred | cdent, mnaser: I'm confused both as to why override did not work and also why it's not working now- I still get the same error as before | |
| 14:29:10 | mnaser | don't want to start building out something using requests etc | |
| 14:29:27 | mordred | oh - I think I have an idea | |
| 14:31:01 | mordred | mnaser: can you try adding placement_api_version to your clouds.yaml? (we're still 2 patches away from having discovery work right without having a configured api version) | |
| 14:31:24 | mordred | mnaser: so placement_api_version: 1 | |
| 14:31:38 | mnaser | "IndexError: list index out of range" | |
| 14:31:46 | mordred | sigh | |
| 14:32:22 | mnaser | mordred: http://paste.openstack.org/show/723392/ this is where i am at right now | |
| 14:32:37 | mordred | yah- that looks right | |
| 14:36:16 | mnaser | feel free to throw things my way but i've hit a wall personally, i'd have to figure out the inner working of all of this to work any further | |
| 14:37:30 | mordred | yah - I'll figure it out | |
| 14:39:45 | openstackgerrit | Graham Hayes proposed openstack/os-api-ref master: General overhaul of testing setup https://review.openstack.org/575124 | |
| 14:41:39 | mordred | heh | |
| 14:41:41 | mordred | cdent: $ curl http://placement-ca-ymq-1.vexxhost.net/ | |
| 14:41:43 | mordred | {"versions": [{"status": "CURRENT", "min_version": "1.0", "max_version": "1.17", "id": "v1.0"}]} | |
| 14:42:00 | mordred | there's no links dict | |
| 14:42:17 | cdent | yeah, never has been. is that a problem too? | |
| 14:42:38 | mordred | it's what tells a discovery client where the given endpoint is | |
| 14:42:48 | cdent | you're already there | |
| 14:43:17 | mordred | but a discovery consumer doesn't know that | |
| 14:43:32 | cdent | one sec | |
| 14:43:39 | mordred | for all of the other services, the discovery document is an index to where the actual endpoints are | |
| 14:43:56 | mordred | $ curl http://compute-ca-ymq-1.vexxhost.net/ | |
| 14:43:57 | mordred | {"versions": [{"status": "SUPPORTED", "updated": "2011-01-21T11:33:21Z", "links": [{"href": "http://compute-ca-ymq-1.vexxhost.net/v2/", "rel": "self"}], "min_version": "", "version": "", "id": "v2.0"}, {"status": "CURRENT", "updated": "2013-07-23T11:33:21Z", "links": [{"href": "http://compute-ca-ymq-1.vexxhost.net/v2.1/", "rel": "self"}], "min_version": "2.1", "version": "2.60", "id": "v2.1"}]} | |
| 14:44:17 | cdent | because they are hilariously antiquated things that do weird things like put versions in urls on the same service endpoint for | |
| 14:44:26 | mordred | well - sure | |
| 14:44:39 | cdent | for modern things that don't do such blasphemy, if no link rel self then endpoint is what you already requested | |
| 14:45:05 | cdent | that was supposed to come out as a question, not a dammit! | |
| 14:45:41 | cdent | mordred: i can stick it in too, to that same patch, but it seems...weird | |
| 14:45:55 | mordred | that would be a potential behavior change in keystoneauth ... https://github.com/openstack/keystoneauth/blob/master/keystoneauth1/discover.py#L543-L547 | |
| 14:46:31 | mordred | kmalloc: ^^ if we stopped skipping entries with no self link and used that to infer that the existing endpoint was the self-link - would you consider that a breaking change to keystoneauth? | |
| 14:46:49 | cdent | i'm happy to fix placement to make life easier | |