[01:36] bigjools: o/ [01:36] hi roaksoax [01:36] just starting to look at your branch [01:38] roaksoax: did you mix up two branches? [01:38] I see the test fixes with the chmod changes [01:39] bigjools: yeah I commited the chmod changes on top of the test fixes which is another merge [01:39] roaksoax: your chmod changes aren't enough I think [01:39] bigjools: just I just thought if you accept the test fixes first, that should not cause any problems with the chmod changes [01:39] because it was a directory permission problem [01:40] bigjools: I tested both with successfuly results [01:40] huh reallyu [01:41] bigjools: so the chmod in src/provisioningserver/pxe/install_image.py takes care of the directory [01:41] roaksoax: I would have expected a fix in make_destination() [01:41] because it was the commissioning/ dir that was 600 [01:42] bigjools: right, but that happens on the rename, so we might as well do that after renaming [01:43] roaksoax: I don't understand how renaming fixes the directory permission - it clearly works if you tested it ok, but I am missing something [01:45] bigjools: renaming doesn't fix it [01:46] bigjools: when it renames is when the permissions get screwed [01:46] yep [01:46] bigjools: so that's why I thought the chmod should go right after the rename [01:46] but I thought it renamed the file, not the dir [01:48] bigjools: a right, but that critical section seems to be the part of directory creation [01:48] seems so.... humph [01:49] I am getting test failures, can't tell if it's your changes or not, give me a few minutes [01:49] k [01:51] bigjools: right, there maas-import-pxe-files errors [01:51] * roaksoax brbr [01:55] roaksoax: will leave you to fix that then :) [01:56] shout if you need help [02:02] Test suite still completely broken. :( [02:04] bigjools, roaksoax: this is not a good time to land changes -- we're not passing tests. It's what kept me from fixing the permissions problem yesterday. [02:04] hi jtv1 [02:04] I didn;t know things were broken still [02:05] Eleven failures, one error. [02:05] I am running a make check on trunk now [02:05] Here's the MP that broke it: https://code.launchpad.net/~andreserl/maas/maas_tftppath_lp1042877/+merge/121676 [02:06] oh that - roaksoax's branch is trying to fix it [02:07] roaksoax: need tests: https://code.launchpad.net/~andreserl/maas/maas_set_correct_file_permissions/+merge/121974 [02:07] Why is the /maas prefix incorrect in the first place? AFAICT it's correct, but optional. [02:07] nothing would boot [02:08] the paths were inconsistent compared to the actual location of pxelinux.0 [02:08] also [02:08] it was a problem for upgrading from previous installations [02:09] (using Cobbler) [02:09] since /maas didn't exist [02:09] and we can't rely on being able to change the dhcp config [02:11] The latter I know -- I was the one who made it optional. But didn't Gavin move the location of pxelinux.0 to maas/ ? [02:11] By the way, small mistake in that branch. I commented on the MP. [02:12] At least I think it's a mistake! [02:13] the critical section is merely a comment so it doesn't matter as such [02:13] jtv1: he's fixed a load of the errors but not all [02:13] (in the other branch) [02:13] "The critical section is merely a comment"!? [02:13] Like that. [02:14] The critical section ends when the new directory is in place *and readable*. [02:14] no [02:14] when it's in place [02:14] If that directory is not readable, it's no use to anyone. [02:15] that doesn't make it part of the critical section [02:15] since only one user is *changing* it [02:16] The critical section is effectively the time between the moment we can no longer use the old directory, and the time we can start using the new one instead. This approach postpones that, for no reason whatsoever. [02:17] true, it would be better on the original dir [02:17] Right. [02:17] There's just no reason to do it the wrong way -- except the name is easier to spell, which can be solved with a variable. [02:18] jtv1: can I leave you to help roaksoax please, I've got a million other things to sort out [02:18] his branch still has failures [02:18] I do have a doctor to see. :/ === jtv1 is now known as jtv === jam1 is now known as jam [09:27] allenap, bigjools, Daviey, rbasak: here's a new suggestion for prefix-less PXE layout on TFTP. Saves us the bootloader downloads, resolves the compatibility problem, removes the prefix, usurps /var/lib/tftpboot/pxelinux.cfg for our own use. http://paste.ubuntu.com/1175480/ [09:27] Oh, and: moves us towards a solution for the amd64/i386 problem, I think. [09:31] jtv: jfdi! [09:31] jtv: Why are the arch specific bits inside pxelinux.cfg/? [09:31] jtv: Also, the i386/amd64 problem should be fixed already, pending QA, unless this is something else. [09:34] jtv: Want to talk about it? [09:35] allenap: Yes please. [09:35] jtv: https://plus.google.com/hangouts/_/0d5426deed76294d0b13f6d467e9d286b7a1d52a?authuser=0&hl=en-GB [09:53] rbasak: Can we delay by 20 minutes? [09:53] sure [10:18] Daviey: just wanted to make absolutely sure... if we PXE-boot /pxelinux.0, using a config from /pxelinux.cfg, we can still load kernel/initrd from /maas, right? We're not forced to load from within /pxelinux.cfg, right? [10:43] yeah.. [10:44] jtv: i don't see why you couldn't? Which makes me concerned i'm missunderstanding the question [10:44] No, just checking up on the details of the problem where once you're booting from a directory, PXE can't seem to reference TFTP files from outside that directory. [10:45] This was a big issue some time ago. [11:17] jtv: I think the issue was more, the -secure option.. which did better chrooting.. and enforiced ownership.. no? [11:17] No, not related to that. [11:18] Daviey: But we were told at one point that we couldn't just pass absolute paths to the tftp server; it had to be relative to either (and I'm trying to verify which it was) the directory with pxelinux.0 in it, or the pxelinux.cfg directory. [11:23] jtv: I'm not aware of such a limitation, i'm sure i've used full paths (from tftproot) all the time. [11:24] ! [11:24] Even for kernel & initrd? [11:24] Now I'm just completely confused. [11:25] jtv: it might be better to JFDI and prove me wrong :) [11:25] rbasak: Do you have thoughts ^^? [11:25] We spent so much time on questions like "once you're in an i386 config file, how do you get the amd64 kernel/initrd if they're in a different directory?" [11:25] jtv: why would you be in the i386 file? [11:25] Daviey: it'd be hard for me to prove myself wrong. Which I need to be able to do to make sensible decisions. [11:26] You'd be in an i386 config file if you were a netbooting PXE client. [11:26] then why would you jump to amd64? [11:26] Because you might actually be amd64. [11:26] I think i am being dumb. [11:26] Well think about enlistment. [11:26] Server doesn't know who or what you are. [11:27] You request a boot config; the server gives you i386. [11:27] jtv: i thought we were using Ifcpu.c32 / Ifcpu64.c32 now? [11:27] Ah no, enlistment is OK. [11:27] Yes, we are using that now. [11:27] But like I said, we spent a lot of time arriving at that. [11:27] ah [11:28] The real problem came when you had to install the right architecture despite perhaps having been served the wrong architecture for PXE. [11:28] Anyway, we had to do that, and some other acrobatics, because we had been told that once you load pxelinux.0/pxelinux.cfg, you're stuck in the location you got those, TFTP-wise. [11:29] For the rest of that boot, obviously. [11:29] Not forever. [11:43] Daviey, jtv: I'd like to verify this by looking at the U-Boot source and also checking behaviour in U-Boot. The behaviour in U-Boot may well be different than pxelinux itself here. [11:43] Ahh that could be the missing piece of the puzzle. [11:43] Would be most grateful if you could check! [11:44] * rbasak looks [11:49] ahh, yes.. could be [11:52] Daviey, jtv: right. I've looked at the logic [11:53] It will be relative unless the path supplied starts with / [11:53] (God, the staggering incompetence of some people... adding a "North" arrow to a map that duly points up... but actually orienting the map in some radically different way. Leaving the "Public Company Limited" suffix in the name of a landmark office building, when there's not enough room to write it. Transliterating street names incorrectly. Is this company testing my motivation to come see them?) [11:53] rbasak: so then there's no way at all in which we're stuck in a directory and we could have used absolute paths all the time!? [11:53] If it starts with /, then the name is left as-is and requested from the tftp server [11:54] jtv: where did you hear about this limitation ? [11:54] If it doesn't start with a /, then the name pxelinux.0 was fetched from is truncated to its last / and the name appended [11:54] I don't think that tftp has a notion of directories at all. Everything is just a name [11:54] right, that is the same as x86. [11:54] So how the leading / is interpreted is up to the tftp server in use [11:55] (The one we use, in the upstream version, just chokes I think) [11:55] So it is still a bit limited. If you serve "maas/pxelinux.0" for example, I don't think it's possible to get U-Boot to fetch "kernel". It'd have to be "/kernel" or "maas/kernel". [11:56] I am basing this from the current linaro U-Boot source and current highbank behaviour only [11:56] If the behaviour was different in the past, I won't see it [11:56] So maybe this limitation does exist, in a way -- a tftp server doesn't necessarily support absolute paths. We had trouble with that. [11:56] * rbasak goes looking for the VCS tree [11:57] jtv: agreed. I would be very careful in the assumptions made here, since TFTP itself doesn't define anything. [11:57] (I don't think) [11:57] Now, if we have some sort of equivalent of "current directory" set, we do know that it's going to be the same directory we found pxelinux.0 in then? [11:58] Yes. This is how U-Boot was engineered from the start. I think this is based on pxelinux.0's behaviour. [11:59] Look for robher on here. He's not online now but sometimes is. He wrote it. [11:59] So if we start out with pxelinux.0 as the boot-loader filename, in /, and read config from pxelinux.cfg/* in root, then we can continue using our normal filenames. [12:00] If I understand you correctly then yes, I think so. Can you just show me the structure again? [12:01] Gah. Keyboard layout switching is completely demented with this USB keyboard attached. :( [12:01] Ah it wasn't robher, it was Jason Hobbs who wrote it (also Calxeda) [12:02] Well "the" structure is the question. [12:02] What I'm currently implementing is: [12:02] And the original code has the same special case leading '/' handling [12:02] At least the original code that went into linaro trunk. So I think we're ok relying on that. [12:02] /pxelinux.0 [12:02] /pxelinux.cfg/default [12:02] /i386/generic/precise/commissioning/initrd.gz [12:02] etc. [12:03] (I'm spelling out the leading slashes here for illustration; we don't actually use them.) [12:06] If the pxelinux.cfg files then use "kernel i386/generic/precise/..." etc, then I think that'll work [12:06] (I'd keep those paths relative to avoid any issues) [12:06] Ahhhh figured out my map. The key was the road that crossed the water, with the arrow to the bridge pointing _away_ from the water. The big wobbly curvy waterway it shows is not in fact the river. It's a canal, and according to Google, nicely straight. [12:06] Also probably best to keep the dhcpd.conf filename "pxelinux.0" relative (to nothing) too. [12:07] Yes, it should all set up like that at the moment. [12:07] Just wanted to be sure that the naming after loading would still be relative to the root in our case, and not to pxelinux.cfg. [12:08] Yes, that's right. It's relative to the location of pxelinux.0, not of pxelinux.cfg. [12:08] Thanks for the help! It's frightening to work in the dark sometimes. [12:08] (pxelinux.cfg needs to be in the same location as where pxelinux.0 is) [12:08] No problem. I hope I've been accurate! [12:09] Certainly more so than whoever made this map. [12:12] allenap: any chance I could get you to review a few branches for me? They're wildly disparate -- one is near-trivial and the other is huge. [12:12] The trivial one is: https://code.launchpad.net/~jtv/maas/use-maasserver-testcase/+merge/122002 [12:20] The huge one is: https://code.launchpad.net/~jtv/maas/bug-1042877/+merge/122049 [12:20] Ubuntu bug 111956 in Launchpad itself "duplicate for #122049 Cannot search for identifier containing underscores" [Low,Triaged] [12:23] jtv: Sure, no worries. [12:23] Thanks [15:26] i'm currently using orchestra to provision bare metal systems as well as VMs (using koan). am i able to replace orchestra with maas for all that? === matsubara is now known as matsubara-lunch === frankban_ is now known as frankban === matsubara-lunch is now known as matsubara [17:26] roaksoax, how can i create a maas super user without typing a password ? [17:27] smoser: no diea [17:27] anyone ? [17:33] hey roaksoax [17:34] i boot a node. and enlist it [17:34] then say "commission" [17:34] all well and good [17:34] then i turn it on again [17:34] what is it supposed to do? [17:38] i'm currently using orchestra to provision bare metal systems as well as VMs (using koan). am i able to replace orchestra with maas for all that? [17:40] bjf, yeah, thats the goal. [17:40] smoser: how close are we today? can i provision both bare-metal as well as VMs today? [17:41] i would say yes to both. [17:41] you'll have to manage your virtual machines yourself [17:41] and a machine is basically identified by its "eth0 MAC address" [17:41] so you have to keep that consistent [17:42] smoser: i'm doing kernel testing with jenkins jobs and orchestra + koan right now. that's a lot of VMs being dynamically created and destroyed [17:43] well, mi could be wrong here. [17:43] but baically, maas is going to identify each new vm as a new system. [17:44] and that system will have to go through enlistment and commissioning [17:44] its possible that you could use the api to populate images and absically pass it through ocmmissioning before nhand. [17:44] smoser: hold on, you enlist and then you "Accept and Commission" [17:44] and then also to delete it when youre done [17:44] smoser: it enlists and turns off [17:44] roaksoax, yes, and then i commission [17:44] that is all well and good [17:44] but what happens if i turn it on after that [17:44] smoser: it fails to PXE [17:44] thtas not my experience in precise [17:45] ok, can i do enlistment and commissioning from the command line? do you have a cli or do i need to write a tool myself? [17:45] smoser: really? I saw soemthing that was trying to PXE boot from a poweroff like profile or something likethat but it failed due to not being found [17:45] you'd have to write a maas api client for that. [17:45] bjf, [17:45] smoser: i just spotted that yesterday so didn't really investigate it yet [17:45] smoser: and can i write that in python? [17:46] bjf, i dont know how good you are with python :) [17:47] but yes, you could do it in python [17:47] smoser: heh [17:47] smoser: i should have asked if python is a supported language for such work :-) [17:47] bjf, well its a web service api [17:47] and you'd have to write the client (no easily available library for you at the moment) [17:48] now... [17:48] smoser: one that you have documented? [17:48] if you *wanted* to write a maas cli that would make people happy. [17:48] lol [17:48] bjf, i dont document anything, ever. [17:48] and honestly i dont think the maas api is terribly well documented (but i could be wrong) but there are examples of using it. [17:48] juju uses it, and i had started a client [17:49] smoser: ok, some examples would be good enough [17:49] which i can point you at. [17:49] cool [17:49] ok, that's all for now .. i'll be back [17:49] https://code.launchpad.net/~smoser/maas/maas-cli/+merge/101440 [17:54] roaksoax, its confusing [17:54] i think its actually doing an install [17:54] acutally pretty certain it is [17:55] smoser: ok, I'll have a look [17:55] maybe so [17:55] it says "Installing the base system" [17:55] :) [17:55] smoser: what MAAS are you using? [17:55] precise at the moment. [17:55] smoser: from PPA? [17:58] http://pad.daviey.com/maas-ephemeral-image-test [17:58] no. from precise updates or whatever is there. [17:58] this was in an effort to validate the dialy ephemeral image that i built yesterday. [17:59] and see that link, thats how i did it. [18:05] ok [18:12] roaksoax, i'm gonna walk the same thing on quantal now. [18:12] its kind of a shortcut on the vdenv [18:13] smoser: note that we should be uploading cobblerless maas very soon though [18:14] sure. and osme of that stuff is cobbler specific. but much is not. [18:23] roaksoax, on quantal right now i do maas-import-isos [18:23] i see [18:23] Unknown command: 'install_pxe_image' [18:23] am i not supposed to run that ocmmand? [18:29] smoser: yeah that's find [18:29] fine [18:29] smoser: it is and old maas version [18:55] roaksoax, wait a minute. [18:55] i'm booting the installer [18:55] in enlistment [18:56] on quantal [18:56] why? [18:57] smoser: becuase cobblerless maas is not yet in quantal [18:57] smoser: there [18:57] smoser: there's was a few issues that needed to be addresses before I can upload it otherwise we would have had a broken MAAS [18:57] i'm hoping to have an upload by tomorrow [18:58] but i changed the cobbler path [18:59] to use ephemeral enlistment [18:59] and the other path [19:01] roaksoax, oh. i see. quantal is still as of July 17 [19:01] wow [19:02] thats old [19:03] roaksoax, could you tell me what you were doing yesterday that caused you to know about my ephemeral image mishap? [19:18] smoser: trying to enlist [19:19] with the new maas of course [19:19] ppa:maas-maintainers/testing [19:19] precise [19:21] roaksoax, i'm getting a debconf change prompt [19:22] on upgrade in quantal from quantal to daily ppa [19:22] smoser: what's it about? [19:22] http://paste.ubuntu.com/1176499/ [19:22] just did the install on quantal, then added daily ppa [19:23] and upgraded [19:23] also now pserv i prompting me [19:23] smoser: yeah [19:23] smoser: do that [19:23] well, of course yes. [19:23] and it will re=generate passwords and stiff [19:23] i'm just saying its a bug [19:23] it should not prompt me. i did not change that file. [19:23] smoser: no you didn't, but upstream did [19:23] and all users would hit that. [19:23] smoser: and the package did [19:24] roaksoax, no [19:24] the error is because its a confffile [19:24] and you (postinst) edited it [19:24] and then upstream changed it. [19:24] smoser: yep [19:24] smoser: i'm awayre [19:24] and dpkg is saying "this is changed from what it was before" [19:24] so you need to handel that. [19:24] I have not yet thought on a fix for it [19:24] smoser: yeah I'm aware of that [19:24] smoser: i have been giving priority to other stuff [19:25] and on the other quantal instance that i installed stright to the ppa [19:25] smoser: but basically i will just replace the file and not prompt that, and simply send a message saying that if custom settings have been made, they will have to bemerged [19:25] i'm getting a stack trace [19:25] on during install [19:25] smoser: that's probably an older package of quantal [19:25] smoser: as the newer ones are precise [19:25] since sabdfl wanted to test precise [19:25] so dind't upload quantal [19:26] smoser: again, I will test quantal again tonight to see if the issues i found were fixed upstream, if so I will release to archive [19:26] smoser: brb, need to change locations [19:26] roaksoax, the stack trace i'm seeing is on the daily ppa [19:48] smoser i think i know why that is [19:56] roaksoax, hm.. i dont know what i did to cause the stack trace. but i didn't reproduce it with this [19:56] sudo sh -c ' [19:56] apt-add-repository ppa:maas-maintainers/dailybuilds -y && [19:56] apt-get update && [19:56] DEBIAN_FRONTEND=noninteractive apt-get --assume-yes install maas' roaksoax, what is the dhcp server? [19:57] smoser isc-dhcp [19:59] smoser its an issue when regenerating passwords it is not doing it right because a configfile was changed without updating packagaing [20:00] roaksoax, so after the above... [20:00] i should have maas-dhcp running [20:00] right? [20:11] roaksoax, ping when you get a chance. [20:28] smoser: sorry about that, internet sucks at the moment [20:29] ok. [20:29] you ahve a minute now? [20:29] smoser: yes [20:30] k. [20:30] so. after i installed maas from the ppa [20:30] i dont have any isc-dhcp running [20:30] should I ? [20:31] smoser: not really unless you have it enabled on MAAS webiui [20:31] as it is the one that controls the start/stop of the daemon [20:31] how can i enable it? [20:31] smoser: Settings on the WebUI [20:31] smoser: note that you will find yourself with the bug that it is unablke to write /etc/dhcp/dhcpd.conf [20:32] no other way to enable? [20:32] smoser: nope [20:33] so it asks me about what settings i want for the dhcp server [20:33] but not whether or not to run it [20:33] nice. [20:34] smoser: that's upstream issue [20:34] smoser: the package simply sets up the master dhcp pool [20:34] smoser: the only way to enable the dhcp server is by doing it from the webui [20:36] smoser: i thnk that they were gonna change the default sto have the dhcp server enabled by default [20:40] smoser: brb [21:29] smoser: did you get it working?