[03:21] jtv: any ideas what's going on here in maas-test? http://paste.ubuntu.com/6712744/ [03:27] bigjools: no, but can you create a VM with uvtool on that same machine? [03:27] jtv: gimme a command line for that please [03:28] May be best to start with the command line that's in the traceback, and whittle it down to find the source of the problem: [03:28] uvtool: command not found [03:28] The command is uvt-kvm. Hang on, I'm about to paste. [03:28] Try: [03:28] sudo uvt-kvm create --ssh-public-key-file=/home/ubuntu/.config/maas-test/vm_ssh_id_rsa.pub --unsafe-caching --memory 2047 --disk 20 c3dd8de0-7810-11e3-944d-e4115b13819f arch=amd64 release=saucy [03:29] The "sudo" shouldn't be needed, so that's one of the parts you can whittle off to find the minimal reproduction of the problem. [03:29] I find that command line works for me, after a fresh sync of images, but there may still be a problem in the template. [03:30] jtv: it seems to be working ... [03:30] yay? [03:30] Same here. Let me try maas-test here. [03:30] You're running this on saucy i386? [03:31] amd64 [03:31] By the way, clean up the VM afterwards using "uvt-kvm destroy " [03:31] The name in this case is c3dd8de0-7810-11e3-944d-e4115b13819f [03:31] Feel free to use more convenient names... [03:31] it fails quickly in maas-test [03:31] libvirt: QEMU Driver error : Domain not found: no domain with matching name 'c3dd8de0-7810-11e3-944d-e4115b13819f' [03:32] so it didn't get near to making it [03:32] Try a "uvt-kvm list" to see which VMs have been defined. [03:32] empty [03:33] OK, nothing to clean up then. But then how and why did that command I pasted earlier seem to work!? [03:33] :/ [03:34] libvirt.libvirtError: unknown OS type hvm [03:34] is the error [03:34] Yes, saw that. [03:34] Hmm... the template mentions that. [03:35] My guess is that nomenclature has changed, or this "hvm" OS type has been replaced, and we need to update the code. [03:36] Looks like a question for rbasak. [03:36] The one difference between the command line I pasted you and the one maas-test actually runs, is that maas-test passes in a "template" of settings. [03:37] The template is in XML. The part that seems to be causing trouble now is: [03:37] [03:37] [03:37] hvm [03:37] (Can you really officially use single quotes for XML attribute values?) [03:39] I am running on saucy BTW [03:39] oh said that [03:40] Graham made a change to that one line recently, so he may know. [03:40] the "uvt-kvm create" is still running [03:40] Ah [03:40] but nothing for "list" coming up [03:40] That's taking pretty long. [03:40] this is my command, not maas-test [03:40] You can run "uvt-kvm wait " to block until it's created. [03:40] it fails instantly on maas-test [03:42] Yes, because we pass an unknown "OS type" (whatever that means in this context) through that template. [03:42] I'm zeroing in on the branch that made that change. [03:45] jtv: ok thanks. I am deliberately staying out of code for this so I can experience it as a normal user and make informed feedback :) [03:49] bigjools: not much luck identifying a change there, but other things I'm finding on the intertubes suggest that it may be libvirt's horrible way of saying "this hardware does not support hvm." [03:49] Where according to the GTF, HVM means Hybrid Virtual Machine. [03:50] jtv: it';s running on my microserver, I can run other VMs on it fine [03:50] all hail the GPL TLA FAQ [03:50] let me look at cpuinfo [03:50] The problem may be that we specify a particular *type* of VM which requires absent hardware support. [03:51] ah there's no hvm flag in /proc/cpuinfo [03:51] fuck [03:51] this is a bad error then, it needs to fail better [03:51] I don't have it here either. [03:51] and your maas-test fails? [03:51] Do we know that the CPU capability would actually read "hvm"? [03:52] I'll try it. [03:52] good question [03:52] "hvm" may be too obvious and hard to trademark, so it's probably something like "spx" [03:52] or "ghvl" [03:52] vmx I think [03:53] Whaaaa. Shouldn't have grepped for that... so much output! [03:53] And thanks to whoever committed lint so that "make" now fails... [03:54] ah it's svm on AMD [03:54] vmx on intel [03:54] so I am ok, I have svm [03:55] Damn, can't run on my dev machine. Will try laptop. [03:56] Okay, that's syncing images. I'll leave it to do that while I go fix my mouse. [03:57] I'll check my bios [04:00] bios is ok [04:03] jtv: found the problem [04:03] I rebooted and it worked after [04:04] I suspect there's some kernel stuff missing after installing kvm packages [04:04] we need to work out what it is [04:05] jtv: also I was pending a reboot after installing a new kernel. That, I expect, buggered it. [07:06] bigjools: think we should have a maas-test section on maas.ubuntu.com where we can provide advice about problems like the one you just ran into? [07:06] jtv: mmmm maybe [07:06] I have more problems [07:07] my node is not enlisting [07:07] no idea why [07:07] output is useless :/ [07:08] No errors logged? [07:08] sending email [07:09] bigjools: I guess you saw this post about the hvm problem... http://blog.loftninjas.org/2009/05/04/libvirt-unknown-os-type-hvm/ [07:12] I did [07:12] email sent [07:17] Did we change how we generate our manpage? Suddenly there's loads of errors from the man page. [07:18] gmb: can you look quickly at the email I just sent as well please? It looks pretty bad. [07:18] bigjools: Yowza. [07:18] Yeah, that's extremely very not good. [07:19] bigjools: If there's a log at all, it _should_ be under ~/.maas-test/logs. [07:20] Anyway, I'll reply to the email presently. [07:20] gmb: not logs dir at all [07:20] I'm fixing up some of the superficial problems. [07:20] no* [07:20] Mainly to get "make" back to work. [07:20] Um, that's very weird indeed. [07:20] I wish I'd tested this earlier :/ [07:20] but *stuff* [07:21] gmb: looks like you created some lint in the code, and accidentally pasted an extraneous heading into the man page's source. [07:21] jtv: Which revision? [07:21] I thought I'd fixed that. [07:21] (You picked it up in a review, IIRC) [07:22] gmb: r100 [07:22] Damn. [07:23] * bigjools filing bugs [07:38] I have enbuggerated [07:38] And I'm putting up a first branch. [07:40] happy to engage review mode [07:41] bigjools: engage! https://code.launchpad.net/~jtv/maas-test/housekeeping/+merge/200776 [07:43] jtv: Interesting that make test didn't work for you in trunk (and almost definitely my fault has I had to manually land some things the other day). I don't see that behaviour, however. [07:44] gmb: could it be that you did a "make test" at some point shortly after a successful sudo authentication? [07:45] Because it seems to boil down to it writing into /usr/local/lib/python2.7/dist-packages/... [07:45] jtv: Aaaaah. Yes, testing it in a new byobu window and I hit it. [07:45] That's... suboptimal. [07:45] I'm filing. [07:45] jtv: approved (via email, give it a minute) [07:45] Thanks. [07:46] jtv: Oh, actually, no, thats something else. [07:48] gmb: bug filed — https://bugs.launchpad.net/maas-test/+bug/1267004 [07:48] Ubuntu bug 1267004 in maas-test "Test suite writes into /usr/local/lib/python2.7/dist-packages/" [Critical,Triaged] [07:48] !!! [07:48] I'm not even clear how the sweet fuck that happened. [07:48] And I can't reproduce it. [07:49] Hmm, unless... [07:49] Unless you already have that directory. [07:50] Right. [07:50] Which would have happened if you ever ran this as root. [07:50] Which I may have done(?!) [07:50] And with all the sudo'ing we do, I'm suspicious even of running "make check" while a previous sudo authentication is still valid. [07:51] See if you have a /usr/local/lib/python2.7/dist-packages/maas-test. [07:51] I don't. [07:52] jtv: I don't. [07:52] Interesting. [07:53] jtv: But this is not with a completely clean trunk (i.e. I've run make in this directory before and its worked, presumably doing pip and virtualenv-y stuff) [07:53] Did you do a "make clean," or run this in a fresh branch? [07:53] I ran a make clean. [07:53] Or did I? [07:53] hang on. [07:53] For me, it worked in trunk *until* I did the "make clean." [07:53] Leftovers from an older build. [07:53] Hmm. [07:53] * gmb is writing on one machine, testing on another [07:55] jtv: Nope, I don't see that behaviour on my dev machine. [07:55] make clean [07:55] make test [07:55] * bigjools doing another test run with the node console in view [07:56] Just seems to work. [07:56] I wonder if it's a matter of installing some package that isn't in the requirements list. [07:57] gmb: do you have python-tox installed? [08:00] PROTIP: when you press ctrl-alt-delete make sure the keyboard is plugged into the machine you think it is [08:00] jtv: Nope. [08:03] jtv: Huh, now I'm getting failures. [08:03] Wonder what changed. [08:03] s/failures/errors [08:06] * gmb goes to brew more coffee [08:06] jtv: dhcp detection failed to pick up my existing dhcp server :( [08:06] Damn. It picked up mine. [08:06] ...Was the network cable plugged into the machine it was? :) [08:06] I'm running maas-test on my maas server and had forgotten to kill the maas-dhcp-server [08:07] How repeatable is it? [08:07] I suspect that's a mode that's not catered for [08:07] every time [08:09] Is the problem that the DCHP server is running on the same machine as maas-test? [08:09] it's on the same machine [08:09] not sure why that's a problem [08:10] or the problem [08:11] dhcpd might ignore discovery requests coming from an interface that it's serving on itself. [08:15] food [08:44] jtv: Can you review https://code.launchpad.net/~gmb/maas-test/fix-test-blowup/+merge/200783 [08:46] gmb: hang on, why would we need tox to be installed as a package? [08:46] It's something that is only used in tests. [08:47] rvba: I can't give a better reason than "because it fixes https://bugs.launchpad.net/maas-test/+bug/1267004" [08:47] Ubuntu bug 1267004 in maas-test "Test suite writes into /usr/local/lib/python2.7/dist-packages/" [Critical,In progress] [08:47] rvba: If there's a way to fix that without installing Tox, I'm all for it. [08:47] gmb: I just ran the test suite a canonistack instance and didn't see any error. [08:47] on* a canonistack instance [08:47] I wonder what I'm missing. [08:47] rvba: Was this in an absolutely clean trunk? [08:48] Yeah [08:48] Hrm. [08:49] rvba: When the test is running on the canonistack instance, does the user have a leftover sudo session? [08:49] Let me check… [08:50] A leftover sudo session from running "make install-dependencies" I suppose? [08:50] Yes [08:50] * rvba runs "make install-dependencies" in a separate shell this time… [08:51] rvba: sudo -k should kill any existing sessions [08:51] and sudo -K _really really_ kills them [08:51] I just used two completely separate shells. [08:51] No, the tests passed fine again. [08:52] Um. [08:52] o/ rvba [08:52] gmb: care to watch me? ssh ubuntu@10.55.60.177 [08:52] Sure [08:53] \o bigjools [08:53] rvba: U;n ub,] [08:53] Er [08:53] I'm in [08:53] FencePostError [08:56] rvba: Ok, I'm officially confused. [08:56] heh [08:56] rvba: Jeroen spotted this first, maybe he knows something more about reproducing it. [08:57] * gmb waits for thailand to come back online [09:01] Ah, jtv. Just the man! [09:02] jtv: So, rvba (and I) can't reproduce https://bugs.launchpad.net/maas-test/+bug/1267004 in a canonistack instance; could you lend your brain to help us find what we're missing? [09:02] Ubuntu bug 1267004 in maas-test "Test suite writes into /usr/local/lib/python2.7/dist-packages/" [Critical,In progress] [09:03] gmb: absolutely. [09:03] But why a canonistack instance when we have uvtool? [09:03] rvba: ^^? [09:04] I like using someone else's resources. [09:04] :) [09:04] :) [09:04] Fair enough. [09:05] It's also useful when you want to invite someone else. [09:05] Like I did with gmb [09:05] If you don't mind I'll stick to uvtool though — saves me from having to type halfway across the world, and freezing up every time my connection blinks. [09:05] It's doing that today. [09:06] rvba: my enlistment failed in the test [09:07] console shows failed to find pxe config [09:10] jtv: Can you give us an exact series of steps to reproduce the problem? [09:16] gmb: I'm working on one, from a clean system. [09:16] Cool beans. [09:16] But "make install-dependencies clean test" seems to do the trick on my own system. [09:17] Systems, I should say. [09:18] I hope it's not another locale sensitivity... === tryggvil_ is now known as tryggvil [09:59] jtv: LMK if you want to pair on the breakage stuff; I can't really go far without that fixed anyway. [09:59] *being fixed [10:00] gmb: perhaps that would be best... At this point I only have guesses, and we need some system to this. [10:13] gmb: does you upcoming fix include something to make sure the images are cached or it that something I should look into right now? [10:13] your* [10:13] s/it/is/ [10:13] rarg [10:13] rvba: That's something that's worth looking into; all I do is make sure that everything gets to use https proxies (except things that will obviously break). [10:14] I'm not sure what you mean by "make sure that everything gets to use https proxies"… is there a diff I could look at somewhere? [10:16] rvba: I'll push it for you [10:20] Well, at least the problem with the test suite has been resolved: uninstalling python-pip (and re-building the branch) made tests pass again. [10:24] gmb: btw, this bug is particularly puzzling: https://bugs.launchpad.net/maas-test/+bug/1266996. Maybe you'll have an idea what's going on. [10:24] Ubuntu bug 1266996 in maas-test "All test runs ending in "AttributeError: 'file' object has no attribute 'buffer'"" [Critical,Triaged] [10:25] rvba: Yes, that's an encoding error somewhere. I'll look at it in a sec. [10:25] rvba: Diff for you (includes test changes that you probably don't need): http://paste.ubuntu.com/6714063/ [10:25] Ta. [10:26] rvba: What revision are you on there? That AttributeError isn't happening for me as of r101. [10:27] No idea, that's a bug Julian filed. I guess he was using the package from the daily PPA. [10:28] I am [10:28] rvba: Ah, no, I see what he means. I misunderstood "test run". [10:28] I'll fix that. [10:28] 0.1+bzr58+100+8~ppa0~ubuntu13.10.1 [10:29] rvba: ok I have a breakpoint! [10:29] * gmb grumbles about big chunks of maas-test being untested. [10:31] gmb: about your diff: does this means that the images (downloaded over https) will be cached as well from now on? [10:31] (I think it does if the proxy is configured properly.) [10:32] another one https://bugs.launchpad.net/maas-test/+bug/1267056 [10:32] Ubuntu bug 1267056 in maas-test "maas-test leaves root-owned files in user's home dir" [High,Triaged] [10:33] rvba: is it normal to have two VMs up? [10:33] I am guessing not :) [10:34] No [10:34] uvt-kvm list / uvt-kvm destroy [10:34] ubuntu@maas:~$ ssh admin@192.168.122.144 [10:34] ssh: connect to host 192.168.122.144 port 22: No route to host [10:34] which one? [10:35] rvba: Is there a separate https_proxy config option for MAAS? [10:35] gmb: no, it sets https the same as http [10:35] iirc [10:35] gmb: no [10:35] Okay. [10:36] Like Julian said. [10:36] rvba: When you say "the images" do you mean the PXE images? [10:37] Yeah. The stuff that import_pxe_files downloads. [10:37] rvba: so at the breakpoint I can't ssh the VM (as above) [10:38] eth0 has not changed IP [10:38] rvba: Yes, with this, it should cache those too. [10:38] gmb: nice, it will speed up the testing considerably. [10:38] I'm testing that now. [10:38] \o/ [10:38] bigjools: hum… [10:39] I am going to kill it and start again .... :/ [10:39] gmb: what's your hack? I'll test it too! [10:40] bigjools: Branch lp:~gmb/maas-test/fix-proxy-problems or diff: http://paste.ubuntu.com/6714157/ [10:40] ta [10:40] Not so much a hack as a general fix. [10:42] * bigjools ponders patch hackery [10:50] ASS BASTARD [10:51] ? [10:51] jtv: Problem with logging/reporting. [10:51] Fixing it... [11:03] * gmb -> tea [11:08] Is there an easy way to get the version of the package that will be installed if you type 'apt-get install '. I mean, 'apt-cache policy ' gives you that information but it contains a lot of other stuff… is there a way to just get the version (other than parsing the return of 'apt-cache policy')? [11:12] bigjools: looks like you found the problem. uvt-kvm does try to check and print a helpful message, but it relies on kvm-ok which apparently doesn't always do it. https://bugs.launchpad.net/uvtool/+bug/1246786 [11:12] Ubuntu bug 1246786 in uvtool "kvm-ok is insufficient" [Undecided,New] [11:21] rvba: don't think there is [11:21] unless there's a library for python [11:21] lib to apt I mean [11:22] rbasak: okeydoke. I just needed to reboot and it worked anyway. [11:22] Yeah, but we can't use that in maas-test. Because we would need to install python-apt on the VM, and then run a python script there. [11:22] rvba: also having maas-test write the root-owned files means: [11:22] Warning: Identity file /home/ubuntu/.config/maas-test/vm_ssh_id_rsa not accessible: Permission denied. [11:22] :) [11:23] bigjools: like I said on the bug: 'sudo service libvirt-bin restart' usually fixes this. [11:23] rvba: right, ta [11:24] rvba: ok I am at my breakpoint and ssh'ed into the VM [11:24] not sure what to look for at the moment, can we do a hangout [11:24] bigjools: sure [11:26] rvba: is it stuck? [11:43] rvba: ARGH [11:43] "2014-01-08 21:42:59,645 INFO Network interface eth1 has no IP address. Can't scan for DHCP servers." [11:43] bang [11:44] :/ [11:44] how is this working elsewhere?! [11:44] I'm wondering the same thing. [11:44] Hang on. [11:44] This is just a warning. [11:44] Nothing more. [11:45] oh oops [11:45] Exception: Found pid file /home/ubuntu/.config/maas-test/proxy.pid for running proxy process. [11:45] the root-owned dir is frustrating [11:46] aaaand it was transient, the proxy was not there when I checked [11:47] rvba: hmm when you think about it, not having an IP address is no reason to not scan for DHCP servers... :) [11:47] jtv ^ [11:47] but it's because of the way we do it [11:48] Yeah, that's a good point. The DHCP scanning code just can't cope with having no IP address. [11:48] But that's just a limitation of how we do that. [11:55] gmb your diff for caching https doesn't seem to help me here :( Did it work for you? [11:56] bigjools: I thought it did, but now I'm not so sure. Let me clear the cache and retry. [11:56] it's been going 5 minutes [11:57] Hmm. [11:57] gmb: having said that the router is not flashing like mad as it normally does at this stage [11:58] oh dear all my ssh sessions to it are frozen [11:58] Well, we never said that maas-test would leave you with a useable system, did we? [11:58] verily, it says beware of destruction :) [11:59] I wonder if the proxy has run out of memory [11:59] it's not copying things in memory is it ... [11:59] Shouldn't be. [12:00] oo my keypresses finally appeared [12:00] it's swapping like buggery [12:06] gmb: so yeah: [12:06] 10523 libvirt- 20 0 3687m 1.7g 1452 D 29.2 89.4 5:23.11 qemu-system-x86 [12:06] 1.7g [12:06] ... [12:06] WAAAAT. [12:06] I sense a problem :) [12:06] That's not the proxy, though... I hope. Unless you're committing inception. [12:06] I keel eet [12:07] Si. [12:07] and come back tomorrow [12:07] since it's way-past-bed-o-clock [12:07] I'll pick up your lovely updated packages [12:08] I guess something inside the vm went wrong [12:08] nn [13:07] * gmb lunches [13:17] bigjools: (Don't know if you'll see this in your scroll back, but anyway): caching is definitely working for PXE files — with caching it takes 5mins, without, ~20mins. [13:41] gmb: my testing also shows that some sort of caching is indeed going on. [13:44] gmb: but, uploading stuff into launchpad failed for some reason :/ [13:44] gmb: did you test that successfully? [14:14] rvba: No, I'm seeing the same. I'm guessing it's to do with https proxying, confirming that now. [14:14] k [14:15] It's a bit weird though, because even if the call to LP does not go trough the proxy, it shouldn't fail. [14:15] Yeah. [14:15] rvba: maas-import-pxe-files runs maas-import-ephemerals, right? [14:16] Or am I having post-lunch brain fog? [14:16] That's correct. [14:16] (Not the post-lunch brain fog part ;)) [14:17] rvba: I'm wondering if the 5minutes for PXE import is just down to copying from the cache to the VM, or whether maas-import-ephemerals isn't getting the proxy settings. [14:19] The import script also does other stuff: it copies the images around more than it should (there is a bug for that). [14:20] Gaah. [14:20] Well, that would account for Julian's VM hitting 1.7GB resident. [14:21] gmb: I also noticed that, when the download actually happens (download from the proxy), my machine slows down, all the memory is sucked up. [14:21] Right. It's in that phase now on my test machine. I'll take a look and see what's happening... [14:23] PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND [14:23] 14898 libvirt- 20 0 2268m 1.2g 8124 S 23.4 31.7 3:00.88 qemu-system-x86 [14:23] It's certainly keeping busy. [14:33] 14898 libvirt- 20 0 2268m 2.0g 7576 S 22.4 50.9 6:14.68 qemu-system-x86 [14:42] rvba: Well, with the proxy disabled Launchpad reporting works fine. Which means that something daft is going on. [14:42] Damn. [14:42] Do we have easy access to the proxy's log? [15:02] rvba: yes, but it's largely useless. The only think that *might* be relevant is this entry: Couldn't read from client: Connection reset by peer. [15:02] I'll see if we can jack up the logging. [15:03] Yes we can. [15:03] * gmb turns it up to 11 [15:05] Well, 0xFF, to be exact. [15:21] rvba: The log's worse than useless, even when turned up to its maximum level. Whats weird is that this used to work, so it must be something to do with my proxy-fix branch. I'll try some tweaking. [15:36] rvba: Yep, just confirmed it, disabling https_proxy makes LP reporting work again. That's odd, but not a _huge_ deal. Let me check out a couple of things; this could drastically simplify my proxy branch. [16:25] why this happend? [21/Dec/2013:00:49:57 +0100] "GET /MAAS/metadata//2012-03-01/user-data HTTP/1.1" 404 181 "-" "python-requests/1.2.3 CPython/2.7.5+ Linux/3.11.0-12-generic" [16:25] get only error 404 from webservern.. the cloent can't find user-data information... from server [16:26] is that no one here? that have some information? === CyberJacob|Away is now known as CyberJacob === CyberJacob is now known as CyberJacob|Away === CyberJacob|Away is now known as CyberJacob [23:18] gmb: yeah so, weirdness. I expect there is some daft code *somwhere* that is copying files via Python memory (ie reading the whole thing in before writing it out again) === CyberJacob is now known as CyberJacob|Away