[15:13]  * powersj will fix integration test failures shortly
[15:29] <Raboo> smoser, dpb1 just wanted to update you on the debugging. I haven't had time to turn on debug for cloud-init on trusty yet. But I have learned a bit since, it only gets stuck when I have a root ext4 and a data xfs partition. cloud-init works when I got one big root partition for instance. And i've been able to replicate this on a virtual machine. So it's going to be easier to debug.
[15:47] <smoser> hum.
[15:48] <smoser> i suspect that it is not really cloud-init that is hanging, but a dependency (local-filesystems) or something that is not being met
[15:55] <rharper> Raboo: your image has a ext4 rootfs and an xfs partition ?  what's the partition layout?
[15:56] <rharper> I just saw this the other day w.r.t xfs filesystem being resized, https://www.spinics.net/lists/linux-xfs/msg13555.html
[16:06] <Raboo> rharper well what I do is i partition the disk, and dd the cloud image into the ext4 partition, grow the image into the partition, mount it, fix networking, fstab, grub and some stuff. Then reboot and could-init bootstraps the node with chef and stuff
[16:09] <Raboo> rharper something like this https://hastebin.com/otowajicox.bash
[16:09] <rharper> fancy! using hastebin
[16:10] <Raboo> yeah smoser sent me a hastebin link the other day, so i figured i'ed try it
[16:10] <rharper> nice
[16:10] <Raboo> it's yours?
[16:10] <rharper> no
[16:11] <rharper> smoser had been using it since one can get raw output without "logging" in , like we have to the ubuntu one;
[16:11] <rharper> now I just need pastebinit to have hastebin
[16:12] <Raboo> it appears to have console tools
[16:13] <rharper> Raboo: so, putting ext4 on the first partition should mean that resizefs on root will get ignored; as it isn;t the last one;   but maybe there is something going on that we missed w.r.t growpart/resizefs
[16:14] <rharper> Raboo: did you have a cloud-init.log from the failed boot/hang ?
[16:14] <Raboo> rharper i will change this config to DEBUG on line 33 https://hastebin.com/odahevojix
[16:15] <Raboo> to see if I get more info, just not right now
[16:15] <rharper> sure
[16:16] <Raboo> but exact same partition layout works in xenial
[16:16] <Raboo> and now I know that it got to do with the parition layout.
[16:20] <rharper> where was the failing case if not xenial ?
[16:22] <Raboo> just after ssh keys generation it gets stuck
[16:23] <rharper> but what distro release?
[16:26] <Raboo> ubuntu trusty
[16:26] <rharper> ok
[16:52] <smoser> rharper, blackboxsw https://bugs.launchpad.net/ubuntu/+source/cloud-init/+bug/1731868
[16:52] <smoser> that one..
[16:53] <smoser> with comment from sabdfl
[16:53] <blackboxsw> yep let's get a fix for that
[16:53] <blackboxsw> eek
[16:54] <smoser> we have no way there to determine "this is vmware" really. :-(
[16:54] <rharper> now, where to get a Vsphere setup ?
[16:54]  * blackboxsw thinks I might have one.
[16:55] <blackboxsw> will dig
[16:55] <rharper> well, vmware does similar things as kvm does to identify itself
[16:55] <smoser> you can determine vmware, yes
[16:55] <smoser> you can't determine easily that there is an ovf without a mount
[16:55] <rharper> right
[16:55] <smoser> from dsidentify
[16:55] <smoser>  http://paste.ubuntu.com/26126298/
[16:57] <rharper> man, pylint on tests has lots of stuff; gonna be a big one =)
[16:59] <rharper> https://github.com/PyCQA/pylint/issues/1498
[17:16] <powersj> smoser: do you want me to enable pylint for all of tests or start with integration tests?
[17:27] <smoser> powersj: all would be good.
[17:27] <smoser> did you see what was in  my tree ?
[17:27] <smoser> here
[17:28] <smoser> http://paste.ubuntu.com/26126566/
[17:28] <powersj> ah no
[17:41] <powersj> smoser: do we need tools/hacking.py?
[17:42] <powersj> still using pep8 :\
[17:42] <rharper> powersj: I'm working on smoser's pylint diff right now
[17:43] <powersj> rharper: oh are you going through fixing things?
[17:43] <rharper> yes
[17:43] <powersj> then I shall stop
[17:43] <powersj> thx :D
[17:43] <rharper> np
[17:43] <rharper> smoser helpfully handed the patch to you as well =)
[18:15] <dojordan> @blackboxsw, sorry to bother but any update on my PR?
[18:16] <blackboxsw> dojordan: I'll push comments here in a couple mins (was camping on them until I tested). Admitedly, I ratholed on another bug that came in.
[18:16] <blackboxsw> "rat-holed" even a word? anyway, will wrap up your review now
[18:17] <dojordan> haha not sure if its a word but sounds good
[18:36] <blackboxsw> dojordan: couple comments added
[18:36] <blackboxsw> back in a few
[18:36] <blackboxsw> to wrap up the review
[18:42] <dojordan> thanks, ill get started on those
[19:11] <rharper> oi! pylint 1.7.1 doesn't like our add_patch, finally worked out how to ignore member checks with m_* which is how we designate  mock patch members
[19:16] <smoser> ?
[19:16] <smoser> doesnt like add_patch ?
[19:16] <smoser> hm..
[19:18] <rharper> yeah, says m_foo is non-member
[19:18] <rharper> because add_patch does a set_attr
[19:19] <rharper> smoser: so pylint can't know that the string inside add_patch() is going to get set that way (not statically I guess)
[19:23] <smoser> rharper: https://github.com/PyCQA/pylint/issues/697
[19:24] <rharper> related, but not the same
[19:24] <rharper> https://github.com/PyCQA/pylint/issues/1498
[19:24] <rharper> we actually get the E1101
[19:25] <rharper> tests/unittests/test_datasource/test_ovf.py:191: [E1101(no-member), TestTransportIso9660.test_mount_cb_called_require_iso_false] Instance of 'TestTransportIso9660' has no 'm_mount_cb' member
[19:25] <rharper> but it's reasonable to mark m_.* and mock_.* as generated-members; that's what our  CiTestCase.add_patch() does
[19:28] <smoser> hm..
[19:28] <smoser> rharper: well, the end result in thelink i provided is
[19:28] <smoser> Closing this. I think it is not worth investing effort into something relying heavily on patching things and magic, as mock is doing it. if anyone wants to spend some effort fixing this, you might have a look at how astroid brain modules are implemented (https://github.com/PyCQA/astroid/tree/master/astroid/brain)
[19:29] <rharper> I saw those modules too
[19:29] <rharper> I mean, seems reasonable to do what I did, the lint is catching stuff (real issues)
[19:29] <smoser> basically, it is "dont run pylint on code with mock"
[19:30] <rharper> it's generally clean with mock
[19:30] <smoser> ?
[19:30] <rharper> it's the dynamic set_attr for our patch that is gitting hit
[19:30] <smoser> i'm confused.
[19:31] <rharper> the bulk of the errors, came out from our use of self.add_patch() in CiTestCase subclsses which specify a mock.patch dynamically in the setUp() method
[19:32] <rharper> adding m_.*, mock_.* to .pylintrc to tell pylint to recognize any m_* members as 'generated members of a class' means it won't error E1101 on all of those mock'ed methods
[19:32] <rharper> http://paste.ubuntu.com/26127428/
[19:34] <smoser> http://paste.ubuntu.com/26127442/
[19:35] <smoser> that is my run.
[19:36] <rharper> write, grep no-member;
[19:36] <rharper> those m_* go away if you update your .pylintrc
[19:39] <rharper> urg, python2.7 ConfigParser has readfp, that's deprecated in py3; which uses read_file (but that's not in py27)
[19:41] <smoser> ugh
[19:41] <smoser> blackboxsw: fyi, don't use git merge --squash.
[19:41] <smoser> unless you know of an arg that says to keep the author
[19:41] <blackboxsw> whoa really?
[19:42]  * blackboxsw checks logs of what I just landed
[19:42] <smoser> as i stole credit for powers' commit 47016791
[19:42] <blackboxsw> ahh smoser yeah I generally do a --squash then a commit --amend --author afterward before pushing (though I forgot 1 time)
[19:43] <blackboxsw> d90318b21d0379e24337bcb92a0a90ebfa359c35 yeah here I stole robjo's commit ownership by accident :/
[19:43] <blackboxsw> forgot the post-commit ammend that I usually do
[19:43] <smoser> need a lander
[19:43] <smoser> stupid humans
[19:44] <smoser> incapable of simple tasks
[19:44] <blackboxsw> yes. push button landing
[19:44] <blackboxsw> or tarmac for git really.
[19:50] <rharper> another pylint annoyance;  referencing class properties (which may trigger code) but with no assignment makes it unhappy, but if we d foo = class.prop; then flake says, you didn't do anything with foo
[19:54] <blackboxsw> hrm can't get vsphere login working at the moment
[19:56] <smoser> weee!
[20:03] <smoser> blackboxsw, rharper hangout ? /wanted to catch up where we are.
[20:04] <rharper> y
[20:04] <blackboxsw> sure
[20:25] <rharper> smoser: here's where I'm at on the linting branch, http://paste.ubuntu.com/26127753/
[20:25] <rharper> that passes just about everything; save some things in tools/
[20:25] <rharper> needs a flake fiix up for one two locations for #pylint disable I did
[21:33] <smoser> http://paste.ubuntu.com/26128142/
[21:33] <smoser> blackboxsw: ^
[21:33] <smoser> and dpb1
[21:33] <smoser> i have to walk out th edoor though. i'll be back in later and can polke it at it some more.
[21:36] <blackboxsw> smoser: will give it some runs on vkm
[22:48] <rharper> smoser: https://code.launchpad.net/~raharper/cloud-init/+git/cloud-init/+merge/334868
[22:48] <rharper> that's the pylint merge, all clear here
[22:50] <smoser> i'll try this in a bit. http://paste.ubuntu.com/26128501/
[22:50] <smoser> rharper: and will read your mp in a bit
[22:51] <smoser> dinner and such now
[22:51] <smoser> thanks rrh
[22:54] <rharper> np
[23:31] <blackboxsw> smoser: your paste approach worked great on my local OVF kvm setup
[23:46] <blackboxsw> I'm crazy. nevermind. tweaking the script a bit
[23:47] <blackboxsw> still got disabled from ds-identify. checking things out now
[23:52] <blackboxsw> ahh minor tweak needed
[23:56] <blackboxsw> http://paste.ubuntu.com/26128864/
[23:56] <blackboxsw> needed to define DI_BLKID_OUTPUT