[13:27] <wgrant> cjwatson: <3
[13:27] <wgrant> cjwatson: You've tested that the split-out extra-overrides scripts actually work, I assume?
[13:29] <wgrant> cjwatson: You say that it needs ~ubuntu-archive read access, but why can't it use login_anonymously()?
[13:42] <cjwatson> wgrant: Oh yeah that would work too
[13:43] <cjwatson> willfix
[13:43] <cjwatson> wgrant: I'm going to test end-to-end now that python-launchpadlib is installed on pepo
[13:43] <wgrant> Great
[13:43] <wgrant> Thanks
[13:43] <wgrant> Some of us sadly do not have that capability.
[13:44] <cjwatson> Oh, hey, I already use login_anonymously
[13:44] <wgrant> Heh
[13:44] <cjwatson> Well, I could test it somewhere else, but it's handy to be able to diff the result and check that I'm not missing some other random dependency
[13:45] <cjwatson> The ported tests should be pretty close to good coverage, but it's hard to do an out-of-process run with sufficient mock objects
[14:08] <cjwatson> wgrant: Glad you asked - I found and fixed one bug in the translation to webservice-speak.  It works now after a bit of bodging of the shell script to write to somewhere different.
[14:09] <cjwatson> (And a change to the lockfilepath to avoid arguing with production ...)
[14:11] <wgrant> cjwatson: Excellent
[14:12] <wgrant> cjwatson: Do you intend to kill off lp-query-distro.py soonish? It seems like it should be just about trivial.
[14:16] <cjwatson> wgrant: Yes, just wanted to do it in a separate step
[14:16] <wgrant> cjwatson: Sure, just checking.
[14:16] <cjwatson> Ideally along with moving that shell loop into maintenance-check.py, but if I don't have time for that then writing a launchpadlib version of lp-query-distro is trivial.
[14:17] <cjwatson> And it can hardly take longer to execute than lp-query-distro does :P
[14:17] <cjwatson> lp_publish@pepo:~$ time /srv/launchpad.net/production/launchpad/scripts/ftpmaster-tools/lp-query-distro.py supported
[14:17] <cjwatson> utopic trusty saucy precise lucid
[14:17] <cjwatson> real    0m8.588s
[14:17] <cjwatson> user    0m7.968s
[14:17] <cjwatson> sys     0m0.400s
[14:17] <cjwatson> I mean FFS
[14:18] <wgrant> Yeah, Zope startup time is nice.
[14:18] <wgrant> Well, and importing a million lines.
[14:18] <wgrant> Can probably be done in one launchpadlib request.
[14:20] <cjwatson> [series.name for series in ubuntu.series if series.status not in ("Experimental", "Obsolete")]  or some such
[14:21] <wgrant> Yep
[14:21] <wgrant> Also Future
[14:21] <wgrant> I think
[14:21] <cjwatson> So two requests because you need the distribution first, but whatever
[14:21] <wgrant> If that still exists.
[14:21] <wgrant> True.
[14:21] <cjwatson> querydistro only excludes those two statuses
[14:21] <wgrant> Heh
[14:22] <cjwatson> Not to say that it's correct
[14:22] <wgrant> In fact, it should really be Future/Obsolete
[14:22] <wgrant> Experimental is a live status...
[14:22] <wgrant> Not that Ubuntu uses it.
[14:23] <wgrant> In fact, how does that not generate things for v-series etc?
[14:23] <cjwatson> Pretty sure it does
[14:23] <wgrant> Unless it's just because there are no packages...
[14:23] <cjwatson> It's awesome
[14:24] <cjwatson> Oh, maybe it just used to
[14:24] <cr3> hi folks, might there be a coding guideline for launchpad that describes when to use the various logging levels? (I asked in #launchpad but here is more appropriate)
[14:25] <cjwatson> wgrant: Oh, because we haven't created series beyond utopic
[14:25] <wgrant> cjwatson: Right, but we had before.
[14:25] <wgrant> So u-series files should still exist.
[14:25] <cjwatson> Yep, and I think it used to generate for u-series.
[14:25] <cjwatson> lp_publish@pepo:~$ ls -l /srv/launchpad.net/ubuntu-archive/ubuntu-misc/ | grep series
[14:25] <cjwatson> -rw-r--r-- 1 lp_publish lp_publish        0 Apr 23  2012 more-extra.override.q-series.main.supported
[14:25] <wgrant> cr3: There's no formal distinction between DEBUG/INFO and WARNING/ERROR, but the latter two generate OOPSes and generate cronspam.
[14:25] <cjwatson> -rw-r--r-- 1 lp_publish lp_publish        0 Oct 18  2012 more-extra.override.r-series.main.supported
[14:25] <cjwatson> -rw-r--r-- 1 lp_publish lp_publish        0 Apr 25  2013 more-extra.override.s-series.main.supported
[14:25] <cjwatson> -rw-r--r-- 1 lp_publish lp_publish        0 Oct 17  2013 more-extra.override.t-series.main.supported
[14:25] <cjwatson> -rw-r--r-- 1 lp_publish lp_publish        0 Apr 17 17:19 more-extra.override.u-series.main.supported
[14:26] <wgrant> Within the two categories is basically up to the engineer; we normally have scripts logging at DEBUG anyway.
[14:26] <wgrant> cjwatson: Hah
[14:26] <cjwatson> wgrant: Do you have an opinion on the matter at the tail end of https://rt.admin.canonical.com/Ticket/Display.html?id=72323 ?
[14:26] <wgrant> cjwatson: Is that the puppet vs juju thing?
[14:26] <cjwatson> Yeah
[14:27] <wgrant> Meh; we'll know pretty quickly if it breaks. As long as it doesn't get autoremoved.
[14:27] <cjwatson> I'm assuming that (a) the publisher isn't moving to juju in a long time and (b) maybe it's not worth arguing about
[14:27] <cjwatson> We can just keep it in -soyuz-deps until then I suppose.
[14:27] <wgrant> Indeed.
[14:28] <cjwatson> cr3: What are you working on, out of interest?
[14:30] <cjwatson> Oh, useful thing I noticed in my RSS feed: Linux 3.15 adds an atomic exchange-two-files (and I think also directories) operation
[14:32] <wgrant> The renameat extension actually went through?
[14:32] <wgrant> I remember discussion about that like a year ago.
[14:32] <wgrant> But it stalled
[14:32] <wgrant> Forever
[14:32] <wgrant> Ah, renameat2, nice.
[14:32] <cjwatson> Yeah.  It's still the annoying renameat2(..., RENAME_EXCHANGE) API rather than exchangeat(), but whatever
[14:33] <cjwatson> So I guess we just need to make sure support for that is in Python and then we can use it in 2020 or something
[14:34] <cjwatson> Will deploy that ubuntu-archive-publishing change after this publisher run finishes, and monitor the next run.
[14:34] <wgrant> I'm glad we avoided having sensitive data like an ~ubuntu-archive OAuth token on pepo...
[14:35] <cjwatson> Eh, this option is better, but it's not like pepo isn't already a much scarier machine than snakefruit (which has such a token).
[14:35] <wgrant> Indeed, I intend to convince people to gradually fix snakefruit :)
[14:35] <cjwatson> What would you suggest there?  It's kind of integral to how most of it works
[14:36] <cjwatson> Absent things like operation-limited oauth tokens
[14:36] <wgrant> Random people not having logins to it :)
[14:36] <cjwatson> Oh well yeah
[14:36] <cjwatson> Though I think it's just us and the graphite server
[14:36] <wgrant> It is always going to be scary, but it needn't also be the errors log machine or whatever it is.
[14:36] <cjwatson> It's a lot less scary than lillypilly was :)
[14:36] <wgrant> lillypilly was retarded, not scary.
[14:37] <wgrant> But yes
[14:37] <wgrant> Now we just need to get the errors stuff onto some new UE equivalent of carob, and all will be marginally less dreadfully.
[14:37] <wgrant> -ly
[14:37] <cjwatson> Oh, right, I think app-logs is new since I last checked /srv
[14:54] <cr3> cjwatson: sorry for the lag, I'm working on another project using Zope3 and I wanted to adopt similar coding as Launchpad like those described here: https://dev.launchpad.net/Hacking
[14:55] <cjwatson> Ah, I thought it might be in Launchpad itself, OK
[14:55] <stub> cr3: ERROR for broken things that we can continue from. FATAL for things that mean termination. WARNING for things someone should look at. INFO so you can follow normal operation. DEBUG when you are debugging a problem, DEBUG2->DEBUG9 when you need more DEBUG
[14:55] <stub> cr3: Hows life?
[14:56] <cr3> stub: hey dude, life is still awesome in montreal. how about you, still loving thailand?
[14:57] <stub> cr3: Just another usual coup, same as always really.
[14:59] <cr3> stub: you probably have as many coups as we have demonstrations in the streets :)
[15:00] <stub> Somewhat itchy feet... might move next year. Still, every time we talk about it we end up deciding Thailand suits us best for now.
[15:02] <stub> cr3: Oh, and as wgrant mentioned WARNING and ERROR additionally get an OOPS report generated
[15:03]  * cjwatson deploys ubuntu-archive-publishing
[15:07] <cr3> stub: I'd wait until the end of Game of Thrones before moving back to Australia :)
[15:08]  * cjwatson has a brief moment of "but Game of Thrones is being filmed in Northern Ireland", but I see what you mean :)
[15:52] <cjwatson> OK, new ubuntu-archive-publishing looks good