| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2019-09-05 | |||
| 22:05:01 | mriedem | i don't know that the chinese are going to understand the south park underpants gnomes reference | |
| 22:05:20 | efried | I've never actually even seen that thing | |
| 22:05:33 | efried | indirect meme reference culture | |
| 22:05:52 | dansmith | efried: commented | |
| 22:05:55 | efried | I could find it if I wanted | |
| 22:06:33 | efried | dansmith: thanks. I think nullable because not all ResourceZ are going to have metadata. | |
| 22:06:41 | mriedem | then don't set the field | |
| 22:06:44 | dansmith | efried: yeah, that's the wrong answer | |
| 22:06:47 | efried | ah | |
| 22:07:25 | efried | unset vs value of None vs object with no fields initialized vs object with fields set to None vs ..... | |
| 22:07:26 | dansmith | I thought I already commented about this in this patch, but maybe I was overwhelmed by the larger sin of using a string here and it didn't come through | |
| 22:07:42 | mriedem | i need to make dan a shirt that has nullable=True on some object field with the circle bar banned icon on it | |
| 22:07:49 | dansmith | I'd wear it | |
| 22:08:17 | dansmith | efried: I suspect the right thing there is to always have a metadata object in that field (hence never None), with either fields set appropriately empty or whatever else, | |
| 22:08:26 | dansmith | but it's hard to tell what the right thing is because it's not defined there | |
| 22:08:43 | dansmith | that's probably why I didn't comment, because I don't know WHAT that is, other than a dumping ground for blobs | |
| 22:10:03 | mriedem | it's this thing i think https://review.opendev.org/#/c/678453/19/nova/objects/resource.py | |
| 22:10:03 | efried | it's for hypervisor-specific, resource-specific metadata for a Resource. And not all ResourceZ are going to have any. It would seem like a lot of work to a) make sure to set the value b) to an empty object, meaning c) you have to make sure the object type can be "empty", whatever that means, etc. | |
| 22:10:12 | mriedem | used here https://review.opendev.org/#/c/678454/19/nova/virt/libvirt/driver.py@6934 | |
| 22:10:33 | mriedem | efried: not empty, just don't set the field | |
| 22:10:44 | efried | so does "nullable=False" just mean you're not allowed to set it to None? | |
| 22:10:48 | mriedem | correct | |
| 22:10:53 | efried | and that's the default behavior. | |
| 22:11:01 | mriedem | yeah | |
| 22:11:09 | dansmith | correct | |
| 22:11:20 | efried | and you check with | |
| 22:11:20 | efried | if 'metadata' in res_obj: | |
| 22:11:20 | efried | ? | |
| 22:11:23 | dansmith | if there's really a reason to have it =None then it _should_ be nullable, | |
| 22:11:43 | dansmith | but for something like this, the presence of the metadata object isn't the thing you want, it's what is inside | |
| 22:11:44 | mriedem | efried: yup | |
| 22:12:00 | dansmith | so if you always make these things nullable=True, then you always have to check first | |
| 22:12:11 | dansmith | like, if that was what it was intended to be in the first place, you'd have to do: | |
| 22:12:42 | dansmith | if foo.metadata: if parse(foo.metadata): do_something(foo.metadata) | |
| 22:12:49 | dansmith | when really you want to just be able to do something like | |
| 22:13:03 | dansmith | if foo in resources.metadata | |
| 22:13:05 | dansmith | or something like that | |
| 22:13:15 | dansmith | take a degree of freedom out of the thing by always making it present | |
| 22:13:22 | mriedem | if you like mega conditionals https://github.com/openstack/nova/blob/master/nova/scheduler/host_manager.py#L760 | |
| 22:13:49 | efried | egads | |
| 22:13:50 | mriedem | RequestSpec is i think the king of "if a and b and c and not d" | |
| 22:13:51 | dansmith | because later when you have two versions out there, ambiguity is the enemy | |
| 22:15:21 | efried | cool, thanks for the primer. This was easier than having 12h between each call & response. | |
| 22:15:40 | dansmith | not for me | |
| 22:15:57 | mriedem | time to start a versioned objects FAQs doc | |
| 22:16:01 | dansmith | easier to ignore with 12h latency | |
| 22:16:37 | dansmith | on my blog, which is apparently the canonical source for nova RPC information | |
| 22:16:51 | openstackgerrit | Adam Spiers proposed openstack/nova master: Apply SEV-specific guest config when SEV is required https://review.opendev.org/644565 | |
| 22:16:59 | mriedem | heh, you know it | |
| 22:17:36 | mriedem | pulling stuff from slides 5-8 here (which is a lot based on the blog) into nova docs might be good to start https://docs.google.com/presentation/d/1YeXlL1EPaZTRkbJDywJKBrugXz-Amri3fIQk2ctOugs/edit?usp=sharing | |
| 22:18:17 | efried | dustinc: you around? | |
| 22:18:35 | mriedem | note slide 11 :) | |
| 22:18:47 | dustinc | efried: yeah what’s up? | |
| 22:18:57 | efried | dustinc: I think node.list patch has a regression -- did you see https://review.opendev.org/#/c/656027/29/nova/virt/ironic/driver.py@690 | |
| 22:19:14 | dansmith | mriedem: lol | |
| 22:19:41 | openstackgerrit | Adam Spiers proposed openstack/nova master: Reject live migration and suspend on SEV guests https://review.opendev.org/680158 | |
| 22:19:51 | efried | dustinc: if that's the case, it means we're missing test coverage in the CI job and we should add it. | |
| 22:20:17 | dustinc | efried: haven’t really been paying attention to those last two with the providers.yaml work. I will check it out. | |
| 22:20:37 | efried | dustinc: this is one already merged, so it takes priority over feature work. | |
| 22:21:19 | efried | dustinc: on inspection, it makes sense I think, because we're asking the API for the instance_id field instead of the instance_uuid field. | |
| 22:21:36 | efried | this is a pain point with the sdk translation of uuid->id everywhere. | |
| 22:21:48 | efried | mordred: fyi | |
| 22:22:17 | dustinc | efried oh I see, on it now | |
| 22:22:25 | efried | so basically, queries *into* the API need to say uuid, but processing the results on the way out need to say id. | |
| 22:22:26 | efried | I think. | |
| 22:22:54 | efried | dustinc: You may want to ask for help in -ironic to add coverage to that CI job. Unless you already have it wired. I wouldn't know where to begin. | |
| 22:22:58 | openstackgerrit | Adam Spiers proposed openstack/nova master: Enable booting of libvirt guests with AMD SEV memory encryption https://review.opendev.org/666616 | |
| 22:23:18 | aspiers | efried: OK, I'm done for the last time ... until next time ^^^ | |
| 22:23:26 | aspiers | couple of very simple new patches in there | |
| 22:24:14 | aspiers | and more thorough tests than ever | |
| 22:27:21 | efried | dustinc: looks like it may be just tempest with configs to set up the ironic driver; which would mean that tempest in general doesn't exercise list_instances... | |
| 22:39:59 | openstackgerrit | Matt Riedemann proposed openstack/nova master: doc: cleanup references to conductor doc https://review.opendev.org/680535 | |
| 23:17:17 | openstackgerrit | Eric Fried proposed openstack/nova master: Bump min for oslo.service & .privsep to fix SIGHUP https://review.opendev.org/679974 | |
| 23:28:16 | aspiers | Is it possible to configure zuul to fail early if certain jobs fail? | |
| 23:28:54 | aspiers | For example 680296,1 has already failed openstack-tox-pep8 but all the other jobs are still running, taking up valuable CI resources | |
| 23:29:17 | aspiers | In fact there's a large CI backlog which would probably vanish quickly if this were possible | |
| 23:31:21 | aspiers | Hmm, seems to be possible via pipeline.failure | |
| 23:36:19 | openstackgerrit | Nathan Kinder proposed openstack/nova master: Allow TLS ciphers/protocols to be configurable for console proxies https://review.opendev.org/679502 | |
| 23:45:56 | dustinc | efried: You still online? | |
| 23:51:17 | openstackgerrit | Dustin Cowles proposed openstack/nova master: Use fields="instance_uuid" when calling Ironic API https://review.opendev.org/680542 | |
| 23:52:26 | openstackgerrit | Dustin Cowles proposed openstack/nova master: Use fields="instance_uuid" when calling Ironic API https://review.opendev.org/680542 | |
| #openstack-nova - 2019-09-06 | |||
| 00:45:28 | brinzhang | amotoki: What do you mean https://review.opendev.org/#/c/673485/3/novaclient/v2/shell.py@2609 ? | |
| 00:46:33 | amotoki | brinzhang: sorry, I looked some wrong line when scrolling the review... I will add a comment. | |
| 00:46:35 | brinzhang | as mriedem said, this patch do the ``nova volume-attach`` CLI, not server create | |
| 00:46:50 | brinzhang | amotoki: np | |
| 00:48:41 | brinzhang | amotoki: And I want to keep the option delete-on-termination in novaclient with '--delete-on-termination', but I am not sure use this in OSC is fine? | |
| 00:49:29 | brinzhang | amotoki: As sain in PS3, how about add enable/disable befor the 'delete-on-termination', what do you think? | |
| 00:49:47 | amotoki | brinzhang: sounds good for --delete-on-termination. | |
| 00:50:16 | brinzhang | amotoki: I will keep --delete-on-termination in novaclient. | |
| 00:51:26 | amotoki | brinzhang: if we need an option to specify 'delete_on_termination=False', I see several options: (a) --delete-on-termination / --no-delete-on-termination (b) --enable-delete-on-termination/--disable-delete-on-termination (c) --delete-on-termination / --keep-on-termination | |
| 00:52:04 | amotoki | brinzhang: thought? | |
| 00:53:36 | brinzhang | amotoki: I tend to (b) --enable-delete-on-termination/--disable-delete-on-termination | |
| 00:54:57 | brinzhang | amotoki: I will rebase the novaclient patch, could please review the OSC patch, and you can leave that comment in it? Or after I rebased it. https://review.opendev.org/#/c/673725/6 ^^ | |
| 00:57:36 | amotoki | brinzhang: sure. | |
| 00:58:01 | amotoki | brinzhang: btw, is there any compute API ref corresponding to this? | |
| 01:01:27 | brinzhang_ | amotoki: is this what dou you want?https://docs.openstack.org/api-ref/compute/#attach-a-volume-to-an-instance | |
| 01:02:00 | amotoki | brinzhang_: but I cannot find information on delete_on_termination. | |
| 01:04:13 | brinzhang_ | amotoki: this field in this compute API is new, after https://review.opendev.org/#/c/673133/ is merged, you can look at it. | |
| 01:04:43 | amotoki | brinzhang_: thanks. It would help me when reviewing CLI patch. | |
| 01:05:47 | brinzhang_ | amotoki: but in create server API in request body(block_device_mapping_v2.delete_on_termination (Optional)) has this field, you can reference https://docs.openstack.org/api-ref/compute/?expanded=create-server-detail#create-server | |