Tuesday, 2019-02-19

*** tetsuro has joined #openstack-placement00:34
*** takashin has joined #openstack-placement02:26
*** bhagyashris has joined #openstack-placement02:51
*** dklyle has joined #openstack-placement03:23
*** belmoreira has quit IRC04:10
*** zzzeek has quit IRC04:49
*** zzzeek has joined #openstack-placement04:52
*** irclogbot_2 has quit IRC04:55
*** e0ne has joined #openstack-placement06:25
*** e0ne has quit IRC06:26
*** belmoreira has joined #openstack-placement07:16
*** e0ne has joined #openstack-placement07:23
*** takashin has left #openstack-placement08:01
*** e0ne has quit IRC08:13
*** helenafm has joined #openstack-placement08:21
*** tssurya has joined #openstack-placement08:31
*** evrardjp_ is now known as evrardjp08:31
*** ttsiouts has joined #openstack-placement08:57
*** ttsiouts has quit IRC09:08
*** ttsiouts has joined #openstack-placement09:08
*** ttsiouts has quit IRC09:13
*** ttsiouts has joined #openstack-placement09:25
*** ttsiouts has quit IRC09:38
*** ttsiouts has joined #openstack-placement09:38
*** tetsuro has quit IRC09:41
*** e0ne has joined #openstack-placement09:53
*** bhagyashris has quit IRC09:55
*** ttsiouts has quit IRC09:56
*** ttsiouts has joined #openstack-placement09:58
*** cdent has joined #openstack-placement10:06
*** ttsiouts has quit IRC10:40
*** ttsiouts has joined #openstack-placement10:41
*** ttsiouts_ has joined #openstack-placement10:42
*** ttsiouts has quit IRC10:45
*** ttsiouts_ has quit IRC11:57
openstackgerritChris Dent proposed openstack/placement master: Use one ConfigOpts in placement-status  https://review.openstack.org/63359512:52
*** ttsiouts has joined #openstack-placement13:11
*** ttsiouts has quit IRC13:18
*** ttsiouts has joined #openstack-placement13:19
*** rubasov has quit IRC13:33
*** ttsiouts has quit IRC14:04
*** ttsiouts has joined #openstack-placement14:04
*** ttsiouts has quit IRC14:09
*** ttsiouts has joined #openstack-placement14:09
*** mriedem has joined #openstack-placement14:25
*** mriedem has left #openstack-placement14:40
*** mriedem has joined #openstack-placement14:40
*** rubasov has joined #openstack-placement15:09
mriedemcan anyone remind me why when i tox -r -e functional-py35 in the placement repo it doesn't pull in os-resource-classes?15:18
mriedemlast time i hit this i had to source the venv and manually install that library to get tests to work15:18
mriedemhttps://bugs.launchpad.net/nova/+bug/181662515:21
openstackLaunchpad bug 1816625 in OpenStack Compute (nova) "tox -r fails to install os-resource-classes in extracted placement repo when running tests" [Undecided,New]15:21
cdentmriedem: hmmm. that's odd. I've not had that issue.15:30
openstackgerritMatt Riedemann proposed openstack/placement master: Downgrade os-traits/os-resource-classes sync log level to DEBUG  https://review.openstack.org/63789215:32
mriedemcdent: what version of pip do you have?15:32
cdentin the venv I end up with 19.x. I'm using tox 3.7.015:34
mriedemyeah pip 19.0.2 in the venv15:35
mriedemtox 3.1.1 but i hit this a few weeks ago as well on older tox15:35
mriedemit's almost like it thinks those libraries are already installed and doesn't try to install them again15:35
efriedfwiw, I just did functional-py36 in a clean repo and it pulled okay.15:35
cdentmriedem: anything useful in .tox/py35/log ?15:36
mriedemlog is empty15:37
mriedemi still have a 'shared' direction under .tox/ - should that be gone?15:38
cdentyes, but I would have thought that would clean itself up15:38
cdentmaybe just wipe out .tox and see if it is still there from scratch?15:38
mriedemdoing that now15:39
cdentand then we can get stephenfin to explain everything15:39
stephenfinI didn't do it15:39
mriedemhit it again15:40
mriedemthe import error15:40
cdentwacky15:40
mriedemshared is gone, and tox log is still empty15:40
cdentany chance you are overriding the upper constraints env var, or have out of date requiements?15:41
mriedemos-resource-classes is in requirements.txt15:41
cdentbut not listed in installed... wacky15:41
cdenttry upgrading tox?15:42
mriedemi doubt that will do anything b/c i hit this a few weeks ago on older tox and upgraded to 3.1.1 last week b/c of the minimum version bump on tox for nova15:45
mriedemjust going to blast the repo and re-clone15:46
cdentmriedem: good luck15:47
mriedemwell f me sideways15:48
cdentif that doesn't work, I'd try upgrading tox because efried and I have both made changes in the not too distant past that think in terms of modern tox15:48
cdentwuh?15:48
mriedemnow it's fine15:48
cdentafter the wipe?15:48
mriedemyeah15:49
cdentsigh15:49
mriedemoh well15:49
cdentthis just confirms my stance of hating everything15:49
efriedcdent: We're still importing placement fixtures from nova?15:53
cdentit imports the nova fixture which is a subclass of the placement provided one15:54
cdentbecause the nova one wanted additional chrome15:54
cdent(things like monkey patching the report client)15:54
efriedyeah. I'm going to get rid of that now.15:54
cdentthe monkey patching?15:54
efried(he says, determinedly)15:54
efriedyeah. I remember thinking it wouldn't be all that hard, but if I didn't do it at the time, maybe it was because it was gonna be harder than I thought?15:55
efrieddo you remember anything that's going to help me do less brick-wall-banging here?15:55
cdentAll I recall was that we didn't do it at the time because it wasn't an immediate requirement15:57
efriedahem, placement doesn't use its own PlacementFixture?15:57
efried...it uses PlacementDirect15:58
efriedThe gears are starting to turn15:58
efriedI think I was advocating getting rid of PlacementFixture in favor of PlacementDirect itself.15:58
efriedcdent: that still keeps the dep from nova to placement, but it would at least consolidate (and let us get rid of those horrendous monkey patches)15:59
*** e0ne has quit IRC16:00
efried...except I can't even see where it uses PlacementDirect.16:00
cdentyou're confusing me16:01
cdentPlacementFixture is for external-to-placement tests, mostly16:01
cdentPlacementDirect is for an imaginary use case that never came to pass16:01
efriedcdent: so what does placement itself use for its own internal functional tests (that aren't under db/)?16:02
*** e0ne has joined #openstack-placement16:03
efriedlike, how tf do the gabbits work?16:03
cdentthe same way they always have: you pass a wsgi application to gabbi and it "takes care of it"16:03
cdent(looks like PlacementDirect is used in functional/test_verify_policy.py (as a convenient way to establish the wsgi intercept)16:04
cdentwhat gabbi does under the covers is establish the wsgi-intercept, but it does it per test suite, not per test16:05
cdentare the dots connecting yet efried or something else?16:06
efriedcdent: Still gaps in brain.16:07
efriedcdent: I remember thinking quite strongly at some point that we didn't need the fake_<HTTP op> methods in the nova fixture.16:07
cdentright because an adapter could be used instead16:08
efried...but it is.16:08
efriedI mean, the fake methods are passing through to the adapter.16:08
cdentthe idea was to wrap the adapter in an adapter, as I recall16:09
cdentbut I don't remember the details that much16:09
cdentI suspect there's code that can be borrowed from PlacementDirect16:11
*** jaypipes has quit IRC16:36
*** jaypipes has joined #openstack-placement16:36
*** ttsiouts has quit IRC16:56
*** ttsiouts has joined #openstack-placement16:56
*** tssurya has quit IRC17:01
*** ttsiouts has quit IRC17:01
*** helenafm has quit IRC17:01
*** e0ne has quit IRC17:35
*** rubasov has quit IRC17:53
*** tssurya has joined #openstack-placement18:28
*** e0ne has joined #openstack-placement18:41
*** e0ne has quit IRC18:42
efriedcdent: Help!18:48
cdenteh?18:48
efriedcdent: https://review.openstack.org/63795918:48
efriedcdent: I am having trouble with nova.tests.functional.regressions.test_bug_167975018:49
* cdent reads18:49
cdentyeah that test has been difficult two times in the past:18:51
cdentwhen I changed it to use the PlacementFixture18:51
efriedI figured18:51
cdentand when mriedem (I think) wrote it in the first place18:51
cdentbecause of that bit about "conditionally"18:51
efriedyeah18:51
cdentWhat's going wrong for you?18:51
efriedwell, when I leave it as is, all the placement calls from the compute service seem to work, but then the GET /a_c call (which comes from the scheduler service, yah?) goes 401.18:52
* cdent tries it18:53
*** e0ne has joined #openstack-placement18:54
efriedwhich I initially thought is probably because the placement fixture isn't in play while the scheduler service is being started.18:54
efriedcdent: Lemme summarize what I changed about the fixture, cause that may help.18:54
efriedBefore, it was mocking out the report client's get/put/post/delete methods, so the mock interception was happening late.18:55
efriedNow I'm mocking out the report client's adapter arg at init time, so the fixture needs to be in place by the time the report client is created.18:55
efriedif it's not, it's gonna try to use its own adapter.18:56
efriedcdent: Sorry, before you get started on that test case, you have to s/\.body/.json()/ in three places.18:56
efriedbecause I "fixed" the API18:57
cdentyeah, figured that out from reading the diff18:57
efriedcdent: When I wrap the scheduler service start in the fixture cm, I get this:19:00
efriedSAWarning: Evaluating non-mapped column expression 'id' onto ORM instances; this is a deprecated use case.  Please make use of the actual mapped columns in ORM-evaluated UPDATE / DELETE expressions.19:00
efried(and of course the purpose of the "intermittent fixturing" test case is nullified)19:01
cdentefried: sorry I'm still getting the test to run: im_func is a python2ism. Use __func__19:01
efriedah, mahbad19:01
cdenthmm, but that seems to have made no difference, but is still an issue:19:02
efriedat least I got __defaults__ right19:02
* efried creates py3 env...19:03
cdentI can't get past it trying to create the ReportClient mock19:11
efriedhm, yeah, in ipython I can't get __init__'s __func__ out.19:13
efriedin fact __init__ doesn't seem to have any properties.19:14
efriedcdent: do you have a py2 env?19:15
cdentnot yet, but heading that way19:15
cdentefried: I'm being called to dinner, but will come back afters and continue digging. That should give you enough time to figure it all out.19:19
efriedcdent: Thanks.19:19
*** e0ne has quit IRC19:39
*** e0ne has joined #openstack-placement19:39
cdentefried: I'm back19:44
*** e0ne has quit IRC19:45
efriedcdent: I decided I needed to give up for now. Though I haven't figured out how I'm going to put it down.19:50
efriedcdent: I can restore the old JIT-mock behavior by continuing to mock the get/put/post/delete methods through the fake adapter in a slightly different way, but that's not a lot of gain.19:51
cdentmaybe nothing? what's there works, yeah?19:52
cdent(there == in master)19:52
cdentyou can pick it up wholesale at any point you like in the future19:52
efriedWell, it works except that it's making the behavior enough different than the real behavior to be problematic (viz. the issue that prompted Adam to write https://review.openstack.org/#/c/637657/) and that reduces confidence that the real code is doing the right thing just because the tests work.19:53
efriedand also, it shouldn't be freakin necessary.19:54
efriedso it bothers me on purely moral grounds if nothing else.19:54
cdentI think pointing to adam's thing is overstating the case. We didn't mock a method. Then we did.19:54
cdentI agree that it shouldn't be necessary19:54
cdentdon't look at me, by the way: I did it with normal wsgi-intercept back when it was just test_report_client19:55
efriedOh, I'm not blaming you, or anyone.19:55
efriedObviously it's a finicky, tricky thing, and whoever hacked it up this way (bauzas based on the comments) did a fine thing for the sake of expediency.19:56
cdentI think we should be happy we have thing that does a reasonable job and make cyborg go instead19:57
efriedgood call19:57
cdentI'm similarly stuck on https://review.openstack.org/#/c/636807/320:09
*** openstackgerrit has quit IRC20:09
cdentthinks about it on a piece of paper20:24
*** cdent has quit IRC20:24
*** efried has quit IRC20:29
*** efried has joined #openstack-placement20:29
*** tssurya has quit IRC20:32
*** ttsiouts has joined #openstack-placement20:36
*** e0ne has joined #openstack-placement20:37
*** ttsiouts has quit IRC21:00
*** ttsiouts has joined #openstack-placement21:01
*** ttsiouts has quit IRC21:05
*** e0ne has quit IRC21:28
*** openstackgerrit has joined #openstack-placement22:04
openstackgerritMerged openstack/placement master: Downgrade os-traits/os-resource-classes sync log level to DEBUG  https://review.openstack.org/63789222:04
*** ttsiouts has joined #openstack-placement22:07
*** ttsiouts has quit IRC22:12
*** mriedem has quit IRC23:41

Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!