Earlier  
Posted Nick Remark
#openstack-nova - 2020-04-27
14:47:58 gmann yeah, that ^^
14:48:18 zigo dansmith: As much as I know, there's no way to add comments in a .json file.
14:48:21 zigo Indeed.
14:48:29 dansmith gmann: but I think zigo is saying that debian has taken the more user-friendly approach of just putting the generated file in place, and letting them alter it in-place
14:48:40 gmann hummm
14:48:48 dansmith zigo: right, it's frustrating, so I understand why the debian packages are the way they are
14:48:49 zigo dansmith: Exactly what I was doing so far ! :)
14:48:59 dansmith zigo: I'm sure you're not the only one
14:49:01 gmann because oslo tool generate the rule with all commented
14:49:03 openstackgerrit Stephen Finucane proposed openstack/nova master: objects: Remove 'NovaObjectDictCompat' from 'Migration' https://review.opendev.org/723572
14:49:03 openstackgerrit Stephen Finucane proposed openstack/nova master: objects: Add MigrationTypeField https://review.opendev.org/706013
14:49:04 openstackgerrit Stephen Finucane proposed openstack/nova master: objects: Remove 'NovaObjectDictCompat' from 'InstancePCIRequest' https://review.opendev.org/723573
14:49:05 openstackgerrit Artom Lifshitz proposed openstack/nova stable/stein: DNM: Add a placement audit command https://review.opendev.org/720839
14:49:17 dansmith I would not be surprised if people generating their own packages or installing from pip do the same for audit reasons
14:49:37 dansmith gmann: does it? how do you comment in json?
14:50:01 beekneemech It uses YAML.
14:50:25 zigo bnemec: As much as I know, there's no way to get services to load .yaml files, is there?
14:50:42 bnemec zigo: Yes, YAML works fine.
14:50:44 zigo Unless this has changed recently ...
14:50:47 gmann ah its yaml generated - https://docs.openstack.org/nova/latest/configuration/sample-policy.html
14:50:50 dansmith I've never seen it deployed in yaml file on a real system
14:50:51 bnemec I think the default is still JSON though.
14:51:11 bnemec IIRC, some service actually overrides that default so they get YAML by default.
14:51:13 zigo bnemec: Last time I tried, maybe 2 or 3 releases ago, it didn't work.
14:51:31 zigo Commented yaml would work for me.
14:51:44 dansmith zigo: except we can't require people to convert that as part of an upgrade
14:51:51 bnemec It's always possible there's a bug. YAML is definitely supposed to work.
14:52:03 dansmith bnemec: do any CI jobs use yaml?
14:53:10 gmann one things we can do is always add deprecated rule from oslopolicy-sample-generator
14:53:22 dansmith just checked one I had handy and the only service with a policy file is neutron, and it's json
14:53:38 dansmith gmann: but ... people with existing policy files can't be broken by this upgrade
14:53:42 openstackgerrit Artom Lifshitz proposed openstack/nova stable/rocky: DNM: Add a placement audit command https://review.opendev.org/720842
14:53:56 gmann but again not all people use this or some other way to generate file like editing the old file
14:54:52 gmann dansmith: true, existing policy should not break, here zigo case is it get generated newly with oslo tool which had new defaults but not deprecated
14:55:23 dansmith gmann: I'm still trying to understand if people with a train-generated full policy file are going to be broken
14:55:30 dansmith I've not understood your answers there
14:55:31 gmann if it is not re-generated then old policy keep working in both case 1. they have override different rule 2. or reply on default even have rule in fule
14:55:40 openstackgerrit Stephen Finucane proposed openstack/nova master: Add an online migration for PciDevice.uuid https://review.opendev.org/530905
14:55:40 openstackgerrit Stephen Finucane proposed openstack/nova master: Modify PciDevice.uuid generation code https://review.opendev.org/530487
14:55:53 nightmare_unreal what can cause nova-live-migration zuul build to fail ??
14:55:54 gmann dansmith: train generated file should keep working as it is.
14:56:53 gmann what happened here is, policy file is generated freshly which had new 'system rule' but token are not refreshed
14:57:01 dansmith gmann: what if someone's deploy script generates the file from the tooling, applies their two or three rule tweaks? then they're broken?
14:57:50 dansmith I see, the broken part is because the newly generated file will be rules that require scoped tokens or whatever?
14:57:57 gmann dansmith: and they have other rule with new value present in file then broken. and that is case that they have override the rule but token not refreshed
14:58:08 gmann dansmith: correct
14:58:25 bnemec Right. This is why the deprecated rule behavior ORs with the old rule.
14:58:29 gmann train policy will still have adimin_rule and keep working
14:58:45 dansmith gmann: okay, understand why train configs still work, which is good
14:59:04 dansmith gmann: I would expect the generate-then-tweak process is fairly widespread
14:59:32 zigo dansmith: Yes, "then they're broken" ...
14:59:35 gmann humm and generate with 'oslopolicy-sample-generator' tool right ?
14:59:40 zigo (ie: my case...)
14:59:49 zigo Which I think is really wrong.
15:00:11 openstackgerrit Stephen Finucane proposed openstack/nova master: objects: Add online migration for legacy NUMA objects https://review.opendev.org/537414
15:00:15 gmann i mean we can explicitly add deprecated rule in that tool logic. but not sure if that solve all the cases
15:00:30 dansmith gmann: yes
15:00:49 AJaeger any nova core available for two tiny cleanups related to Babel/translations, please? https://review.opendev.org/#/c/723206/2 and https://review.opendev.org/#/c/720725/1 ?
15:00:55 dansmith I dunno what to do about this though, since it's really a problem spread across multiple projects, lots of code, and some human assumptions
15:01:13 bnemec We can't always do that though or there's no way for deployers to get the new rule alone.
15:01:30 zigo dansmith: I also expect the generated-then-not-touched case is also fairly widespread (my case in my CI) and it is broken as well currently.
15:01:42 gmann as per my expectation, 'generate-then-tweak ' case also need operator review if something auto-re-generated is ok or not
15:01:42 dansmith zigo: yup
15:01:57 dansmith gmann: not if they don't know they need to review
15:02:07 dansmith gmann: they could have been doing this approach for years with no problem
15:02:12 bnemec Is this on a fresh install? If so, why isn't everything configured to handle the new policies?
15:02:12 gmann humm
15:02:28 dansmith bnemec: no, not necessarily fresh deploy
15:02:34 zigo I very much agree that it's the operator's responsibility to refresh the policy.json and re-tweak it carefully on each upgrade.
15:02:43 gmann dansmith: they had same problem when policy was deprecated. here we did all policy changed instead of one or two
15:03:19 dansmith gmann: you mean when the full policy file was deprecated?
15:03:20 bnemec I mean, that deployment method hasn't been recommended since policy in code went in however many years ago.
15:03:29 dansmith AFAIK, plenty of people never migrated to empty policy files
15:03:37 zigo bnemec: On a *fresh* install, with the currently default generated policy.json, things a broken. That's the issue I've reported to begin with! :)
15:03:52 dansmith bnemec: but not everyone likes that, and distros still generate full policy files, which is why we're here
15:04:01 gmann dansmith: for example, single policy was changed in some cycle.
15:04:20 bnemec So that's a problem anyway. Ussuri installs should be configured correctly to handle the new policy.
15:04:31 dansmith gmann: which is why it's quite likely that people's deployment scripts moved to generate-and-tweak.. like, generate and then sed, sed, sed
15:04:38 bnemec Even if we include the deprecated rules in the generated policy, it just pushes the breakage off one release.
15:04:56 gmann i mean that was always problem in past also.
15:05:04 dansmith bnemec: but it involves a change in user behavior right?
15:05:05 dansmith they have to now get scoped tokens?
15:05:14 bnemec Once the deprecated rule is dropped in the subsequent release you break then instead of now.
15:05:34 bnemec I think that's only true if enforce_scope is true.
15:05:41 gmann true, scope token in this case and changed in admin->non-admin etc in past
15:05:53 dansmith but that's the whole reason we're here, because zigo is taking all the defaults, and it's broken
15:06:02 dansmith bnemec: ^
15:06:25 gmann 'taking all the defaults' not default but only new default without deprecated things.
15:06:44 gmann 'default' still mean 'new + old'
15:07:17 dansmith gmann: sorry I don't understand those two comments
15:07:25 openstack Launchpad bug 1875418 in OpenStack Compute (nova) "Generated policy.json in Ussuri is broken by default" [Undecided,New]
15:07:25 zigo Bug filled: https://bugs.launchpad.net/nova/+bug/1875418
15:07:31 stephenfin zigo: why can't we just stop including a generated policy file in the package?
15:07:49 dansmith he can, he said that
15:07:50 zigo stephenfin: How are operators supposed to double-guess what they can use?
15:07:55 gmann dansmith: i mean current defaults are "new default + old deprecated defaults" and file generated was half bald with 'new defaults' only
15:08:21 zigo stephenfin: That's actually exactly what I'll be doing: provide an empty policy.json. But that's really not user friendly.
15:08:29 stephenfin zigo: You have a openstack-nova-doc package, yeah? It's documented in there
15:08:41 zigo stephenfin: I'd very much prefer having a policy.json that reflects what's currently enforced in Nova.
15:08:46 gmann i might be wrong but re-generating the policy file is something you are intentionally changing so adopt all change instead of half

Earlier   Later