[00:24]  * wgrant experiments with BranchRevision
[00:26] <mwhudson> \o/
[00:26] <wgrant> It may not come out of this very healthily
[00:26] <wgrant> But then again, neither may mawson...
[00:26] <lifeless> bai
[00:26] <wgrant> Bye lifeless
[00:27] <lifeless> wgrant: can you give StevenK a hand on the jenkins thing?
[00:27] <lifeless> wgrant: I'd love to see it work :)
[00:27] <wgrant> I was intending to, yes :)
[00:27] <wgrant> StevenK: Shell pls
[00:47] <wgrant> StevenK: So, xvfb-run still won't start?
[00:48] <StevenK> wgrant: It didn't for me when doing it by hand
[00:48] <wgrant> Let me see
[00:49] <wgrant> StevenK: What are the creds for authing to the container?
[00:50] <StevenK> wgrant: jenkins@
[00:51] <wgrant> Oh, right
[00:51] <StevenK> wgrant: I will usually sudo -u jenkins -i and go from there
[00:51] <wgrant> Yep
[00:51] <wgrant> Do you normally hack the container's sudoers?
[00:51] <StevenK> I did yesterday
[00:51] <StevenK> But not normally
[00:57] <wgrant> Hm
[00:57] <wgrant> So under xvfb-run it passes
[00:58] <wgrant> In the root container
[00:58] <wgrant> Spews locale errors, but passes
[01:00] <StevenK> Sigh, there are tests that insist that the Registered branches link doesn't show up if there aren't any
[01:01] <StevenK> Which makes it the only link to do so, so I crippled that
[01:01] <wgrant> Right
[01:01] <wgrant> Fix the tests :)
[01:01] <wgrant> Or, possibly better still, delete them.
[01:02] <wgrant> test: lib/lp/app/javascript/tests/test_multicheckboxwidget.html
[01:02] <wgrant> Segmentation fault (core dumped)
[01:03] <StevenK> \o/
[01:03] <wgrant> Hm
[01:03] <wgrant> But that same thing passes in the root container
[01:03]  * wgrant blames aufs
[01:04] <StevenK> Haha
[01:04] <wgrant> aufs and I have history
[01:06] <wgrant> Ah
[01:07] <wgrant> Looking at syslog, there are some instances of what look like the symlink/hardlink restrictions
[01:07] <StevenK> Ah ha
[01:07] <StevenK> Mmmm, how do we turn that off?
[01:07] <wgrant> Well
[01:08] <wgrant> I just had another failure and didn't get the same message
[01:08] <wgrant> And I don't actually know what the message was
[01:08] <StevenK> Ah
[01:08] <StevenK> [1236262.033939] /usr/bin/python[15312]: segfault at 14 ip 00000000f5496411 sp 00000000ff8a7160 error 4 in libgtk-x11-2.0.so.0.2000.1[f5310000+3cd000]
[01:09] <wgrant> Ah right
[01:09] <wgrant> dmesg is intact, indeed
[01:09] <StevenK> wgrant: Right, so all tests pass. I'm going to toss this FF death branch at buildbot
[01:09] <wgrant> So it is the hardlink restrictions
[01:09] <wgrant> StevenK: Great
[01:09] <wgrant> lp-setup was meant to disable that restriction, I thought
[01:09] <wgrant> Or did we get a kernel fix that isn't in this ec2 image...
[01:09] <wgrant> that would be pretty hilarious
[01:10] <wgrant> Hm, the kernel's not even a month old
[01:10] <wgrant> Yeah, the hardlink restrictions are still enabled.
[01:10]  * wgrant disables
[01:10] <StevenK> If you give me the runes, I can edit my setup script
[01:11] <wgrant> Testing that it stops segfaulting now
[01:12] <wgrant> It's pretty nice of xvfb-run to just carry on even though its setup failed
[01:12] <wgrant> successful: lib/lp/app/javascript/tests/test_multicheckboxwidget.html
[01:12] <wgrant> sudo sysctl -w kernel.yama.protected_nonaccess_hardlinks=0
[01:12] <StevenK> Hah, right
[01:12] <wgrant> is what you want
[01:12] <wgrant> So, with that enabled, I'll shut down the containers and we can try a full --concurrency=4
[01:13] <StevenK> Yeah, I'll need to add the executor to Jenkins, so tell me when you're done
[01:15] <wgrant> StevenK: All torn down
[01:15] <wgrant> Fire it up
[01:16] <StevenK> wgrant: Done. #1106 kicked off
[01:16] <wgrant> concurrency=4?
[01:16] <wgrant> I don't want to wait all day, idaelly
[01:16] <StevenK> Yeah, it's still 4
[01:17] <wgrant> Great
[01:17] <wgrant> Thought it might still be down to 1
[01:17] <StevenK> It changed back days ago
[01:17] <wgrant> Better safe than waiting for four hours :)
[01:19] <wgrant> StevenK: Have you restored subunit2junitxml etc. after the debugging?
[01:19] <StevenK> I have not
[01:22] <wgrant> k
[01:22] <wgrant> Let's see how it goes
[01:22] <StevenK> It's fairly easy to restore and it only tells Jenkins which tests fail
[01:22] <wgrant> Oh
[01:22] <wgrant> I can just tail the stream directly now
[01:22] <wgrant> :)
[01:22] <StevenK> Haha
[01:23] <StevenK> How long did it take you to realise that? :-)
[01:23] <wgrant> ew
[01:23] <wgrant> There are jars in ~/launchpad/lp-branches
[01:23] <wgrant> die
[01:23] <StevenK> Those are for jenkins, hands off
[01:23] <wgrant> I know, but still ew
[01:23] <StevenK> Haha
[01:24] <StevenK> ~/launchpad/lp-branches is the base dir for jenkins, due to shared repo
[01:24] <wgrant> Launchpad is a Java-free workplace :)
[01:24] <wgrant> Ah
[01:24] <StevenK> Because then it goes ahead with ~/launchpad/lp-branches/workspace/devel
[01:25] <wgrant> This should take about 90 minutes, right?
[01:25] <StevenK> Roughly
[01:25] <wgrant> I guess it might be a bit longer, since the testrunners won't all drop dead when they start doing JS tests
[01:25] <StevenK> Haha
[01:31] <StevenK> wgrant: You said you understood the issue with bug 828133 ?
[01:31] <_mup_> Bug #828133: Archive:+edit-dependencies OOPSes when Ubuntu dependency changed via API <critical-analysis> <oem-services> <oops> <ppa> <Launchpad itself:Triaged> < https://launchpad.net/bugs/828133 >
[01:31] <wgrant> StevenK: Yeah
[01:32] <wgrant> StevenK: IIRC the UI only exposes None/multiverse options for the primary archive dep
[01:32] <wgrant> But you can set eg. main through the API
[01:32] <wgrant> causing the UI to crash when it tries to render the current value
[01:32] <StevenK> Haha
[01:32] <wgrant> but reading the bug now to see if I remember anything else
[01:32] <StevenK> Why would the UI do that? It's daft
[01:32] <wgrant> Right, yeah, what I said
[01:33] <wgrant> The UI gives "the source's component in the primary archive" and "all components" options
[01:33] <wgrant> None and multiverse respectively.
[01:33] <StevenK> Right, this should be pretty easy to test
[01:34] <StevenK> ... unless Archive:+edit-dependencies is tested via a doctest ...
[01:35] <wgrant> StevenK: The jenkins console thingy will show stream bits if the subunit breaks, right?
[01:35] <wgrant> Because testr will let it through
[01:35] <StevenK> I think testr will only show it right at the end
[01:35] <StevenK> It doesn't seem to print out during
[01:36] <wgrant> Ah
[01:36] <wgrant> No subprocess deaths yet, anyway
[01:36] <StevenK> Sigh, it's tested via two doctests
[01:37] <StevenK> Which both make up 2000 lines
[01:37] <StevenK> :-(
[01:42] <lifeless> ahoy there
[01:43] <wgrant> lifeless: Hi
[01:43] <wgrant> We fixed Jenkins
[01:43] <wgrant> And found that Launchpad itself has more than 900 million branchrevisions
[01:43] <wgrant> That about covers the horrors that you missed :)
[01:43] <lifeless> 1billion!
[01:43] <wgrant> dollars, yes
[01:44] <lifeless> cool
[01:44] <wgrant> Flight not delayed by 12 hours yet?
[01:48] <lifeless> not yet
[01:49] <lifeless> what was causing the segfaults ?
[01:49] <StevenK> hardlink restrictions
[01:50] <lifeless> orly
[01:50] <lifeless> -fun-
[01:50] <wgrant> Yeah
[01:50] <wgrant> xvfb-run fails to start X properly
[01:50] <wgrant> So it just continues
[01:51] <wgrant> Without X...
[01:51] <lifeless> nice
[01:51] <lifeless> did you file a bug ?
[01:51] <wgrant> Well, I'm not sure if it actually sees an error from the syscall
[01:51] <wgrant> It probably does, but I'm waiting to see if the build succeeds first
[01:56] <StevenK>     ProgrammingError: permission denied for relation archivedependency
[01:56] <StevenK> Aw fer ...
[02:04] <StevenK> wgrant: So I should add main/restricted/universe to the vocab as well?
[02:05] <wgrant> StevenK: Maybe.
[02:05] <wgrant> StevenK: How would the UI show that?
[02:05] <StevenK> Hmmm
[02:05] <StevenK> That is a good point
[02:05] <wgrant> You could perhaps add an extra option if the component is set to an unsupported value
[02:05] <wgrant> Let any value be preserved by the UI, but not necessarily set
[02:06] <StevenK> Right
[02:06] <StevenK> I think I'm going to be forced to rewrite this doctest, it's annoying me.
[02:07] <wgrant> wallyworld_: I think your MP fixes bug #618399
[02:07] <_mup_> Bug #618399: DistroSeries:+nominations timeouts <bug-nomination> <lp-blueprints> <timeout> <Launchpad itself:Triaged> < https://launchpad.net/bugs/618399 >
[02:08] <wallyworld_> oh, ok. thanks
[02:08] <wallyworld_> i guess it does if it's not there anymore :-)
[02:09] <wgrant> Right, it's no longer going to call canApprove on 75 nominations
[02:09] <wgrant> Because it doesn't need to decide whether to show the control :)
[02:10] <wallyworld_> yep
[02:11] <StevenK> I note Development:Coding has been wgrant'd
[02:12] <StevenK> It doesn't help that wallyworld_ has 3 cards in Review
[02:13] <wgrant> 3503073kB   369kB/s | Fetching revisions:Inserting stream:Estimate 2710795/2795277
[02:13] <wgrant> <3 lp:chromium-browser
[02:14] <lifeless> wait, 3.5GB ?
[02:14] <wgrant> Yes...
[02:14] <lifeless> binary blobs in bzr?
[02:14] <wgrant> Recall that chromium includes all its deps
[02:14] <wgrant> It's not much overhead, either
[02:14] <wgrant> 2.9G	/tmp/chromium-browser/.bzr/repository/upload/
[02:15] <StevenK> wgrant: Why are you branching it?
[02:15] <wgrant> To perform a manual incremental scan
[02:15] <wgrant> To unbreak the LP DB state
[02:15] <wgrant> hopefully
[02:15] <wgrant> I could do it by manually hacking last-revision, but it's easier this way
[02:15] <wgrant> Not quicker
[02:15] <wgrant> But easier..
[02:16] <lifeless> uhm
[02:16] <lifeless> so this is in the DC?
[02:16] <wgrant> No
[02:16] <lifeless> why not branch --stacked; bzr push ?
[02:16] <wgrant> It's local
[02:16] <wgrant> I need to be able to examine history to chunk it properly
[02:16] <lifeless> ah
[02:16] <lifeless> well, gl.
[02:16] <wgrant> I guess network latency in the DC wouldn't be too bad, though
[02:17] <lifeless> hey, its your internets quota.
[02:17]  * bigjools strokes unlimited internets
[02:17]  * wgrant strokes 500GB Internets
[02:18]  * lifeless strokes it to the left
[02:18]  * bigjools doesn't want to see a pelvic thrust
[02:19] <StevenK> I have 60GB, but that's peak. Off peak is unlimited.
[02:19] <StevenK> My plan has been grandfathered about seven times and Exetel keep bugging me to switch
[02:20] <lifeless> StevenK: let me guess, you told them to stroke it ?
[02:21] <StevenK> Last time they rang me, I told them I'd think about it and get back to them.
[02:21] <StevenK> I did the first part for about a second and have yet to do the second.
[02:23] <wgrant> lifeless: Mmm
[02:23] <wgrant> lifeless: Aren't DB reviews different because they have a habit of being catastrophic and difficult to fix?
[02:25] <lifeless> wgrant: so entry to the club may be harder
[02:25] <lifeless> wgrant: only folk in the club can sign more folk in :)
[02:25] <lifeless> wgrant: we have a qa pipeline to catch gross problems
[02:26] <wgrant> True.
[02:30] <lifeless> ok, flap flap
[02:37] <wgrant> One of the slaves has finished
[02:39] <wgrant> No errors, failures, or subprocess deaths :)
[02:42] <StevenK> There's two slaves done
[02:42] <wgrant> three
[02:42] <StevenK> Three
[02:42] <StevenK> Haha
[02:42] <wgrant> So
[02:42] <wgrant> Now we just need to make sure result reporting works
[02:42] <StevenK> Four
[02:42] <wgrant> ideally getting failure counts etc.
[02:43] <LPCIBot> Yippie, build fixed!
[02:43] <LPCIBot> Project devel build #1106: FIXED in 1 hr 26 min: https://lpci.wedontsleep.org/job/devel/1106/
[02:43] <wgrant> Then we need a tarmac config and to tie up hloeung and spm next week
[02:43] <wgrant> :D
[02:43] <StevenK> Right, let me fix the script to tie subunit2junit back in
[02:43] <wgrant> 5126232kB   665kB/s | Fetching revisions:Inserting stream:Estimate 2925464/3035215
[02:44] <wgrant> I'm glad I didn't try to branch this on a FAT32 volume
[02:44] <wgrant> -rw-rw-r-- 1 wgrant wgrant 4439527424 Oct  4 12:43 /tmp/chromium-browser/.bzr/repository/upload/oclqmgbw90pn25rdjjp0.pack
[02:44] <StevenK> Haha
[02:44] <StevenK> wgrant: Right, done. Shall we force another build?
[02:45] <wgrant> StevenK: Do I have enough privs to examine the config?
[02:45] <wgrant> I'm going to compare it to buildbot and what I know about production
[02:46] <wgrant> So we get something as close to prasé as possible
[02:46] <StevenK> I'm not sure
[02:46] <StevenK> Try? :-)
[02:46] <wgrant> I have a Build Now button
[02:46] <StevenK> https://lpci.wedontsleep.org/job/devel/ and 'Configure'
[02:46] <wgrant> But not much else
[02:46] <wgrant> No Configure link
[02:47] <StevenK> wgrant: http://pastebin.ubuntu.com/1259265/
[02:47] <StevenK> That's what Jenkins runs
[02:48] <StevenK> Bleh, this Archive:+edit-dependencies code is horrible
[02:48] <wgrant> Ah
[02:48] <wgrant> So the only big missing thing is the .testrepository preservation
[02:49] <StevenK> Nah, it will be
[02:49] <wgrant> (that's init_testr.py)
[02:49] <StevenK> It's ignored by bzr
[02:49] <wgrant> Oh, will it?
[02:49] <StevenK> So it won't get reverted out
[02:49] <wgrant> Oh
[02:49] <wgrant> I see
[02:50] <wgrant> That sounds sensible, then.
[02:50] <StevenK> And it will only run testr init if it needs to
[02:50] <StevenK> The script might need fixing for parameterized builds but eh
[02:50] <wgrant> So, fire off 1107
[02:51] <wgrant> Great
[02:51] <wgrant> + [ ! -d .testrepository ]
[02:51] <wgrant> + [ -d download-cache ]
[02:51] <wgrant> So it is indeed preserved
[02:52] <wgrant> StevenK: You've added the sysctl call to the instance setup script?
[02:52] <wgrant> Not that it's relevant to production.
[02:52] <StevenK> I did
[02:53] <StevenK> I'm tempted to try a m2.4xlarge with concurrency 8
[02:54] <wgrant> Not much point
[02:54] <wgrant> Does the maas jenkins+tarmac stuff require parameterised builsd?
[02:57] <StevenK> wgrant: This bug is making me very sad.
[02:59] <wgrant> StevenK: https://wiki.canonical.com/UbuntuEngineering/QA/UnityAutolandingSetup
[03:01] <StevenK> On jenkins create a freestyle job with 3 string parameters - dir, trunkrev and branch - this job will be duplicated and renamed for all the projects.
[03:01] <StevenK> So yeah
[03:01] <StevenK> I suspect we only need branch
[03:05] <wgrant> The pack is now 5.5GB...
[03:05] <wgrant> This is a few times bigger than I expected
[03:05] <wgrant> Google, what have you done
[03:19] <wgrant> blargh what
[03:19] <wgrant> JUnit XML doesn't stream?
[03:19] <wgrant> :(
[03:34] <wgrant> StevenK: Has the test count graph disappeared because the last $LOTS runs didn't return any XML?
[03:44] <StevenK> wgrant: It has been streaming
[03:45] <StevenK> wgrant: The test count graph disappeared because I turned off that bit due to no XML.
[03:45] <StevenK> It's back on for this build, so we'll see
[03:50] <wgrant> 8.4GB of download later, it's finally building the tree
[03:50] <wgrant> RSS of 2GB, as well
[03:50]  * StevenK stabs this bug
[03:59]  * StevenK gives up and finds something that doesn't make him want to scream
[04:12] <StevenK> Hmmm. A test for bug 1061374 might be complex
[04:12] <_mup_> Bug #1061374: PlainPackageCopyJob.attemptCopy() crashes if only binaries were copied <easy> <oops> <package-diff> <regression> <soyuz-core> <Launchpad itself:Triaged> < https://launchpad.net/bugs/1061374 >
[04:28] <wgrant> StevenK: Not hugely
[04:29] <wgrant> Publish source in one pocket
[04:29] <wgrant> Publish that source + a new binary in a second pocket
[04:29] <wgrant> Copy from second to first
[04:29] <wgrant> boom
[04:34] <StevenK> wgrant: 25 line test, though ...
[04:37] <wgrant> :(
[04:38] <StevenK> Now 30
[04:40] <StevenK> Hmmm, no boom
[04:43] <StevenK> wgrant: And see the graph is back is all its graphiness
[04:43] <wgrant> Indeed
[04:45] <StevenK> wgrant: So what is next for Jenkins?
[04:46] <wgrant> StevenK: A good question
[04:46] <wgrant> StevenK: Perhaps try setting up tarmac against qastaging or something, so we can know how it works?
[04:47] <StevenK> wgrant: I can set up a parameterized build while you tackle tarmac if you wish?
[04:54] <wgrant> StevenK: Sounds reasonable.
[04:56] <StevenK> (Pdb) p error_text
[04:56] <StevenK> u"copyme 2.8-1 in breezy-autotest (The signer of this package has no upload rights to this distribution's primary archive.  Did you mean to upload to a PPA?)"
[04:56] <StevenK> Thanks for nothing, mr test
[05:05] <StevenK> copyme 2.8-1 in breezy-autotest (No such distro series breezy-autotest in distribution ubuntutest.)
[05:05] <StevenK> :-(
[05:05] <StevenK> wgrant: I'm done. Do we have an LP branch on qas to test with?
[05:06] <wgrant> StevenK: Nothing that's reasonably up to date
[05:06] <wgrant> I'm trying to fight with Canonistack
[05:06] <wgrant> Since I only have 512Kbps upstream
[05:06] <wgrant> Ah, it works now
[05:06]  * StevenK is also wondering why breezy-autotest is the distroseries
[05:08] <wgrant> StevenK: It's in the PCJ JSON metadata, I believe
[05:08] <wgrant> If you're using makePCJ then it probably defaults to it
[05:08] <StevenK> I'm using STP.getPubSource and friends, so I don't see why the copy is failing with no such series
[05:08] <wgrant> How're you creating the PCJ?
[05:09] <StevenK> wgrant: http://pastebin.ubuntu.com/1259368/
[05:10] <StevenK> wgrant: Oh, blah, the branch doesn't need to be on qas. Something simple kicking around that isn't merged?
[05:10] <wgrant> StevenK: Oh, you just want to test the parameterised job now?
[05:11] <StevenK> Right
[05:11] <wgrant> A good start
[05:11] <StevenK> See if it starts and then kill it
[05:11] <wgrant> lp:~wallyworld/launchpad/dynamic-bug-listing-nominations2-1060015
[05:12] <LPCIBot> Project test-branch build #1: FAILURE in 7.6 sec: https://lpci.wedontsleep.org/job/test-branch/1/
[05:13] <StevenK> Heh heh
[05:13] <StevenK> + bzr merge http://bazaar.launchpad.net/~wallyworld/launchpad/dynamic-bug-listing-nominations2-1060015
[05:13] <StevenK> bzr: ERROR: No WorkingTree exists for "file:///home/jenkins/launchpad/lp-branches/workspace/test-branch/.bzr/checkout/".
[05:14] <StevenK> :-(
[05:19] <LPCIBot> Project test-branch build #2: ABORTED in 3 min 48 sec: https://lpci.wedontsleep.org/job/test-branch/2/
[05:20] <LPCIBot> Project test-branch build #3: ABORTED in 31 sec: https://lpci.wedontsleep.org/job/test-branch/3/
[05:20] <wgrant> Did it work?
[05:20] <StevenK> Yes
[05:22] <StevenK> copyme 2.8-1 in breezy-autotest (source has no binaries to be copied)
[05:22] <StevenK> LIES!
[05:22] <wgrant> The binaries are in the wrong pocket.
[05:23] <StevenK> Silence.
[05:23] <StevenK> But thanks.
[05:26] <StevenK> wgrant: Same message :-(
[05:26] <wgrant> paste test
[05:26] <wgrant> Wrong archive?
[05:27] <StevenK> wgrant: http://pastebin.ubuntu.com/1259385/
[05:27] <wgrant> Wrong archive.
[05:27] <StevenK> Putting archive=archive into getPubBinaries changes nothing
[05:27] <wgrant> Hm
[05:27] <wgrant> Have you checked that it actually creates any binaries?
[05:27] <wgrant> Remember that it respects createMissingBuilds
[05:28] <StevenK> Hmmm
[05:28] <StevenK> It returns two BPPHs
[05:29] <wgrant> pdb
[05:29] <wgrant> compare the BPPHs and SPPH
[05:29] <wgrant> Check that SPPH.getBuiltBinaries() returns something useful
[05:29] <wgrant> That's what the copier uses
[05:30] <wgrant> It should return a BPPH for every distinct BPR built from that source and published in the same suite and archive
[05:30] <StevenK> [<BinaryPackagePublishingHistory at 0x10a747d0>]
[05:30] <wgrant> Oh
[05:30] <wgrant> Heh
[05:30] <wgrant> It's picking the wrong SPPH
[05:30] <wgrant> Um
[05:30] <wgrant> You need to create them the other way around
[05:30] <wgrant> Create the target source first
[05:31] <wgrant> We ran into this this morning
[05:31] <wgrant> It determines the source by a simple key of (archive, name, version)
[05:31] <wgrant> No suit
[05:31] <StevenK> Hahaha
[05:31] <wgrant> So it just takes the latest
[05:32] <StevenK> copyme 2.8-1 in breezy-autotest (a different source with the same version is published in the destination archive)
[05:32] <StevenK> Bleh
[05:32] <wgrant> Make sure it's the same SPR
[05:32] <wgrant> It may be better to use the factory here
[05:32] <wgrant> Since you really only need one binary
[05:37] <StevenK> (Pdb) s
[05:37] <StevenK> ForbiddenAttribute: ('sourcepackagerelease', <BinaryP...106b7150>)
[05:37] <StevenK> Boom
[05:37] <wgrant> :)
[05:37] <StevenK> But the test passes
[05:37] <wgrant> :(
[05:38] <StevenK> wgrant: It's been a while since I used STP, I forgot that getPubSource is jealous of any other SPR and will create one everytime
[05:39] <wgrant> Yes
[05:40] <StevenK>                 # Otherwise, rely on the job runner to do the final commit,
[05:40] <StevenK>                 # and do not consider a failure of a copy to be a failure of
[05:40] <StevenK>                 # the job.
[05:40] <StevenK> Hmmm
[05:40] <StevenK> So if runJob doesn't blow up, how can I die?
[05:40] <wgrant> Hm
[05:40] <wgrant> You might have to get the exception from elsewhere
[05:41] <StevenK> Like where, though?
[05:42] <wgrant> Where'd you get it before?
[05:43] <wgrant> In pdb?
[05:43] <StevenK> Yeah
[05:43] <StevenK> Hm, but run re-raises it
[05:46] <StevenK> Right, test fails
[05:46] <StevenK> reference = <DBItem JobStatus.COMPLETED, (2) Completed>
[05:46] <StevenK> actual    = <DBItem JobStatus.FAILED, (3) Failed>
[05:48] <StevenK> wgrant: How is tarmac?
[05:48] <wgrant> Nearly working
[05:48] <wgrant> Not talking to jenkins yet, but it seems to be otherwise OK
[05:49] <StevenK> I think this branch is done too
[05:49] <StevenK> Just seeing if test_pcj works
[05:59] <wgrant> Ah
[06:00] <wgrant> bzr is happier with lp://qastaging URLs when upgraded to a version from after qastaging was created, it turns out
[06:00] <StevenK> Hahaha
[06:01] <StevenK> wgrant: https://code.launchpad.net/~stevenk/launchpad/attemptcopy-no-source/+merge/127932
[06:01] <StevenK> Because wallyworld_ and Soyuz == unhappy Ian
[06:02] <wallyworld_> :-)
[06:04] <StevenK> Hahah, Deployment:Ready is quite scary
[06:07] <wgrant> StevenK: Did you consider ignoring STP entirely?
[06:08] <wgrant> Also, it might be nice to check for pending publications afterwards
[06:08] <wgrant> To confirm that it indeed only created a single new BPPH, and no SPPH
[06:08] <wgrant> Because if it created an SPPH (eg. because overrides happened to differ), the test is invalid.
[06:08] <StevenK> wgrant: To be honest, the test was cargo-culted
[06:09]  * StevenK looks for the IArchive method
[06:12] <StevenK> Oh, it's on DistroSeries. Sneaky
[06:12] <wgrant> Use the one on IArchive
[06:12] <wgrant> getPublishedSources and getPublishedOnDiskBinaries, IIRC
[06:12] <wgrant> (the latter is exposed as just getPublishedBinaries to the API)
[06:13] <StevenK> Why not IDistroSeries.getPendingPublications() ?
[06:13] <wgrant> Oh
[06:14] <wgrant> Is that the one that's used by publish()?
[06:14] <wgrant> If so, that works.
[06:14] <wgrant> You'll probably also need DAS.getPendingPublications() too, though
[06:14] <StevenK> Oh bleh, I was wanting one call!
[06:14] <wgrant> You can't have one call
[06:14] <wgrant> You can have two calls, though
[06:15] <wgrant> By using getPublishedSources/getPublishedOnDiskBinaries on Archive
[06:15] <wgrant> Rather than digging out the DAS and calling stuff on that and hoping you get the right one.
[06:15] <StevenK> Right
[06:16] <StevenK> Yeah, I just saw IDistroSeries.getPendingPublications will only return sources and thought, "Oh bleh I don't want to dig up the DAS."
[06:26] <wgrant> I fear that mawson may have aspirations of being Deep Thought.
[06:26] <StevenK> Haha
[06:26] <wgrant> It's been chewing on this query for more than 5 hours
[06:27] <StevenK> wgrant: http://pastebin.ubuntu.com/1259441/
[06:32] <wgrant> StevenK: I'd drop the name/pocket restrictions
[06:32] <wgrant> StevenK: You should be working in a clean archive anyway
[06:34] <StevenK> wgrant: Done, anything else?
[06:34] <wgrant> Does the test pass?
[06:34] <StevenK> Yes
[06:34] <wgrant> Then that looks reasonable. Push and I'll check and approve.
[06:34] <wgrant> Evening lifeless
[06:34] <wgrant> Welcome to the right side of the world
[06:35] <StevenK> wgrant: Tarmac? I say, hopefully
[06:35] <wgrant> Heh
[06:35] <wgrant> Still trying to coerce qastaging into not timing out on branch scans
[06:35] <wgrant> Since Tarmac relies on branch scans
[06:35] <StevenK> Hah
[06:39] <StevenK> wgrant: Diff updated
[06:40] <wgrant> StevenK: Hm, you're still using STP and specifying some args you don't care about, but I guess it's not too bad.
[06:41] <StevenK> wgrant: Did you want to stop using STP?
[06:41] <StevenK> want me, even
[06:41] <wgrant> STP is terrible and unnecessary here
[06:41] <wgrant> LOF should be a pretty trivial replacement
[06:42] <wgrant> And end up slightly shorter.
[06:45] <wgrant> StevenK: Can you give me Jenkins superpowers so I can try to configure an auth key and stufF?
[06:46] <StevenK> I was trying to avoid that :-P
[06:47] <wgrant> Can I have an auth key for the job, then? :)
[06:47] <wgrant> Merging lp://qastaging/~me+testing/launchpad-tarmac-test/omg into lp://qastaging/~me+testing/launchpad-tarmac-test/tarmac-trunk is ignored: The Jenkins server https://lpci.wedontsleep.org/job/test-branch is not reachableHTTP Error 403: Forbidden.
[06:48] <StevenK> wgrant: You have superpowers
[06:48] <wgrant> Thankyou sir
[06:48] <nigelb> StevenK: Didn't he already have them? :)
[06:48] <StevenK> Nope
[06:48] <StevenK> Only me, and lifeless from yesterday
[06:49] <nigelb> ah
[06:50] <StevenK> wgrant: LOF now results in a failing test
[06:51] <StevenK> And it's as slow
[06:51] <wgrant> :(
[06:51] <StevenK> Oh, no, it's 0.3 seconds faster
[06:51] <StevenK> But it fails :-)
[06:51] <wgrant> It fails because you're calling it incorrectly :P
[06:52] <StevenK> makeBPPH(status=PackagePublishingStatus.PUBLISHED, pocket=PackagePublishingPocket.UPDATES, archive=archive,
[06:52] <StevenK> source_package_release=spph.sourcepackagerelease)
[06:52] <StevenK> That should be fine ...
[06:53] <wgrant> distroseries
[06:53] <StevenK> makeBPPH wants a DAS
[06:53] <StevenK> And I didn't want to look that up, remember?
[06:54] <wgrant> Hm, I thought it would take a DS and automatically make a DAS
[06:55] <StevenK> It doesn't take a DS argument, no.
[06:55] <wgrant> Ah
[06:56] <wgrant> This Unity Tarmac fork is a bit special
[06:56]  * StevenK makes a DAS
[06:56] <StevenK> wgrant: How so?
[06:56] <wgrant> StevenK: Well, you know how the document passed a dir= arg?
[06:56] <wgrant> Which didn't seem to make much sense...
[06:57] <StevenK> Oh
[06:57] <StevenK> It's asuming tarmac and jenkins on the same machine?
[06:57] <wgrant> It assumes that Tarmac and the Jenkins slave are on the same FS
[06:57] <wgrant> Yeah
[06:57] <wgrant> Fixing
[06:57] <StevenK> wgrant: Still a failure with passing a DAS
[06:58] <wgrant> StevenK: What's the failure?
[06:58] <StevenK> No PENDING binary
[06:58] <wgrant> The DAS is in the right DS?
[06:58] <StevenK> das = self.factory.makeDistroArchSeries(distroseries=self.distroseries)
[06:58] <wgrant> If so, paste it and I'll poke it with a stick
[06:59] <StevenK> Oh, I bet I know what it is
[07:01] <StevenK> Yeah
[07:01] <StevenK>  1 file changed, 9 insertions(+), 9 deletions(-)
[07:01] <StevenK> Not shorter too
[07:01] <wgrant> But significantly less 2005
[07:01] <StevenK> Yeah, it's 2006 now
[07:05] <StevenK> wgrant: Diff updated again
[07:08] <wgrant> StevenK: r=me with a trivial comment
[07:08] <wgrant> Thanks
[07:08] <StevenK> Tarmac!
[07:08] <StevenK> :-)
[07:08] <wgrant> Just tweaking the Jenkins job...
[07:09] <StevenK> wgrant: Right, I did consider that, but I have to pass them to the job creation
[07:09] <wgrant> StevenK: Oh, that's a good point and I'm stupid
[07:09] <wgrant> Carry on :)
[07:09] <StevenK> And spph.sourcepackagename and spph.source_package_version are long
[07:10] <StevenK> wgrant: Tweaking how?
[07:10] <wgrant> Adding a revid
[07:10] <wgrant> Unity (and probably MAAS) use it rather strangely
[07:11] <StevenK> I was assuming tip
[07:11] <wgrant> They use Tarmac's staged tree with trunk + uncommitted merge
[07:11] <wgrant> Pass that tree to the Jenkins job
[07:11] <wgrant> And branch= is set to the packaging branch, to additionally merge in I guess.
[07:11] <StevenK> Yeah
[07:11] <wgrant> Jenkins is careful about using a revision ID
[07:11] <wgrant> s/Jenkins/tarmac/
[07:12] <wgrant> I wonder how much chaos I can cause with a crafted revid...
[07:13] <StevenK> That's one reason I ignored revid
[07:15] <StevenK> wgrant: Your changes look pretty good
[07:22]  * wgrant crosses fingers
[07:25] <StevenK> Should I be seeing a build?
[07:25] <wgrant> Once I actually fix it to not crash
[07:25] <wgrant> Aha
[07:25] <wgrant> I see a build
[07:26] <LPCIBot> Project test-branch build #4: STILL FAILING in 19 sec: https://lpci.wedontsleep.org/job/test-branch/4/
[07:26] <wgrant> Started by remote host 127.0.0.1
[07:26] <wgrant> orly
[07:26] <StevenK> Bang
[07:26] <wgrant> Ah, source URL is none
[07:26] <wgrant> odd
[07:26] <wgrant> Oh
[07:29] <LPCIBot> Project test-branch build #5: STILL FAILING in 10 sec: https://lpci.wedontsleep.org/job/test-branch/5/
[07:30] <wgrant> Heh
[07:30] <wgrant> This is why we don't use string formatting to construct URLs.
[07:30] <StevenK> lp://qastaging/~me testing/launchpad-tarmac-test/omg
[07:30] <StevenK> Hahahahaha
[07:34] <wgrant> Not dead yet...
[07:35] <StevenK>  M  COPYING
[07:35] <wgrant> And it has the branch merged
[07:35] <StevenK> Haha
[07:35] <wgrant> Yeah
[07:35] <StevenK> What's the diff? :-)
[07:35] <wgrant> -See the file LICENSE for copyright information.
[07:35] <wgrant> +It's all mine.
[07:36] <StevenK> Hahaha
[07:36] <StevenK> I really do need to talk to your mother about sharing.
[07:36] <wgrant> I didn't notice a timeout, so I wonder if it'll wait long enough...
[07:36] <LPCIBot> Project test-branch build #6: ABORTED in 2 min 15 sec: https://lpci.wedontsleep.org/job/test-branch/6/
[07:36] <StevenK> Blink. Was that you?
[07:36] <wgrant> Yes
[07:37] <wgrant> Going to trim the actual test step off
[07:37] <wgrant> And retry
[07:37] <StevenK> Heh
[07:37] <wgrant> https://code.qastaging.launchpad.net/~me+testing/launchpad-tarmac-test/omg/+merge/94324 has some helpful comments
[07:37] <StevenK> wgrant: How different is this Unity one from upstream?
[07:37] <wgrant> It might just have the extra plugin, but I'm not sure
[07:39] <LPCIBot> Project test-branch build #7: STILL FAILING in 18 sec: https://lpci.wedontsleep.org/job/test-branch/7/
[07:40] <StevenK> Yeah, you can't do that.
[07:40] <wgrant> I touched it
[07:40] <wgrant> Should work now
[07:40] <StevenK> In the build step? Naughty
[07:40] <LPCIBot> Project test-branch build #8: STILL FAILING in 18 sec: https://lpci.wedontsleep.org/job/test-branch/8/
[07:41] <StevenK> Hahaha
[07:41] <wgrant> I'm confused
[07:42] <wgrant> All the file's timestamps are within the last 5 minutes
[07:42] <adeuring> good morning
[07:43] <StevenK> wgrant: It said 46 seconds ago
[07:43] <StevenK> I think you'll need to touch it in the build step
[07:43] <wgrant> Oh, was looking at wrong log, indeed
[07:43] <StevenK> Or just remove that post build action
[07:44] <wgrant> But that's more annoying to revert
[07:44] <StevenK> Not really
[07:44] <LPCIBot> Yippie, build fixed!
[07:44] <LPCIBot> Project test-branch build #9: FIXED in 23 sec: https://lpci.wedontsleep.org/job/test-branch/9/
[07:45] <wgrant> Hm, taking its time to push
[07:46] <StevenK> Or not pushing at all
[07:46] <wgrant> It is pushing
[07:46] <wgrant> 17MB so far
[07:46] <wgrant> Not sure why
[07:46] <StevenK> No stacking?
[07:46] <wgrant> It is stacked
[07:47] <wgrant> And it's allegrdly done
[07:47] <wgrant> Yay
[07:47] <wgrant> It worked
[07:47] <wgrant> https://code.qastaging.launchpad.net/~me+testing/launchpad-tarmac-test/tarmac-trunk
[07:48] <StevenK> Neat
[07:49] <StevenK> Can I destroy the executor now?
[07:49] <wgrant> Surew
[07:59] <lifeless> o/
[08:00] <wgrant> Hi
[08:00] <lifeless> review plox - https://code.launchpad.net/~lifeless/python-timeline/bug-891989/+merge/127951
[08:09] <wgrant> StevenK: Most of Unity's changes are irrelevant, and the Jenkins plugin needs a bit of a rewrite.
[08:10] <wgrant> Might make a proper branch (extending lp:lp-tarmac-config, perhaps) tomorrow
[08:12] <StevenK> \o/
[08:12] <StevenK> r=IRC Nick would be a neat trick, too
[08:12] <wgrant> lp:lp-tarmac-config takes a different approach
[08:12] <wgrant> It just matches the usual commit regexp
[08:12] <wgrant> So you have to put [r=] etc in yourself
[08:13] <wgrant> Which is not ideal, but we could always autogenerate.
[08:13] <wgrant> But then no-qa becomes hard
[08:14] <StevenK> Right
[08:14] <StevenK> That would work
[08:19] <lifeless> wgrant: StevenK: please?
[08:20] <lifeless> ciao for now
[08:20] <StevenK> lifeless: r=me
[08:20] <StevenK> And now for some DXHR
[10:34] <bigjools> wgrant: do you know if there's a gotcha amending system .py files used in a wsgi app?
[10:35] <wgrant> bigjools: Amending how?
[10:35] <wgrant> "system" maening "packaged"?
[10:35] <bigjools> yes
[10:35] <bigjools> hacking in some logging
[10:35] <bigjools> my changes aren't being used
[10:35] <wgrant> Make sure you get the right copy
[10:36] <bigjools> haha
[10:36] <wgrant> Are you using dh_python2, python-support, python-central..??
[10:36] <bigjools> dh
[10:36] <wgrant> I assume dh_python2, given you're only >=precise
[10:37] <wgrant> bigjools: Which file are you editing?
[10:37] <bigjools> there is only one maas/settings.py on here and the .pyc happily sits there not updated
[10:37] <wgrant> The pyc won't be updated, as it's root-owned
[10:37] <wgrant> But Python should ignore it if the .py's mtime is newer
[10:38] <bigjools> right
[10:38] <wgrant> dh_python2 symlinks, rather than the traditional copying around that python-support and python-central did, so there should only be one copy
[10:38]  * bigjools inserts deliberate syntax errr
[10:38] <wgrant> But perhaps your settings.py is magical?
[10:38] <wgrant> Heh
[10:39] <bigjools> aha
[10:40] <wgrant> Good aha, or bad aha?
[10:40] <bigjools> well it proved it's picked up changes
[10:40] <wgrant> Ah
[10:41] <wgrant> Yeah, dh_python2 makes it pretty hard to get wrong
[13:18] <abentley> deryck: This looks broken to me, because I can't add myself to proprietary , even though specs default proprietary.: https://qastaging.launchpad.net/bzrtools/+sharing
[13:19] <abentley> deryck: Aah, I just "fixed" it by making bugs proprietary.
[13:21] <deryck> abentley, but still there's a bug there, right?  you should be able to do so with just specs being proprietary, right?
[13:21] <abentley> deryck: right.
[13:21] <deryck> abentley, will you file a bug about that?  And add a card to the beta lane?
[13:21] <abentley> deryck: sure.
[13:22] <deryck> abentley, thanks!
[14:26] <rick_h_> jcsackett: if you get a sec please https://code.launchpad.net/~rharding/launchpad/fix_banner_cleanup/+merge/128026
[14:59] <jcsackett> rick_h_: r=me.
[16:54] <abentley> jcsackett: Could you please review https://code.launchpad.net/~abentley/launchpad/info-type-app-config/+merge/128064 ?
[16:55] <jcsackett> abentley: sure.
[16:55] <jcsackett> abentley: the MP is showing you have a text conflict.
[16:56] <abentley> jcsackett: It's just duelling insertions.
[17:04] <jcsackett> abentley: e.g. you intend to keep all code in the TREE and MERGE-SOURCE bits?
[17:04] <abentley> jcsackett: Yes.
[17:04] <jcsackett> abentley: ok. r=me.
[18:00] <rick_h_> abentley: ping, have a sec?
[18:44] <abentley> rick_h_: pong.
[18:47] <rick_h_> abentley: hey, I think jcsackett has me ok atm. At least more to dig into. Trying to get the right .pt for hte right context/project/product
[18:47] <abentley> rick_h_: Cool.  Sorry, I had a late lunch.
[19:05] <abentley> rick_h_: The only remaining alpha card is "Add information type to ProjectGroup $project/+newproject" so I'll take it, unless you've started.
[19:06] <rick_h_> abentley: no, I was going to ask though since I thought it was said we didn't want to add information type to projectgroup?
[19:06] <abentley> rick_h_: This is about creating products from a projectgroup page.
[19:07] <rick_h_> abentley: ah ok, so not the projectgroup itself, gotcha
[19:25] <rick_h_> abentley: have time to do a quick hangout?
[19:25] <abentley> rick_h_: sure.
[20:41] <abentley> rick_h_: I got it working by disabling your IProductSet checks.  Do you remember what those are for? http://pastebin.ubuntu.com/1260787/
[21:07] <sinzui> jcsackett, do you have time to review a quick fix to not show bug listings if the project does not use Lp to track bugs? https://code.launchpad.net/~sinzui/launchpad/external-bug-tracker/+merge/128114
[21:08] <jcsackett> sinzui: absolutely.
[21:11] <jcsackett> sinzui: out of curiosity, do you have a credit of 3000+ lines as of this week, or have you earned 3000+ lines in this week alone? :-P
[21:11] <sinzui> good question. I must confess I was guessing at 3000
[21:11] <sinzui> I may have 4.5k to 5
[21:12] <sinzui> do you hate me?
[21:13] <sinzui> jcsackett, I gave wallyworld_ a pointer to two files in utilities that would give him -2500, but he has not use it
[21:13] <jcsackett> sinzui: i don't hate you, just impressed. :-P
[21:13] <jcsackett> i am not bitter about the LoC req. just occasionally inconvenienced.
[21:13] <jcsackett> sinzui: i may well use those utilities changes if he doesn't though.
[21:14] <sinzui> jcsackett, formatdoctest.py is shipped with pocket-lint. we don't needed it.
[21:14] <abentley> sinzui: ISTM that if we want to reduce LOC, then LOC credit should decay.  But that does incent people to not remove LOC until they need credit.
[21:14] <sinzui> also we don't use the porn report anymore, so you can delete the xxxreport.py
[21:15] <jcsackett> abentley: that's a thought. there's also the fact that we seem to use raw line counts, and whitespace/comments probably shouldn't count.
[21:15] <sinzui> abentley, it gets reset. Francis had Purple's LoC reset when we returned to maintenance
[21:15] <abentley> sinzui: Oh.
[21:15] <jcsackett> sinzui: r=me, though there is a typo to fix.
[21:16] <abentley> sinzui: So you were counting LOC for work on private projects?
[21:16] <abentley> or disclosure, etc?
[21:17] <abentley> Actually, I think we want an incentive to maximize our LOC credit.
[21:17] <cjwatson> View it as a way of keeping score, not as currency to spend?
[21:17] <sinzui> abentley, we are damned if we do, though three of us have credits of about 40,000, the other two have 70,000. sharing + pickers + privacy-transitions added 30k
[21:18] <sinzui> I don't think the deletion of BVP and bug subscription rules will amount to 30k
[21:41] <wallyworld_> sinzui: i haven't done those files yet, but it's on my todo list
[21:44] <sinzui> wallyworld_, I hope the file a pastebin works for you
[21:45] <abentley> deryck: This code appears to have no effect (does not set default): self.widgets['information_type'].value = InformationType.PUBLIC
[21:45] <sinzui> s/a pastebin/i pastebined/
[21:46] <wallyworld_> sinzui: the chrome certificate issue is fixed, yes :-) \o/
[21:46] <deryck> abentley, did I write that?  Or can you give me a larger snippet for context?
[21:49] <abentley> deryck: I thought it was from your branch yesterday, but I was wrong.
[23:25] <StevenK> wallyworld_, wgrant: https://code.launchpad.net/~stevenk/launchpad/destroy-dsp_picker-ff/+merge/128138
[23:26] <wgrant> Already looking :)
[23:28] <wgrant> StevenK: r=me
[23:30] <StevenK> Hahah and wallyworld_ approved too
[23:34] <wgrant> Hm
[23:34] <wgrant> 14 Fix Committed criticals
[23:35] <wgrant> That may be a record since the new definition began
[23:43] <wallyworld_> doh, bb failure
[23:43]  * wallyworld_ fixes
[23:44] <StevenK> Bah, did I just hit testfix?
[23:45] <lifeless> oh noes :P
[23:45] <StevenK> Yes!
[23:46] <StevenK> It's such a large problem that I'm going to destroy testfix entirely
[23:56] <sinzui> wgrant, jcsackett sanitised the name because zope's traversal see the ? or the escaped ? and strips it. The librarian does have the name, Lp's own code does not
[23:57] <wgrant> NotFound: Object: <lp.services.webapp.publisher.RootObject object at 0x968d82c>, name: u'foo?'<br />
[23:57] <wgrant> Zope sees it fine, hm
[23:59] <wgrant> I wonder if it may be our Apache config
[23:59] <wgrant> Since it works fine on launchpad.dev
[23:59] <wgrant> Without jcsackett's branch
[23:59] <StevenK> Is this the bug attachment with a ?