| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2020-08-12 | |||
| 14:05:12 | gmann | or best will be add attr by attr based on use case we get to know | |
| 14:05:15 | sean-k-mooney | so that you can modify anything | |
| 14:05:23 | gmann | true | |
| 14:05:29 | sean-k-mooney | *can't | |
| 14:06:09 | sean-k-mooney | body looks like its a dict | |
| 14:06:36 | sean-k-mooney | for this kind of think i generally prefer to be lazy and pass the whole thing | |
| 14:06:48 | sean-k-mooney | rahter then attr by attr | |
| 14:06:58 | sean-k-mooney | but it depned on how strong a contract we want to give | |
| 14:07:21 | sean-k-mooney | e.g. if we change a field name if we just pass the body it can break things | |
| 14:07:26 | sean-k-mooney | so there is a trade off there | |
| 14:07:35 | gmann | yeah, for some APIs that is ok but for many passing everything is just unnecessary for oslo policy | |
| 14:07:36 | sean-k-mooney | at least form an upgrades point of vew | |
| 14:08:11 | gmann | you mean if API change the request attr etc? | |
| 14:08:35 | gmann | and overridden policy were relying on that | |
| 14:08:55 | sean-k-mooney | if we renamed say body['os:scheduler_hints'] to body['os:scheduler_hint'] and the polocy was relying on that then it would break | |
| 14:09:09 | gmann | yeah | |
| 14:09:13 | sean-k-mooney | but if we add a scheduler_hints attibe then we have a layer of indirection | |
| 14:09:34 | sean-k-mooney | not that we plan to do that but you know just trying to see what would break | |
| 14:09:37 | gmann | that is good upgrade checks in such case | |
| 14:10:22 | gmann | we can get the override rules and how they are written and compare such case of attr change at API side | |
| 14:10:42 | sean-k-mooney | only for default rules | |
| 14:10:49 | sean-k-mooney | we wont know what customer are using | |
| 14:11:19 | gmann | we can know, we get the policy file and the overridden rule info | |
| 14:11:33 | sean-k-mooney | not upstream | |
| 14:12:06 | sean-k-mooney | if random customer x uses this to create a custom policy rules check any sub element of the requet body | |
| 14:12:16 | sean-k-mooney | we can test for that | |
| 14:13:35 | gmann | yeah, what other case you mean we cannot test? | |
| 14:13:38 | sean-k-mooney | what we could do is pass create_kwargs instead of body that gives us a small laywer of indriection in this case but i think im slowly talking my self into advocating for only passing objects or indivigual atributes | |
| 14:14:26 | sean-k-mooney | we cant test every poicly atibute that coudl be used form the body | |
| 14:14:48 | gmann | ohk, yeah. | |
| 14:15:49 | gmann | but as long as we construct the targets explicitly, we can do. I am in favor of 'add attr based on known use case' instead of complete object/request info | |
| 14:16:18 | gmann | we do not test current allowed attr though but something to improve | |
| 14:16:41 | gmann | project_id is only tested at major/or-all | |
| 14:19:31 | sean-k-mooney | ya if we just add things one by one to the target we can test it | |
| 14:20:08 | sean-k-mooney | well the target is currently | |
| 14:20:10 | sean-k-mooney | target = { | |
| 14:20:13 | sean-k-mooney | 'project_id': context.project_id, | |
| 14:20:15 | sean-k-mooney | 'user_id': context.user_id, | |
| 14:20:17 | sean-k-mooney | 'availability_zone': availability_zone} | |
| 14:20:24 | sean-k-mooney | i dont think we would remove any of those well ever | |
| 14:20:29 | sean-k-mooney | so it pretty safe | |
| 14:21:01 | sean-k-mooney | kklimonda: what did you need for your usecase | |
| 14:21:05 | gmann | yeah, chance of changing request body is very less. addition is there | |
| 14:21:11 | gmann | also scope control and new defaults, can solve the problem at most extend. | |
| 14:27:31 | kklimonda | sean-k-mooney: it's a billing issue - we want to have two types of VMs: pay-as-you-go and prepaid (attached to a contract). I need to limit `compute:create:*` API calls based on whether user has credits, or contract with a open slots for a given flavor type. Also, have a way to return a customized error message back to the user would be nice. | |
| 14:29:02 | sean-k-mooney | kklimonda: that is not really a policy function | |
| 14:29:58 | sean-k-mooney | kklimonda: that feels more like a use case for keystone middelware or quotas | |
| 14:30:36 | kklimonda | keystone middleware as in custom middleware for keystone? | |
| 14:31:07 | gmann | yeah, we cannot control these with policy | |
| 14:31:11 | sean-k-mooney | as in custom mideelware for the nova api | |
| 14:31:32 | sean-k-mooney | sorry not keystone middelware oslo.middleware | |
| 14:31:52 | sean-k-mooney | we have keystone middelware that uses that to handel all our auth | |
| 14:32:02 | sean-k-mooney | so its the example of api middelware that comes to mind | |
| 14:32:06 | kklimonda | can I still add custom middleware to nova? keystone have removed that feature around stein iirc | |
| 14:32:18 | sean-k-mooney | you can do it with paste | |
| 14:32:19 | sean-k-mooney | but yes | |
| 14:32:55 | gmann | here https://github.com/openstack/nova/blob/master/etc/nova/api-paste.ini | |
| 14:34:37 | kklimonda | makes sense, for some reason I've completely blacked out on middleware - derp | |
| 14:35:13 | sean-k-mooney | anyway im not that familar with how that all works but you can still add custom middleware and then intercept any request and do whatever you want provided you are also happy to support it yourself :) | |
| 14:56:03 | alex_xu | efried: sean-k-mooney, for the user add their own custom trait manually through placement, that should be the case we want to ignore the conflict trait from provider config? | |
| 14:56:47 | alex_xu | efried: sean-k-mooney, compare to modify inventory, the user adds custom trait is more normal case I guess | |
| 14:59:47 | sean-k-mooney | so CUSTOM_ traits we shoudl ignore i think | |
| 15:00:14 | sean-k-mooney | but standard tratis should only be set via virt driver or provider.yaml | |
| 15:00:40 | sean-k-mooney | i have to join a meething now however so havnt fully tought through that answer | |
| 15:02:59 | alex_xu | sean-k-mooney: yea | |
| 15:32:07 | efried | alex_xu: What does it mean to have a trait conflict? The provider config is intended to allow you to override things. If it contains a CUSTOM_ trait that's not already on the provider, we should add it. If there's a trait -- CUSTOM or otherwise -- on the provider but not in the config, we should leave it alone. Right? | |
| 17:48:11 | eandersson | I know Rocky patches are not a priority, but if someone has time could you look at getting this patch series merged? https://review.opendev.org/#/c/703117/ | |
| #openstack-nova - 2020-08-13 | |||
| 02:22:51 | openstackgerrit | renminmin proposed openstack/nova master: Fix instance booted with snapshot image and bdms https://review.opendev.org/745821 | |
| 02:50:01 | openstackgerrit | Merged openstack/nova master: Detach is broken for multi-attached fs-based volumes https://review.opendev.org/741712 | |
| 04:53:53 | openstackgerrit | Harshavardhan Metla proposed openstack/nova master: Raising a failure in case of 403 https://review.opendev.org/735068 | |
| 08:07:11 | openstackgerrit | Alexandre Arents proposed openstack/nova master: Rebase qcow2 images when unshelving an instance https://review.opendev.org/696084 | |
| 08:27:20 | openstackgerrit | Jie Li proposed openstack/nova master: fix revert resize failed https://review.opendev.org/746020 | |
| 12:35:06 | openstackgerrit | Merged openstack/nova master: [Trivial] Remove wrong format_message() conversion https://review.opendev.org/744280 | |
| 12:53:58 | openstackgerrit | Mark Goddard proposed openstack/nova master: docs: fix aggregate weight multiplier property names https://review.opendev.org/746128 | |
| 14:28:25 | openstackgerrit | Ghanshyam Mann proposed openstack/nova master: Add new default roles in baremetal nodes policies https://review.opendev.org/741716 | |
| 14:28:59 | openstackgerrit | Ghanshyam Mann proposed openstack/nova master: Pass the actual target in baremetal nodes policy https://review.opendev.org/741717 | |
| 14:31:30 | openstackgerrit | Ghanshyam Mann proposed openstack/nova master: Add new default roles in networks policies https://review.opendev.org/742566 | |
| 14:31:52 | openstackgerrit | Ghanshyam Mann proposed openstack/nova master: Pass the actual target in networks policy https://review.opendev.org/742568 | |
| 14:34:32 | openstackgerrit | Ghanshyam Mann proposed openstack/nova master: Add scope and new default roles in extensions policies https://review.opendev.org/743046 | |
| 14:36:30 | artom | Is logstash... working? | |
| 14:36:42 | artom | I'm trying to understand if "Multiple possible networks found, use a Network ID to be more specific" in the nova-next job is a recurring thing | |
| 14:55:44 | sean-k-mooney | artom: its a few days delayed | |
| 14:56:02 | sean-k-mooney | i think 3-5 days | |
| 14:57:19 | sean-k-mooney | artom: http://logstash.openstack.org/#/dashboard/file/logstash.json?query=message:%5C%22Multiple%20possible%20networks%20found,%20use%20a%20Network%5C%22 | |
| 14:57:26 | sean-k-mooney | set it to 30days and you get hits | |
| 14:58:08 | artom | Ah yes, indeed. I feel like we've hit this before, for a different job | |
| 14:58:12 | artom | gmann ^^ sound familiar? | |
| 14:58:17 | sean-k-mooney | we have hit this many times | |
| 14:58:21 | sean-k-mooney | its a tempest bug | |
| 14:58:41 | sean-k-mooney | the tests are not wrtten correctly | |
| 14:59:07 | artom | I kinda figured that already :P | |
| 14:59:28 | artom | I was looking for a previous fix that I could plagiarize to avoid having to think about this ;) | |
| 14:59:38 | artom | Or to straight up "delegate" to someone else :P | |
| 15:01:11 | sean-k-mooney | the first failure was in this requiremnt update to neutron libs https://review.opendev.org/#/c/745237 | |
| 15:02:00 | sean-k-mooney | that may or may not be related to the cause | |
| 15:12:33 | gmann | artom: sean-k-mooney yeah, we fixed this issue while we see error. | |
| 15:15:50 | artom | gmann, do you remember what the fix was? Do we need to redo it somewhere else? | |
| 15:16:36 | gmann | by default, tempest tests does not pass the dedicated network while creating server so we go test by test and request for unique network to be created for test | |
| 15:16:39 | gmann | artom: yeah | |
| 15:17:29 | gmann | artom: https://review.opendev.org/#/c/721767/ | |