Earlier  
Posted Nick Remark
#openstack-nova - 2018-02-20
20:25:49 mriedem mnaser: yeah need to use the CinderFixture in pike
20:25:58 mriedem mnaser: i realized that would be the case
20:26:06 openstackgerrit Merged openstack/nova stable/pike: Rollback instance.image_ref on failed rebuild https://review.openstack.org/539003
20:26:25 mriedem dansmith: you've gone full bore on converting all of the post-placement filters to pre-placement filters haven't you :)
20:26:28 mnaser mriedem: ok ill change it up to use cinderfixture and modify the code (as it would depend on if volume_id in self.reserved_volumes)
20:26:38 mriedem mnaser: thanks
20:27:12 dansmith mriedem: no, I just wanted another example
20:27:22 mriedem guh why doesn't ctrl+c work inside a cirros shell
20:42:36 mriedem woot got this multiattach demo working
20:43:03 mriedem mounting and umounting like a mothertrucker
20:45:21 smcginnis mriedem: Are you recording a demo?
20:48:37 mriedem that's the plan
20:48:43 mriedem finally got the run through working
20:48:56 smcginnis mriedem: Nice!
20:49:03 mriedem https://docs.google.com/presentation/d/1bp7IwEubvXqQf7mUE3nlUNW_T04L4c1-AMXELZ45jgg/edit?usp=sharing
20:50:28 mriedem also uses device tags
20:50:29 mriedem artom: ^
20:50:56 mriedem and shows how to boot with multiple volumes using device tags, then mount the config drive in the guest to read the disk device tags from metadata
20:51:45 mriedem throughout this whole thing i've found a new appreciation for openstackclient and the unified CLI, and ability to print out specific columns and parse the results for storing into local shell variables
20:51:51 mriedem which is really really nice
20:52:17 mriedem so much so that i think we should seriously think about deprecating the nova CLI
20:52:41 mriedem melwitt: ^ might be a topic, albeit old, for the ptg
20:52:56 mriedem except for things that we can't do in osc (yet)
20:53:13 artom mriedem, noice
20:53:36 mriedem one thing osc doesn't do is the super complicated --block-device params that nova boot does
20:53:47 mriedem for specifying things like bootindex and tags
20:54:03 melwitt mriedem: yeah. that's a tough one because we'll need to do an audit on what all osc doesn't do. I learned the hard way the other day that you can't boot from volume in osc with one command anymore
20:54:08 artom Does it do microversions yet?
20:54:14 melwitt no, it does not
20:54:19 mriedem well, it does
20:54:28 mriedem but not by default, you have to opt in
20:54:29 melwitt well, it passes them through if specified manually
20:54:31 mriedem right
20:54:34 mriedem so i have been doing;
20:54:35 melwitt but it doesn't do any discovery
20:54:42 mriedem export OS_COMPUTE_API_VERSION=2.60
20:55:14 mriedem melwitt: you can bfv with osc by doing: openstack server create --flavor 1 --volume <volume name or id> myserver
20:55:30 melwitt that's if the volume has already been created by you earlier
20:55:36 melwitt you have to do two steps
20:55:45 melwitt you can't bfv from image with one command
20:55:47 mriedem there is a --block-device option to server create
20:55:48 melwitt anymore
20:55:54 melwitt that doesn't work anymore
20:56:03 mriedem but it's a bit limited, i think it only allows source volume or snapshot?
20:56:14 mriedem so yeah, the osc --block-device param is definitely less robust than the nova boot one
20:56:19 melwitt yeah, maybe. I was trying to do from image
20:56:25 mriedem but to be fair,
20:56:32 mriedem every time i need to use nova boot --block-device,
20:56:35 mriedem i have to parse the help first
20:58:27 melwitt yeah. we'd just have to turn our attention to making sure commands like those can be one step and keep them working
20:59:03 melwitt long ago I wondered if we could make the novaclient stuff be an osc plugin, that way we can take care of the test coverage/regression coverage for our commands
21:00:08 melwitt in our tree
21:00:41 mriedem there are a lot of easy low hanging CLIs we could deprecate though b/c they have coverage in osc,
21:00:48 mriedem like create snapshot image, add/remove volume/interface, etc
21:00:57 mriedem the more exotic server create stuff would yeah be a wip
21:01:26 mriedem i was also watching an older k8s talk where everything was a single command line and realized they kind of figured that out from the beginning,
21:01:42 mriedem so people new to k8s don't have to figure out you need 6 different client libs installed to do something
21:04:18 mnaser mriedem: the bug that keeps on giving. when changing to the old fixture, https://github.com/openstack/nova/blob/stable/pike/nova/compute/api.py#L2008 checks for an attachment_id, but it doesn't have one from the fixtures.. sooo "Ignoring volume cleanup failure due to Object action obj_load_attr failed because: attribute attachment_id not lazy-loadable"
21:05:09 mnaser (therefore the functional test fails and the volume is still 'reserved' because it doesn't go into the 'else' codepath and detach)
21:06:13 mriedem mnaser: hmm, it wouldn't come from the fixture,
21:06:17 mriedem it should just be default to None in the DB
21:06:37 mriedem i mean, we create the bdm in cell0
21:06:51 mriedem so when it's read back out, that should be null
21:07:00 mnaser maybe not in this case
21:07:07 mnaser because you pass it the bdms not from db
21:07:47 mriedem oh i know what it is,
21:07:52 mriedem the bdms in the build request
21:08:04 mriedem those don't have the attachment_id
21:08:11 mnaser yeah
21:08:21 mnaser `build_req.block_device_mappings` is whats passed
21:08:25 mriedem yeah, crap
21:08:33 mnaser that change hasnt merged yet
21:08:37 mnaser if you want to abandon and restore
21:08:47 mnaser https://review.openstack.org/#/c/545132/
21:09:05 mriedem well, it's not a problem in master or queens...
21:09:37 mnaser what's happening differently here if you dont mind me asking?
21:11:17 mriedem mnaser: we don't have https://github.com/openstack/nova/blob/stable/queens/nova/compute/api.py#L3765 in pike
21:11:30 mnaser ahhh i see
21:11:35 mnaser the attachments are created in db there
21:11:45 mriedem well, they bdm.attachment_id field is set
21:11:55 mnaser because the bdm is saved into db, i see
21:11:57 mriedem and the bdm is then later stored in the build request
21:12:09 mriedem so this is also a problem in queens if you have pike computes
21:12:12 mriedem it's really a different bug
21:12:33 mriedem so in the delete code, we need logic like, "if 'attachment_id' in bdm and bdm.attachment_id:"
21:12:39 mriedem mnaser: feel like opening a new bug?
21:13:39 mnaser mriedem: sure, ill do that
21:14:11 mnaser i'll reorder the backports so that fix comes right before the one that enables the functional test once it goes in master so it can pass
21:14:47 mriedem yeah i should have also added the recreate for the older cinder fixture as well, but was lazy
21:14:57 mriedem i guess can do that as part of the new bug fix
21:15:15 mnaser i already have it so ill reuse it
21:15:21 mriedem cool
21:20:05 mnaser https://bugs.launchpad.net/nova/+bug/1750666 probably not the best description but feel free to edit it, ill push up something
21:20:06 openstack Launchpad bug 1750666 in OpenStack Compute (nova) "Deleting an instance before scheduling with BFV fails to detach volume" [Undecided,New]
21:20:44 openstackgerrit Mohammed Naser proposed openstack/nova stable/pike: Add functional recreate test of deleting a BFV server pre-scheduling https://review.openstack.org/546222
21:21:12 mnaser gah
21:26:07 openstackgerrit Mohammed Naser proposed openstack/nova stable/pike: Add functional recreate test of deleting a BFV server pre-scheduling https://review.openstack.org/546222
21:27:08 cfriesen mriedem: does osc support automatic block live migration yet? last I checked you had to manually specify block migration
21:29:38 mnaser if i do git-review -d <change>, commit on top and git review .. will that prevent messing up the stack (or should i use -R ?)
21:30:19 mnaser the commit IDs match so i think i should be ok?

Earlier   Later