/srv/irclogs.ubuntu.com/2013/07/31/#juju-dev.txt

bigjoolsthumper: I've been enjoying watching my machines power themselves on and off00:01
sidneithumper: https://codereview.appspot.com/1213604300:14
* sidnei goes fetch dinner00:14
sidneior davecheney ^00:15
bigjoolsdavecheney: did you guys get your sprint sorted out yet? travel/hotel etc?00:15
davecheneybigjools: no, i have not heard anything00:25
bigjoolsmarvellous00:26
davecheneybigjools: mramm said that he had talked about it with robbie and it was approved00:26
davecheneyit sounded like he was in charge of arranging it00:26
davecheneyso, when I said 'not heard anything', i think i meant to say 'not heard anything actionable'00:27
bigjoolsok Dan is going to push it00:27
mrammdavecheney: bigjools: I don't need to be the one that submits the paperwork00:27
mrammbigjools: I talked to dan today, and we agreed that it needed to happen00:27
mrammbut there was a bit of a loop thrown in the works today, which I think is now resolved, and we will get the ball rolling in the morning00:28
mrammjust talked to danwest, expect an update tomorrow on the sprint00:33
bigjoolsroger00:33
* thumper has maas working properly01:22
thumperjust confirming01:22
thumperbut with no intervention from me01:22
thumperwe have addressable containers in maas01:22
* thumper hopes01:22
bigjoolsthumper: \o/01:24
thumperbigjools: well, the bootstrap now has the right bridge01:25
thumperjust hoping that the lxc container that I'm bringing up has the right setup01:25
thumperit is looking hopeful01:25
thumpernow if we can just get that address into state01:26
thumperok, that worked01:48
bigjoolsthumper: it just powered off01:48
thumperbigjools: yep, just dstoryed the env01:48
thumperyay maas01:48
* thumper wants one01:48
bigjoolswoo01:48
* thumper submits second branch01:48
bigjoolsif I had more boxes I'd deploy my personal stuff with it01:49
bigjoolsthumper: is there any hook in bootstrap that runs only once before tools get uploaded?01:51
bigjoolsazure provider needs to set up storage01:51
thumpertools are uploaded by the bootstrap command01:52
thumperso, no, not yet01:52
thumperfeel free to add one01:52
bigjoolsarseburgers01:52
bigjoolsthumper: when not uploading tools, is storage required before Bootstrap is called?01:56
thumperbigjools: um... not before bootstrap02:08
thumperat the start of bootstrap there is a check in storage for the file02:08
thumperto see if already bootstrapped02:08
bigjoolsthumper: can you point me to the code please?02:10
thumperbigjools: -> lp:juju-core02:11
thumper:P02:11
* thumper looks02:11
* bigjools revokes thumpers ssh access02:11
thumperenvirons/bootstrap.go  VerifyBootstrapInit02:11
thumperaxw, davecheney: I really want to change the meaning of --verbose for commands02:12
thumperwith the equivalent --quiet02:12
thumperto have nothing to do with actual logging02:12
thumperbut instead to refer to the amount of info output by the command02:13
axwthumper: yeah, that would be the normal thing to do :)02:13
thumperaxw: I have a branch in progress that tweaks how logging is configured02:13
bigjoolsthumper: ta02:13
axwthumper: ah cool. should I just abandon my change then?02:13
thumperaxw: no02:14
thumperthey complement each other mostly02:14
thumpermay clash on one or two small areas02:14
thumperbut don't land your change until we've looked at both02:14
thumperand discussed a better --verbose02:14
axwsounds good02:14
thumpermine is to store logging config in state02:15
thumperand use 'juju set-environment' to dynamically change logging confg on the fly02:15
thumperit is mostly done, but I've moved back to maas to make a groovey demo for next week02:15
bigjools+102:15
axwah that sounds nice02:16
thumpertrying to get containers working with maas02:16
axwso then you can get jujud to change on the fly?02:16
axwnps02:16
thumperso we can demo HA openstack into < lots of machines02:16
thumperaxw: there is already an environment watcher that watches for config changes02:16
thumperso using set-environment to update state02:16
thumperall the agents can be notified02:16
thumperthey then reconfigure the logging based on that change02:16
thumperpretty easy really02:17
thumperall the bits are in place already02:17
thumperjust took one change to loggo02:17
thumperso the validation of the config string can be done independently of the actual changing02:17
thumperaxw: please don't make any -v/-q changes to the logging branch02:18
thumperI want to change their meaning02:18
* thumper needs to find a nice recipe for dinner - moroccan lamb or chicken02:19
thumperhave preserved lemons to use02:19
=== axw_ is now known as axw
axwoops, juju consumed all my memory, twice. buggered something up...02:26
thumperhaha, oops02:47
thumperfwereade: yes, I'll look again at wallyworld_'s merge shortly02:48
sidneithumper: around?02:58
thumperaye02:58
thumperalthough about to go to the school to collect minions02:58
thumperbbs02:59
sidneilooking at sniffing the apt mirror configured in the host and putting apt_mirror into cloud-init for the container03:04
sidneias in $apt-config shell apt_mirror Acquire::http::Proxy03:04
sidneiapt_mirror='http://10.0.3.1:3142'03:04
thumperhmm...03:12
thumperinteresting03:12
sidneiactually that should be apt_proxy not apt_mirror03:13
sidneibut i remember there was an issue with https proxying, for which hazmat added Acquire::https::Proxy "false"; in pyjuju iirc03:14
thumperI know less about apt caching and mirroring than I do about networking03:18
thumperand that is saying something03:18
sidneithumper: so, would shelling out to apt-config in environs/cloudinit.go:Configure be the right place for this?03:20
thumpersidnei: probably better to have it isolated inside the local provider03:23
thumpersidnei: unless you think we should be looking for all containers03:23
thumperin which case, perhaps containers/lxc would be a better place03:23
sidneithumper: around cloudinitUserData?03:24
thumpersomething like that03:24
thumperwallyworld_: you around?03:24
wallyworld_yep03:25
thumperwallyworld_: two branches up to give us addressable maas containers03:25
thumperhttps://codereview.appspot.com/1200504903:25
thumperand the one it depends on03:25
wallyworld_cool, will look03:25
sidneithumper: in other news, the ubuntu-cloud lxc template sets up mirror properly if you don't provide a cloud-init config, but we unfortunately do. :(03:25
sidnei(IFF you set up a mirror in /etc/default/lxc that is)03:25
thumperwallyworld_: https://codereview.appspot.com/12005048/03:25
thumperhaha03:26
thumpersidnei: which means it should be relatively easy to match, right?03:26
sidneithumper: more or less. it sources /etc/default/lxc03:26
sidneii guess we could do the same03:27
thumperwallyworld_: got a few minutes for a hangout?04:11
thumperwallyworld_: to talk through the simplestream changes?04:12
wallyworld_ok, just give me a sec to complete some wor04:12
wallyworld_k04:12
thumperkk04:12
* thumper back in a minute04:12
wallyworld_thumper: i can talk now04:25
thumperkk04:25
thumperboo04:27
thumperfor the first time in ages bzr is giving me trouble04:27
thumperwallyworld_: hangout04:27
wallyworld_sure04:27
thumperwallyworld_: start one?04:27
wallyworld_i'll start04:27
wallyworld_https://plus.google.com/hangouts/_/d3f48db1cccf0d24b0573a02f3a46f709af109a604:27
wallyworld_thumper: ?04:29
thumpersorry04:30
thumperneed the ping04:30
sidneithumper: https://codereview.appspot.com/12143043 wip, missing tests. will finish tomorrow.04:35
sidnei30s for add-machine now. yay.04:39
=== tasdomas_afk is now known as tasdomas
thumperdavecheney: any chance of a +1 ? https://codereview.appspot.com/12005048/05:15
thumperjtv: or you?05:16
jtvthumper: otp05:17
thumperjtv: I've started using "make" and "make check"05:46
jtv\o/05:47
thumperjtv: wanna review something now?05:48
jtvthumper: still otp05:49
thumper:-|05:49
=== tasdomas is now known as tasdomas_afk
* thumper goes to do dinner06:03
thumperand hopes for some reviews06:03
thumperciao06:03
=== tasdomas_afk is now known as tasdomas
rogpeppemornin' all07:38
axwmorning07:39
TheMuemorning07:41
TheMuejust watching http://vimeo.com/71278954, really good07:41
=== tasdomas is now known as tasdomas_afk
=== tasdomas_afk is now known as tasdomas
axwnote to self: don't try to run race detector on shitty laptop again08:38
TheMueaxw: *lol*08:38
axwI wish Lenovo would just come out with their 4th gens already08:38
=== tasdomas is now known as tasdomas_afk
rogpeppefwereade: what's the decision about whether we can use go1.1 features yet?09:32
=== tasdomas_afk is now known as tasdomas
dimiternman my laptop died on me again :( again issues with unity/compiz/amd video drivers10:09
axwnight folks10:18
allenapHi, can anyone see why https://code.launchpad.net/~allenap/juju-core/azure-open-machine-ports/+merge/177717 isn't landing? There are two LGTMs...10:20
allenapAh! Maybe it's the commit message. lbox doesn't set that, sigh.10:21
rvbaallenap: there is a commit message10:21
allenaprvba: I just added it.10:21
rvbaah ok :)10:21
mgzallenap: read the message about how to land. :) anyway, commit message now set, and bot is running the tests10:22
allenapmgz: I must have missed that :)10:28
rogpeppefwereade: ping11:03
fwereaderogpeppe, pong11:03
rogpeppefwereade: have you got your suggested AgentEntity (or whatever name) interface changes done yet?11:04
rogpeppefwereade: i was about to go in that direction after thinking through it a bit11:04
fwereaderogpeppe, largely,but not really proposable yet11:04
fwereaderogpeppe, sweet!11:04
fwereaderogpeppe, I'd be more than happy to step up the pace there though11:05
rogpeppefwereade: i still think that state.Agent isn't the right name (we've got too many things called "agent" already)11:05
fwereaderogpeppe, sure, I don't think it's really a great name11:05
rogpeppefwereade: EntityThatCanHaveAnAgent :-)11:06
fwereaderogpeppe, but so much of unit/machine is deeply bound up with agentness that I think it's really quite a useful thing11:06
fwereaderogpeppe, EnsureDead/Remove forexample11:06
rogpeppefwereade: yeah11:06
rogpeppefwereade: and it makes it easier to define an IsAgent authorizer method that's not just !IsClient11:07
rogpeppefwereade: which is what i'm doing currently and doesn't seem quite right11:07
fwereaderogpeppe, I'dbeen just explicitly doing IsUnitAgent() || IsMachineAgent()11:08
rogpeppefwereade: ah, well that might be as good actually11:08
rogpeppefwereade: i'll propose a small change that just adds the interface, if that seems ok11:20
rogpeppefwereade: then we can both move forward building on that11:20
fwereaderogpeppe, ok, sgtm11:24
dimiternfwereade, rogpeppe: standup?11:33
dimiternmgz: ^^11:33
mgzta11:33
bigjoolsrogpeppe: howdy11:36
bigjoolsjust wondering, why should opening a new environ not have side effects?11:36
dimitern*facepalm* my testing juju environment on ec2 was running for 9 days straight! I forgot to destroy it.. bugger $18 wasted12:16
TheMuedimitern: ouch12:23
sidneirogpeppe: thanks for the review! i thought about unescaping in cleanSettingsMap but it meant changing some tests. i guess i'll do it anyway.12:45
sidneirogpeppe: re: changing copyMap to take a replacer, how can i make it so that the replacer is optional? this seems to be not encouraged by go12:46
rogpeppesidnei: i'd suggest changing it to take func(string)string12:47
rogpeppesidnei: then you can pass func(s string)string{return s} to do nothing12:47
rogpeppesidnei: well, for the identity transformation anyway12:48
sidneirogpeppe: does that mean changing all the call sites where copyMap is used?12:48
rogpeppesidnei: yeah. there are only 6 of them.12:50
sidneirogpeppe: oh, duh. didn't realize it was internal, should've known better. :)12:50
rogpeppesidnei: you could always make nil mean identity if there are lots of calls like thatr12:50
rogpeppesidnei: lower case :-)12:51
sidneiindeed!12:51
* sidnei puts his golang newbie hat on12:51
rogpeppesidnei: the most important thing to fix is that bug in megawatcher.go - i think that will currently wrongly produce keys with escaped dots12:52
sidneirogpeppe: ack, working on it.12:53
mgzokay, I actually undertand some of this watcher stuff now... has only taken a week13:03
fwereadehey, can anyone give me a second review of https://codereview.appspot.com/12105043/ please?13:13
mgzfwereade: the resoning being that panic isn't approprite, because we could just junk instate?13:14
fwereademgz, the panic is now definitely inappropriate because it could happen on the api server13:15
fwereademgz, it didn't seem sensible to clone the validity checks across api and state though13:16
mgzfwereade: lgtm13:16
fwereademgz, cheers13:16
rogpeppefwereade: you've got another review13:25
rogpeppefwereade: what's the motivation behind the interactive destroy-environment CL?13:26
fwereaderogpeppe, long-existing bug?13:26
rogpeppefwereade: ah, there wasn't a bug referenced in the CL13:26
fwereaderogpeppe, trivial embarrassing parity issue13:26
rogpeppefwereade: ah, the python implementation is interactive?13:27
fwereaderogpeppe, yeah13:27
rogpeppefwereade: blech13:27
mgzadding --no-really flags to dangerosu commands isn't too bad13:28
fwereaderogpeppe, I'm inclined to call it validateSet and keep the set-specific terminology13:28
rogpeppemgz: "destroy-environment" is a long enough name as it is13:28
mgzbut if you care about non-interactiveness (ie, in a script), typing length isn't too important13:29
rogpeppemgz: if you've typed all of that, you don't really need another hoop to jump through. but i appreciate some feel that more nannying is appropriate.13:29
rogpeppemgz: if i'm calling destroy-environment in a script, i probably don't want things to suddenly turn interactive on me. anyway, if python juju does it, we can't avoid it.13:30
mgzit's not that hard to braino destroy-machine etc into destro-environment13:30
* rogpeppe wonders what happened to the original unix approach13:31
mgzmen are no longer real men, grey beards are no longer real grey beards13:32
rogpeppemgz: people still happily use rm though13:32
rogpeppeha! i'd forgotten, many people alias it to rm -i.13:32
mgzwhich requires flags to not nag you if you want to remove a tree rather than just one file13:33
rogpeppemgz: extra flags, fine. sudden interactiveness, not so fine. in my entirely biased and subjective opinion :-)13:34
mgzwell, we could make destroy-environment do *nothing* unles you pass --no-really :)13:35
rogpeppemgz: i'd prefer that to reading stdin, which seems similar but worse13:36
=== tasdomas is now known as tasdomas_afk
=== tasdomas_afk is now known as tasdomas
sidneirogpeppe: im having a hard time adding something to allWatcherChangedTests that triggers the megawatcher bug. halp?13:47
* rogpeppe has a look13:48
rogpeppesidnei: i *think* you'll see the issue if you have a set with a setUp function that creates some settings with a dot in a settings name13:50
sidneirogpeppe: this is my attempt so far: http://paste.ubuntu.com/5932838/13:50
=== tasdomas is now known as tasdomas_afk
sidneiwith dottedConfig being a config.yaml with 'key.dotted' as a setting13:51
rogpeppesidnei: and that passes?13:51
sidneirogpeppe: it does yes13:51
=== tasdomas_afk is now known as tasdomas
rogpeppesidnei: hmm, perhaps you could push your branch and i'll have a quick look13:55
rogpeppesidnei: i can't quite see how it can be passing, but i might well be missing something stupid13:56
sidneirogpeppe: lp:~sidnei/juju-core/encode-dollar-and-dot-213:57
rogpeppesidnei: oh hold on13:57
rogpeppesidnei: i think i see the problem13:58
rogpeppesidnei: try this instead13:58
rogpeppesidnei: do a global substitute of "blog-title" by "blog.title" and see if tests still pass13:59
rogpeppesidnei: in megawatcher_internal_test.go13:59
sidneirogpeppe: i'd need to change the on-disk charm, it complains blog.title is not valid otherwise, thus the AddCustomCharm13:59
rogpeppesidnei: i don't think your test is quite tickling the place where the bug is14:00
sidneiyeah, i have the same suspicion. more suspicious perhaps is that if i remove the Config from 'add', the test fails because Config is nil, i'd expect it to be set from setServiceConfigAttr(c, svc, "key.dotted", "boring") in setUp14:01
sidneiuhm i think the watcher.Change should be "settings" not "services" to trigger it14:05
dimitern rogpeppe, fwereade: https://codereview.appspot.com/12165043 - fixes lp:120662814:06
dimiternbug 120662814:06
_mup_Bug #1206628: Incorrect unit name in upstart job <juju-core:In Progress by dimitern> <https://launchpad.net/bugs/1206628>14:06
rogpeppesidnei: yes, an excellent point14:07
dimitern_mup_ should respond to "lp:#" as well as to "bug #"14:07
rogpeppesidnei: i triggered the bug by changing blog-title to blog.title (and in the charm)14:07
rogpeppesidnei: so it is at least confirmed as a bug :-)14:08
sidneirogpeppe: cool. i think i'm on track again14:08
rogpeppesidnei: great, thanks14:08
rogpeppesidnei: i'm glad you took the time to make sure the test fails before adding the fix14:09
sidneirogpeppe: my time in the landscape team with niemeyer surely paid off :)14:10
rogpeppesidnei: yeah, that's where i got it from too14:10
fwereadedimitern, LGTM, just trivials14:11
dimiternfwereade: cheers; I'll change the other c.Logf() to use "test %d. %q" as well14:12
fwereadedimitern, I find ":" cleaner than ".", I think14:12
dimiternfwereade: ah, ok, np14:12
fwereadedimitern, "0." makes me think someone's trying to save typing while defining floating point numbers ;p14:13
dimitern:)14:13
dimiternfwereade: wasn't thinking much how to format it, but i'll do that from now on14:13
fwereadedimitern, cheers14:14
sidneiim still amazed that go fmt doesn't format anything that i touch. emacs' golang mode is freaking awesome.14:17
rogpeppedimitern: reviewed14:18
sidneirogpeppe: https://codereview.appspot.com/1216804314:18
dimiternsidnei: it definitely is! unfortunatelly I couldn't make emacs recognize my $GOPATH, etc. stuff, so in order for gofmt and godef to work in emacs I have to launch it from a terminal, not the launcher14:18
dimiternrogpeppe: thanks14:24
dimiternrogpeppe: what's wrong with testUnitTag := func () { names.UnitTag(..) } ?14:24
dimiternrogpeppe: we don't need or use the return value14:25
rogpeppedimitern: oh, nothing at all. ignore me!14:25
dimiternrogpeppe: :) ok14:25
* sidnei lunches14:27
* dimitern sighs14:44
dimiternfrom all things that can go wrong today, most have14:45
dimiternok, all merged and tested to be ok15:16
sidneican has a pair of reviews on: https://codereview.appspot.com/12168043/ ?15:29
dimiternsidnei: looking15:56
rogpeppefwereade, dimitern: https://codereview.appspot.com/12175043/16:06
dimiternsidnei: reviewed16:06
dimiternrogpeppe: looking16:06
sidneithanks!16:06
dimiternrogpeppe: done16:13
rogpeppe"16:14
rogpeppeI'm not sure this is a good idea. Why panic when we can have a16:14
rogpeppecompile-time error, when trying to use an unimplemented method?16:14
rogpeppe"16:14
rogpeppedimitern: because we need to implement all those methods16:14
rogpeppedimitern: and the alternative is writing them all out in full, each one with its own panic message16:14
dimiternrogpeppe: and why will they panic if we omit them?16:15
rogpeppedimitern: it won't compile if we omit them16:15
sidneirogpeppe: copyMap and replaceKeys ended up being very similar, except copyMap makes a copy and replaceKeys doesn't. suggestions?16:15
dimiternsidnei: implement copyMap as y := replaceKeys(...), return y (the copy) or something?16:16
rogpeppesidnei: if there are good reasons we don't want to copy the map in some places, i think it's ok that they're different functions.16:16
rogpeppedimitern: but they should look as similar as possible - perhaps they should both take func(string)string as an argument16:17
sidneirogpeppe: yes, i made them both take func(string)string16:17
dimiternrogpeppe: i wasn't asking that - I didn't get the part in the comment how any call in AgentEntity will panic "automatically" if we try to use it16:17
rogpeppedimitern: because we're embedding the AgentEntity value which is a nil interface16:18
sidneirogpeppe: i can't think of a good reason not to copy the map except needless copy16:18
dimiternrogpeppe: if one of them replaces and makes a copy before returning, why not make the former call the latter16:18
dimiternrogpeppe: ah, nice! didn't spot that16:18
rogpeppedimitern: because it's somewhat more efficient16:18
dimiternrogpeppe: cool, I like it16:18
rogpeppedimitern: it's a nice little idiom, isn't it?16:19
dimiternrogpeppe: indeed16:19
rogpeppesidnei: it can be worth avoiding needless copying16:20
rogpeppesidnei: especially if the penalty is only 2 or 3 lines of code in one place16:20
dimiternrogpeppe: I upgraded my review to LGTM+ then16:21
rogpeppedimitern: thanks16:21
pavelpachkovskijI have a weird bug, you can't define interface: juju-info in your metadata.yml when deploy from local repo16:33
=== tasdomas is now known as tasdomas_afk
dimiternpavelpachkovskij: any relation starting with "juju-" is reserved16:53
pavelpachkovskijdimitern, I see, then it's a "bug" in charm which provide this interface16:53
dimiternpavelpachkovskij: some charms use it (even though it's wrong) to provide features like "relatable to any other charm"16:54
pavelpachkovskijbut this way I can't implement any relation hook in my charm16:54
dimiternpavelpachkovskij: can you explain a bit what are trying to do?16:55
pavelpachkovskijfor example, there is a logstash-agent charm in the store16:55
pavelpachkovskijI want to have a hook in my charm which triggers when logstash-agent joins16:56
dimiternpavelpachkovskij: just a moment, to look at it, 'cause i'm not particularly familiar with that one16:56
dimiternpavelpachkovskij: ha, so you see this charm is a subordinate16:57
dimiternpavelpachkovskij: it does not provide anything you can require16:57
dimiternpavelpachkovskij: it requires "juju-info", so it can detect any other service that can relate to it, so it can set up some type of subordinate logging of it16:58
pavelpachkovskijdimitern, it's not a big issue to me at the moment, though I thought someone may want to implement such hook16:58
dimiternpavelpachkovskij: well, there are 3 types of charm relations: providers, requirers and peers16:59
dimiternpavel: well, there are 3 types of charm relations: providers, requirers and peers16:59
pavelthat's clear, but to be able to execute relation hooks you have to define this relation in metadata.yml17:00
dimiternpavel: you can sit at one endpoint of each, or at the opposite endpoint, so that R->P or P->R, or Peer<->Peer17:00
pavelotherwise they are not triggered17:00
dimiternpavel: what i'm trying to say is, logstash-agent is only a client, you can relate it to any service17:01
dimiternpavel: and the service you're relating it to won't get a hook executed, because it's "serving" to logstash-agent17:02
paveldimitern, yes, that's clear too, but i can't implement logstash-agent-joined hook17:02
dimiternpavel: why do you need to do that?17:02
paveldimitern, this is not the question, the question is that I can't do this17:02
dimiternpavel: not with juju-info, no17:03
pavelok17:03
dimiternpavel: if the charm provides some other interface, you can use it17:03
paveldimitern, so you want to say that it was supposed to work this way?17:03
dimiternif you want, think of "juju-info" as a system, one-way channel that you can read from, but not write back17:03
paveldimitern, ok, thanks for explanation17:04
dimiternjuju-info is not really an interface, it's like a broadcast call17:04
dimitern"give me everything that happens"17:04
dimiternso it's not an endpoint you can connect, but more like a multicast17:05
dimiternpavel: no worries, i hope my description made some sense - there are good (and getting better) docs in lp:juju-core/doc/ in the source and also here https://juju.ubuntu.com/docs/17:06
rogpeppeif anyone has a moment, i need another review on this, please: https://codereview.appspot.com/1217504317:06
dimiternsome of them slightly outdated, but don't hesitate to ask here for help, somebody will be around to answer17:07
dimiternrogpeppe: :) I can give you a second LGTM17:07
rogpeppedimitern: hey, that would be cool. unfortunately i don't think LGTM+LGTM=2 * LGTM17:08
dimiternrogpeppe: yeah17:09
dimiternrogpeppe: btw can you read the scrollback and see if my explanation about juju-info made sense? i'm never so sure with charms stuff17:10
rogpeppedimitern: looking17:16
rogpeppedimitern: while i check it's right, here's another CL for you: https://codereview.appspot.com/12183043/17:16
rogpeppedimitern: it actually integrates the upgrader17:16
rogpeppedimitern: just waiting on a live test now17:16
dimiternrogpeppe: cool! looking17:16
rogpeppedimitern: http://paste.ubuntu.com/5933446/17:17
rogpeppedimitern: yay!17:17
sidneirogpeppe: i'll keep the duplication then, thanks!17:18
dimiternrogpeppe: \o/17:18
dimiternandreas__: hey17:19
andreas__dimitern: hey17:19
andreas__ahasenack: go away17:19
=== andreas__ is now known as ahasenack
dimiternandreas__: you'd be thrilled to know your bug 1206628 from yesterday is resolved :)17:19
_mup_Bug #1206628: Incorrect unit name in upstart job <juju-core:Fix Committed by dimitern> <https://launchpad.net/bugs/1206628>17:19
rogpeppedimitern: your juju-info explanation sounds reasonable17:20
dimiternrogpeppe: thanks!17:20
jcastrohey who changed the constraints from "cpu" to "cpu-cores"? and when?17:24
dimiternrogpeppe: lgtm17:24
dimiternjcastro: some months ago, after a discussion17:24
rogpeppedimitern: EnsureWeHaveLXC has gone because it's a 1.10 compatibility hack, and removed as part of https://code.launchpad.net/~rogpeppe/juju-core/355-remove-1.10-hacks/+merge/17763817:25
dimiternjcastro: it was due to inconsistent support across providers - ec2, openstack, maas17:25
dimiternrogpeppe: ah, nice!17:25
jcastroyeah so17:26
jcastrono one bothered to update the docs!17:26
jcastroDoing so now17:26
jcastrocan we make it so if people change end-user behavior that they update the docs?17:26
dimiternrogpeppe: then please live test upgrade 1.10 -> last stable and tip17:26
rogpeppedimitern: will do17:26
dimiternjcastro: that'll be awesome, but afaik the docs were pretty much in a state of flux until recently17:27
jcastrodo constraints still support instance-type?17:27
dimiternjcastro: no17:27
jcastrodimitern: yeah, I think we should just say docs are ready, please update as you land things17:27
dimiternjcastro: they never did in juju-core17:27
jcastrook17:27
jcastrohttps://juju.ubuntu.com/docs/charms-constraints.html17:27
jcastrodo I fixed the CPU type bits17:27
jcastrodo I just totally cut out instance-types?17:28
dimiternjcastro: which docs should be updated and where?17:28
jcastrothe branch is lp:juju-core/docs17:28
jcastrothey're just html517:28
jcastrocommitting to that branch regenerates the docs every 24 hours17:28
rogpeppedimitern: i'm hoping that it's ok to require people that use the local provider to apt-get install lxc themselves17:28
dimiternjcastro: i think so, but maybe it's better to pass a mail through the list17:29
jcastroI am doing so now!17:29
dimiternrogpeppe: if so, there should be at least a warning when it's not there17:29
rogpeppedimitern: yeah, i'm not sure what happens17:29
rogpeppedimitern: any idea where i can get a copy of 1.10 from?17:29
dimiternrogpeppe: ppa?17:30
rogpeppedimitern: doesn't that just give you the latest version?17:30
dimiternrogpeppe: https://launchpad.net/ubuntu/+source/juju-core17:30
dimiternrogpeppe: there's a 1.10 in raring backports there17:31
dimiternrogpeppe: or alternatively, track the version change commit and revert to that?17:31
rogpeppedimitern: not so easy with all those dependency changes17:32
rogpeppedimitern: sadly17:32
rogpeppedimitern: that's what i wanted to do first17:32
dimiternrogpeppe: yep17:32
dimiternrogpeppe: we are in dire need of requirements tracking17:32
rogpeppedimitern: yeah17:32
rogpeppedimitern: hmm, i'm surprised it doesn't mention 1.12 here https://launchpad.net/ubuntu/+source/juju-core17:39
dimiternrogpeppe: I'm not convinced we did 1.12 at all, maybe it was discussed by not done17:40
rogpeppedimitern: davecheney sent an email that seemed to imply it was done17:40
sidneirogpeppe, dimitern: updated, one last review?17:41
rogpeppesidnei: looking17:42
dimiternsidnei: don't you use the "reply" feature on rietveld? it's very useful and it sends your draft replies when you do lbox propose17:43
dimiternsidnei: it's a bit hard to track what was changed where17:43
sidneidimitern: uhm, never used that. reply to the review comments you mean?17:44
dimiternsidnei: yeah17:44
dimiternsidnei: it's very convenient - just go to the file with the inline comment, click on it and you can reply, say "Done.", etc.17:45
dimiternsidnei: and RV collects them as drafts until you send them manually or through lbox17:45
sidneidimitern: otoh, did you use the 'delta from patch set' link?17:45
dimiternsidnei: yeah, I used that, but my point is the link between reviewer comments and replies gets broken17:46
dimiternsidnei: not to worry, just saying17:46
sidneiok, it's only my 3rd branch, i'll do that next time :)17:46
dimiternsidnei: that's why I'm mentioning it :)17:47
dimiternsidnei: thanks17:47
dimiternsidnei: do you also use bzr rv-submit when you're ready to land the CL?17:47
sidneidimitern: first time i heard that17:47
sidneibzr: ERROR: unknown command "rv-submit"17:48
dimiternsidnei: just a sec17:48
dimitern$ mkdir -p ~/.bazaar/plugins17:49
dimitern$ bzr branch lp:rvsubmit ~/.bazaar/plugins/rvsubmit17:49
sidneiso 1) reply to review comments, 2) lbox propose, 3) bzr rv-submit once everything is clear?17:49
dimiternsidnei: ^^17:49
rogpeppesidnei: reviewed17:50
dimiternsidnei: yeah, rv-submit takes care of setting the commit message on the MP in LP, checking for approvals, letting you edit the message if you wish, and finally setting the MP to Approved, so the tarmac bot can pick it up and land it17:50
rogpeppedimitern: ha, i didn't know about rv-submit17:50
dimiternrogpeppe: it's f*cking amazing:)17:51
sidneidimitern: awesome. i'll use that then. /me rushes to doctor appt.17:51
dimiternotherwise, you'll have to do that yourself on LP17:51
rogpeppedimitern: yeah, that's what i've been doin17:51
rogpeppeg17:51
dimiternsidnei, rogpeppe: one caveat you'll have to keep in mind is that rv-submit does not push your branch, so be sure to do one last lbox propose (or bzr push) before that17:52
rogpeppedimitern: ok, that's worth knowing thanks17:52
dimiternusually I do lbox propose with the last changes + sending my draft replies from the review17:53
rogpeppetime to stop. will do the upgrade check tomorrow, when i've managed to build a 1.12 instance17:56
rogpeppeg'night all17:56
dimiternnight!17:56
=== tasdomas_afk is now known as tasdomas
ahasenackguys, if I have a public-bucket-url defined in my environment, does that mean I need to have the tools there too, and not just simplestreams?19:18
ahasenackboth the tools and simplestreams are taken from public-bucket-url, if it's defined?19:18
=== tasdomas is now known as tasdomas_afk
thumpermorning21:25
thumpermgz: around?21:25
sidneihey thumper, sent an email about containers and apt proxy, in case you're interested in replying *wink*21:27
thumperhi sidnei21:27
thumperI'm starting to get into travel mode21:28
thumpergot things to get organised21:28
thumperand kinda focused on the maas demo of containers21:28
thumperbut I'll try :)21:28
sidneithumper: btw, i'll be at the sprint too21:29
thumpersidnei: cool21:29
sidneii keep forgetting that you have to travel almost twice as much than me21:31
thumpertwice as much or twice as far?21:38
* thumper gets ready to hurl his toys out of the cot21:40
thumperfwereade, mramm: either of you two around?21:41
sidneiboth i guess :) /me looks it up on google maps21:44
sidnei11689.8 Miles vs 6417.2 Miles21:46
thumperwow21:46
sidneito london21:46
thumperYou kinda get used to it21:46
thumperI get in the zone and just watch movies and sleep21:47
sidneisame ;)21:47
sidneiit's 11h30min from sao paulo to london21:48
* thumper looks at tripit21:52
thumperso I'm at the airport 4pm Saturday21:53
thumperand land IOM 4:05pm Sunday21:53
thumperand add 11 hours TZ diff21:53
thumper33 hours21:53
thumpernot door to door21:53
thumperthat's probably another hour or so21:54
sidneilovely. ill be at the airport at 4pm Saturday and land at IOM 9PM Sunday. the magic of timezones.22:00
benjigary_poster: I just had a successful test run, so it's ready to land22:03
benjiwell, once I get some reviews22:03
benjiand I'm in the wrong channel22:03
gary_posterbenji awesome, thanks!22:03
benjiI'll just stay here22:03
gary_posternenji lol ok22:03
benjiI'm going to be in the wrong channel all the time from now on22:03
gary_posterbenji22:03
* benji /joins #php22:03
thumperwallyworld: a chat if you please as soon as you start22:03
wallyworldthumper: now is ok22:03
gary_posterok sounds good, please just make sure I'm actually on that channel too :-P22:04
benjiheh22:04
thumperwallyworld: ok, I'll start a hangout22:04
thumperwallyworld: https://plus.google.com/hangouts/_/dcbe5477374b029b74897c9dffb381cf37f9be97?hl=en22:04
bigjoolshullo.  I need to update gwacl on the bot before landing a core change, how do I do that?23:21
mrammthumper: just got back23:52
thumpermramm: and I'm just leaving 8)23:53
davecheneybigjools: i believe the procedure is still the same as before23:58
davecheneymgz or jam need to do that23:58
bigjoolsI don't know the procedure at all sadly23:58
bigjoolsso I am blocked all day on landing my branch?23:59
davecheneybigjools: i believe so23:59
davecheneywallyworld: do you have keys to update the bot environment ?23:59
wallyworlddavecheney: what do you need?23:59

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!