| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2019-03-15 | |||
| 17:53:14 | mdbooth | Incidentally, I clearly don't understand how we bump requirements. | |
| 17:53:50 | mdbooth | I wanted to bump the eventlet version requirement to >=0.21.0. That seems to have failed because we're using 0.18.2, but that seems super old. | |
| 17:54:32 | mdbooth | Hmm, that's the lower constraint | |
| 17:55:13 | sean-k-mooney | mdbooth would bumping the min version be blocked as we are after the non client lib freeze | |
| 17:55:27 | mdbooth | Ah, presumably we only install the old stuff for the lower constraints test | |
| 17:56:12 | sean-k-mooney | mdbooth: in the gate yes. that basically just runs the unit tests | |
| 17:56:18 | mdbooth | sean-k-mooney: No idea. It's not critical, tbh, as I can easily take that out. I was more interested in why we haven't hit this in the gate yet. | |
| 17:56:44 | mdbooth | We have a workaround in the monkey patching which is no longer required after eventlet 0.21.0 | |
| 17:56:51 | sean-k-mooney | mdbooth: ya as i said downstream from looking at what we run in the gate we should | |
| 17:57:01 | mdbooth | So while I was in there with a test patch I bumped the eventlet min version and removed it. | |
| 17:57:15 | mdbooth | I assumed it would go through as we'd be using a newer version already anyway. | |
| 17:58:14 | sean-k-mooney | we should not be useing the lower constraint by the way in the tempest job | |
| 17:58:40 | sean-k-mooney | mdbooth: perhaps this is showing up in osp15 because we are packagin an old eventlet | |
| 17:58:53 | mdbooth | sean-k-mooney: Nope. Latest and greatest. | |
| 17:59:24 | sean-k-mooney | the tempest-full-py3 job will use whatever the uppper-constraits.txt allows | |
| 17:59:52 | melwitt | 0.24.1 is the upper constraint for eventlet, so I'm not sure why 0.18.2 is being installed https://github.com/openstack/requirements/blob/master/upper-constraints.txt#L143 | |
| 17:59:54 | sean-k-mooney | we should be running 0.20.0 | |
| 17:59:55 | sean-k-mooney | https://github.com/openstack/requirements/blob/stable/pike/upper-constraints.txt#L141 | |
| 18:00:01 | sean-k-mooney | oh that was pike | |
| 18:00:14 | mdbooth | 0.24.1 | |
| 18:00:18 | mdbooth | Same as OSP | |
| 18:00:23 | mdbooth | Might be urllib3, then | |
| 18:00:29 | sean-k-mooney | eventlet===0.24.1 on master | |
| 18:00:46 | sean-k-mooney | urllib3===1.24.1 | |
| 18:00:49 | sean-k-mooney | on master | |
| 18:01:04 | mdbooth | OSP: python3-urllib3-1.23-5 | |
| 18:01:11 | mdbooth | Slightly older urllib3 | |
| 18:01:44 | mdbooth | Anyway, as I said in the ML post it's not that important. By not monkey patching first, if it's not this today it will be something else tomorrow. | |
| 18:03:03 | sean-k-mooney | ya | |
| 18:03:41 | sean-k-mooney | at somepoint maybe we can finally move away form eventlets entriely but it will atleast be U before that becomes possible | |
| 18:04:45 | sean-k-mooney | i.e. we need to drop python2 support first | |
| 18:20:31 | openstack | Launchpad bug 1801303 in OpenStack Compute (nova) "VM send DHCP request before openflow is created in br-int" [Undecided,New] | |
| 18:20:31 | melwitt | sean-k-mooney: you might be able to help triage this bug, looks in your wheelhouse https://bugs.launchpad.net/nova/+bug/1801303 | |
| 18:26:02 | openstackgerrit | Merged openstack/nova stable/rocky: Update instance.availability_zone during live migration https://review.openstack.org/643173 | |
| 18:32:59 | sean-k-mooney | melwitt: sure ill take a look now | |
| 18:33:31 | melwitt | sean-k-mooney: thanks | |
| 18:34:06 | sean-k-mooney | my inital reaction is this shound never happen in any release after we added the vif plugged events as we wait for those on boot | |
| 18:34:58 | melwitt | oh, I see. I think it's been awhile since those were added | |
| 18:35:10 | melwitt | i.e. before queens | |
| 18:35:19 | sean-k-mooney | yes back in like mitaka or so queens should have it | |
| 18:35:32 | sean-k-mooney | im going to ask from mor info on what network backend they are using | |
| 18:35:44 | melwitt | ok, cool | |
| 18:35:45 | sean-k-mooney | if they are using odl then that would explain the behavior | |
| 18:36:02 | melwitt | oh, right. I vaguely remember that from last time I tried to think about vif plug events xD | |
| 18:36:04 | sean-k-mooney | odl sends the event on port bind not when odl wires it up | |
| 18:50:46 | fried_rice | mordred: ! | |
| 18:52:03 | fried_rice | mordred: I pulled down your openstacksdk patch, diddled with it a little bit, added a kwarg to Connection, instantiated it with a CONF and a session/auth established from ks_loading, and succeeded in talking to placement through it. | |
| 18:52:31 | mordred | fried_rice: SWEET! | |
| 18:52:36 | fried_rice | mordred: Permission to upload my changes to your patch so I can create one in nova that depends-on it and proceed? | |
| 18:52:40 | mordred | please do | |
| 18:53:20 | mordred | fried_rice: that's super exciting that it worked and stuff | |
| 18:53:37 | mordred | or, you know "worked" well enough for you to make it actually work | |
| 18:53:39 | fried_rice | from keystoneauth1 import loading | |
| 18:53:39 | fried_rice | conf.CONF(args=['--config-file', '/etc/nova/nova-cpu.conf']) | |
| 18:53:39 | fried_rice | from nova import conf | |
| 18:53:39 | fried_rice | import openstack | |
| 18:53:39 | fried_rice | mordred: FYI, my ipython session looked roughly like this: | |
| 18:53:40 | fried_rice | sess = loading.load_session_from_conf_options(conf.CONF, 'placement', auth=auth) | |
| 18:53:40 | fried_rice | auth = loading.load_auth_from_conf_options(conf.CONF, 'placement') | |
| 18:53:41 | fried_rice | conn = connection.Connection(session=sess, oslo_conf=conf.CONF) | |
| 18:53:41 | fried_rice | from openstack import connection | |
| 18:53:42 | fried_rice | conn.placement.get('/resource_providers').json() | |
| 18:54:01 | fried_rice | and obviously the money shot was that last thing producing the expected json payload. | |
| 18:54:12 | mordred | fried_rice: ++ | |
| 18:55:10 | mordred | fried_rice: fwiw, when you stitch it in to nova - pass app_name and app_version to the parameters (app_name of "nova" I think :) ) - it updates the user agent strings | |
| 18:55:34 | fried_rice | mordred: okay, will do. | |
| 18:55:46 | mordred | but does it via appending - so it'll be like nova/blah openstacksdk/blah keystoneauth/blah | |
| 18:55:47 | fried_rice | mordred: um, maybe will add a TODO | |
| 18:55:49 | mordred | ++ | |
| 18:56:00 | mordred | add a todo - I can followup | |
| 18:56:01 | fried_rice | right now I just want to PoC this sucker. | |
| 18:56:04 | mordred | yup | |
| 18:56:53 | fried_rice | mordred: btw, is the above connection-y stuff how you envisioned this tying together from the pov of the openstacksdk consumer (i.e. nova)? | |
| 18:57:15 | fried_rice | awkward that there's already a kwarg called `config`; I figured `oslo_conf` was adequately explicit. | |
| 18:58:10 | mordred | fried_rice: yeah - I think that totally works. I was originally thinking the user might just use the openstack.config.from_conf or whatever I called it to make a CloudRegion that could be passed to Connection's config parameter ... | |
| 18:58:29 | mordred | fried_rice: but your way makes total sense and I think should make it nicer for other openstack projects to follow suit | |
| 18:58:44 | fried_rice | ight | |
| 18:58:51 | mordred | so "yes" | |
| 18:58:56 | fried_rice | ight | |
| 19:02:50 | sean-k-mooney | melwitt: i have marked https://bugs.launchpad.net/nova/+bug/1801303 as incomplet and subsribed my self to the bug. if i get a responce i will retriage but this likely will end up getting moved to invlaide since its been a few months since it was first reported. | |
| 19:02:52 | openstack | Launchpad bug 1801303 in OpenStack Compute (nova) "VM send DHCP request before openflow is created in br-int" [Low,Incomplete] | |
| 19:03:28 | melwitt | sean-k-mooney: thanks for helping with that. yeah, hopefully we'll get a response | |
| 19:04:55 | mordred | fried_rice: it seems like a slight logic error in Connection ... | |
| 19:05:02 | mordred | but you said it worked for you | |
| 19:05:11 | fried_rice | mordred: what seems like a logic error? | |
| 19:05:25 | mordred | if session: is the first thing, then elif oslo_conf: | |
| 19:05:37 | mordred | fried_rice: but you're passing in an oslo_conf and a session | |
| 19:05:49 | fried_rice | hum, maybe that means it's only using the session and I don't need the conf :) | |
| 19:05:58 | fried_rice | iow I'm not hitting your code at all | |
| 19:06:03 | fried_rice | trying... | |
| 19:06:05 | mordred | yeah. it'll totally work just with teh session | |
| 19:06:46 | mordred | but - if there are any adapter level conf settings - like ... interface, region_name or endpoint_override they'll be ignored | |
| 19:07:12 | mordred | (those being teh ones I could imagine are most likely for someone to set in their nova.conf file | |
| 19:07:55 | fried_rice | ack (and confirmed btw). Will twiddle and retry to make sure it still works :) | |
| 19:08:34 | mordred | cool! I left a comment on the review for posterity | |
| 19:09:20 | fried_rice | ...also works fwiw | |
| 19:09:29 | mordred | \o/ | |
| 19:09:45 | fried_rice | I guess I would need to do something nonstandard with adapter-only settings to make sure it's actually excercising the code, but for now... | |
| 19:09:59 | mordred | or just put ina print statement :) | |
| 19:10:13 | mordred | but yeah - I thnk for now that's fine | |