/srv/irclogs.ubuntu.com/2013/11/28/#juju-dev.txt

hazmatwhat's the current dev milestone? 1.17.0 or 1.17.101:04
axwhazmat: 1.17.0 is not released yet AFAIK01:07
axwhmm01:07
hazmataxw, i see some commits landing for bugs against 1.17.1 its a bit unclear01:08
axwyeah01:08
axwbetter ask sinzui01:08
axwthere's been no announcement, but I'm a bit confused why some 1.17.0 bugs are released01:08
hazmatmost of those are external to the src01:09
axwwallyworld_: what are you up to? am I meant to be testing the entire backup/restore procedure again?01:10
wallyworld_axw: hey, give me a minute and i'll let you know what we need to do today, just finishing a doc01:11
axwok01:11
bigjoolswhat does it mean when I get a "no CA certificate in environment configuration" ?01:20
bigjoolsI tried to copy an environment from another machine but I guess something is missing01:20
hazmatbigjools, you need to copy the jenv file the environments.yaml config isn't useful byitself (or even needed if you have the jenv)01:25
bigjoolshazmat: I did01:25
hazmatbigjools, that's strange the jenv file has the certs01:25
wallyworld_bigjools: did you copy the jenv file as well?01:25
wallyworld_bah, too late01:26
bigjoolsyeah I see the ca cert in the jenv file01:26
bigjoolsoh hmmm I think I see a problem.  I installed from the PPA but 1.13 is still in the path01:27
bigjoolsdafuq01:27
bigjoolsso, rm /usr/bin/juju and reinstalling the juju-core package fixed it.  It's a package bug.01:29
wallyworld_axw: hey, you see my email? i have 2 branches to land in 1.16. one is just about to finish in the bot, the other should start straight after01:37
wallyworld_and then we can test01:37
wallyworld_i'll test on ec201:37
axwwallyworld_: my net connection keeps dropping in and out, so maybe drop me an email in case I miss (or have missed) instructions01:39
wallyworld_<wallyworld_> axw: hey, you see my email? i have 2 branches to land in 1.16. one is just about to finish in the bot, the other should start straight after01:39
wallyworld_<wallyworld_> and then we can test01:39
wallyworld_<wallyworld_> i'll test on ec201:39
wallyworld_last branch in bot now01:40
axwok01:40
axwit makes most sense for me to test on MAAS, but I don't like my chances with my shitting connection today01:40
axwshitty*01:40
axwwallyworld_: juju-core/1.16?01:41
wallyworld_yeah01:41
wallyworld_the set-env fix is landing01:41
wallyworld_safe mode support just landed01:41
axwwallyworld_: are you testing the "fallback solution" on EC2?01:45
wallyworld_yeah01:45
bigjoolsis it possible to add a new service unit with a different config to an existing one?01:46
wallyworld_axw: do the additions to the document make sense?01:46
axwwallyworld_: the safe mode bit?01:46
wallyworld_yeah01:46
axwyep01:46
wallyworld_cool, hopefully will also make sense to folks on site01:46
bigjoolsif not, how do I deploy a service again with a different config?01:46
wallyworld_bigjools: what sort of config?01:47
bigjoolsI have a tarmac charm, and I am deploying again with a different charm config for a different branch to land01:47
bigjoolsand if I try "deploy" again I get "ERROR cannot add service "tarmac": service already exists"01:47
wallyworld_hmmm. not sure. i know you can add a service and give it a different name01:48
bigjoolsok let's try that01:48
bigjoolsargh01:49
bigjoolsaffects the charm config01:49
wallyworld_:-(01:50
wallyworld_i'm not sure. maybe davecheney  knows?01:50
davecheneysup!01:50
wallyworld_davecheney knows everrryyythiiiing01:50
davecheneydavecheney !knows everything01:50
wallyworld_bigjools has a question01:50
wallyworld_see scrollback just above01:51
davecheneybigjools: juju deploy tarmac tarmac201:51
bigjoolsheh01:51
davecheneyby default, fi you don't give a service name, we take the name from the charm01:51
bigjoolsdavecheney: yeah I did that, had to change the charm config of course01:51
bigjoolsthanks both01:51
davecheneykk01:51
wallyworld_bigjools: that's what i told you to try isn't it?01:51
bigjoolswallyworld_: it is, and I just thanked you.01:51
wallyworld_ah, np. i thought you said it didn't work01:52
wallyworld_sorry, comprehension problm then01:52
bigjoolsyou were leaping like a salmon to that conclusion :)01:52
wallyworld_swish swish goes my tail01:52
wallyworld_axw: ok, so both branches landed01:53
axwwallyworld_: cool, thanks, I'll get testing01:53
wallyworld_me too01:54
wallyworld_axw: how's it going?02:58
axwwallyworld_: doing the restore now02:58
wallyworld_seems to work on ec202:58
axwnearly there02:58
wallyworld_i tweak the doc a little02:58
axwwallyworld_: which bit?03:00
wallyworld_here and there eg i added " around <instanceId> in the update db step03:01
wallyworld_also, the restart rsyslog command at the end was messed up a bit (formatting)03:01
axwok cool03:02
wallyworld_axw: i'll send the email now since we have run out of time. but it looks like everything is ok03:12
axwwallyworld_: I've just fully restored03:13
axwsafe-mode works03:13
wallyworld_yay03:13
axwI'm just going to confirm that turning safe-mode off destroys the original instance, but htat's bonus points I think03:13
wallyworld_ok, let me know03:13
wallyworld_i forgot that bit, i'll try too03:13
axwwallyworld_: yep, did the trick03:15
wallyworld_/o/03:15
axwI'm surprised it immediately destroyed the instance tho?03:16
wallyworld_\o/ even03:16
wallyworld_yeah03:16
wallyworld_it will trigger straight away03:16
axwok nps, I thought it would only happen when you add/remove a machine03:16
wallyworld_we wanted to not do that so added a hook03:16
wallyworld_s/hook/trigger03:16
wallyworld_whatever03:16
wallyworld_:-)03:16
axwyep it's better than what I expected :)03:19
jamwallyworld_: if you're poking at the doc, try to make sure it is clear that "<foo>" is intended to be replaced with a real value04:57
jamrather than the actual text04:57
wallyworld_sure. i thought that wouold be obvious04:57
jamwallyworld_: well, there are a lot of potential syntaxes, and these are people who know nothing about the line you're having them cut&paste04:57
jamso while it is a little obvious, I've tried to be *very* explicit04:58
wallyworld_ok04:58
wallyworld_actualy, the doc already says it04:58
jamif it is <newInstanceId> that is bits I added04:59
axwmaybe change them to a different colour04:59
jamI see at least <name> and <admin-secret> that don't explicitly state they are variables to be replaced05:00
jamand <name> mabye not05:00
jamsince it is just descriptive05:00
wallyworld_well we should probably have a glossary then05:00
wallyworld_eg <foo> means replace with actual value etc05:01
wallyworld_that sort of thing should be done by tech write when the doc is productised05:01
wallyworld_bbiab, school pickup time05:02
axwwallyworld_: https://streams.canonical.com/ just has 1.17.0 (which isn't released??) - am I looking in the wrong place?05:56
axwalso, I thought it was /juju05:56
wallyworld_axw: that was a test copy06:12
wallyworld_it needs to be deleted06:13
axwwallyworld_: ok.06:13
wallyworld_and yes, it's in the wrong directory :-)06:13
axwno worries, I guess that'll get sorted when 1.17 is released06:13
wallyworld_yep, curtis is all over it06:14
jamwallyworld_: axw: from what he said yesterday, they're going to do a test release of 1.16.3 into streams.canonical.com, which should fix all that up, and then do 1.17.0 from there.06:26
axwjam: okey dokey06:27
wallyworld_yeah, that's my undertsanding too06:27
wallyworld_the 1.17 stuff that's there was from when we tested in SFO06:27
wallyworld_to make sure the signing worked etc, when ben was aroud to do it for us06:28
jamhazmat: for 1.17.1 vs 1.17.0, we were going to release 1.17.0 last week, so we retargeted bugs, and made important bugs targeted to 1.17.1. However, since the release got delayed, we kept doing stuff. I retargeted the ones that landed back to 1.17.008:16
rogpeppefwereade: well done for spotting the getBroker omission08:27
mgzmorning!09:02
jammgz: morning. I have to run to the grocery store, I'll try to be back in time for the team meeting, but don't hold it up for me.09:19
mgzjam: sure09:20
=== racedo` is now known as racedo
jamfwereade: TheMue, fwereade, rogpeppe, dimitern: weekly team meeting ?10:02
jamhttps://plus.google.com/hangouts/_/calendar/bWFyay5yYW1tLWNocmlzdGVuc2VuQGNhbm9uaWNhbC5jb20.09gvki7lhmlucq76s2d0lns804?authuser=110:02
rogpeppejam: ok, will leave the bridge hangout10:03
jammramm: if you want to join us ^10:03
* dimitern lunch10:57
wallyworld_jam: i've updated the backup scripts branch if you get a chance to look. as well as doing the extra logs, it also restarts mongo if the dump fails10:57
wallyworld_it also extracts environ config as json10:58
jamwallyworld_: just to make sure I understand, that script isn't intended for the NEC issue, but *is* useful as a general "backup your juju state server", right?10:59
wallyworld_jam: yeah, i wasn't even going to commit to 1.16 branch11:00
wallyworld_but we (fwereade and me) decided it is useful to have11:00
wallyworld_and since you had commented on it previously, i thought i'd ask :-)11:00
jammgz: so I think you should probably put together a patch to the juju-update-bootstrap plugin that allows dying things to be updated, you can even propose it, but we should pause for landing it until we sort out the release side of things.11:01
jamwallyworld_: I actually have it open in one of my tabs, I'll give it a loo11:01
jamlook11:01
wallyworld_thank :-)11:01
mgzjam: I have it11:01
jamwallyworld_: is there a reason we are backing up /etc/init/juju-machine-*.conf, but not a juju-unit-*.conf ? (there may not be one, I thought the unit agents were also run via upstart, but I could be off there)11:02
wallyworld_jam: i think it was rules out as being needed, maybe by tim. not sure who said not to11:04
wallyworld_i can easily add it11:05
wallyworld_ah i think maybe we said we would handle units running on state server11:05
jamwallyworld_: so it doesn't help you back up your *state-server* (as that is never a unit) but it does back up *that machine*11:05
wallyworld_because <some reason a can't recall>11:05
wallyworld_s/would/wouldn't above11:06
wallyworld_jam: my brain is fading, but i think if one considers what we do now with the manual process and a bucula backup, we sorta want to have enough info in the backup tar ball to restore a state server11:07
wallyworld_assuming no other backup solution was used11:07
wallyworld_and not supporting units11:08
wallyworld_ah i recall now11:08
jamwallyworld_: sure. I think my point is if you did somethnig like deploy juju-gui to node 0 (which is what juju-quickstart does) then it won't come back up after you've restored your state server from a failure11:08
wallyworld_it's no good backup up juju-unit-*.conf since we wil not have charms when we restore11:08
wallyworld_yes you are right. i think because we cannot guarantee charm will be backed up, there's no point to restoring unit conf11:09
jamwallyworld_: k, "reasons". We may want to document it in a comment in the script, and we may come back to that later. But what you have is fine for me. Certainly as a "better than nothing, and we can iterate if we want to make things better"11:09
wallyworld_yes, we will need to iterate for sure11:09
wallyworld_but it's a good start11:10
wallyworld_i'll add a comment11:10
wallyworld_but will land tomorrow if you want to +1 before you eod11:11
mgzwallyworld_: remind me at some point to ask you to explain to me the tests you've got for the juju-metadata plugin11:12
wallyworld_ok11:13
wallyworld_which ones? i may not have a suitable answer right now11:14
mgzwallyworld_: particularly the magic in metadataplugin_test.go11:14
wallyworld_mgz: it basically ensures that each metadata sub-command is properly registered11:18
mgzwhat's the exec doing in badrun...11:18
mgzwallyworld_: unrelated, did the packaging need updating when you added juju-bootstrap as a plugin?11:18
wallyworld_mgz: hmmmm. i *think* it is smart enough to look for binaries called juju-* but am not 100% sure11:20
jamwallyworld_: I already LGTM'd11:20
wallyworld_ok, thanks.11:21
mgzTheMue: can you please push lp:~gz/juju-core/devel-packaging over lp:~juju-qa/juju-core/devel-packaging12:33
TheMuemgz: eh, sure, only that I never have done that before :/12:35
TheMuemgz: but I think you can help me here12:35
rogpeppewallyworld_: I've just reviewed https://codereview.appspot.com/31960043/12:40
TheMuemgz: is it branch qa/...; merge gz/...; push qa/... ?12:40
wallyworld_thanks.'12:41
wallyworld_rogpeppe: one quick comment - i don't like embedding scripts - harder to debug etc. so long as both scripts are in same directory it will just work12:41
* TheMue would like to ask Curtis, but he will have stuffed turkey today :)12:41
rogpeppewallyworld_: why is it harder to debug?12:42
wallyworld_cause you can't run the script stand alone12:42
wallyworld_and syntax highlighting tc12:42
TheMuewallyworld_: +112:42
wallyworld_and ide support12:42
rogpeppewallyworld_: if it's a shell function, syntax highlighting should work fine12:42
rogpeppewallyworld_: and it's trivial to run it standalone too12:43
wallyworld_it is?12:43
wallyworld_i thought jam had already +1 it actually12:43
wallyworld_ah he did12:43
rogpeppewallyworld_: yeah, just put remote_cmd "$@" just after the function definition12:43
wallyworld_in the lp mp12:43
rogpeppewallyworld_: ah, i didn't see his reply12:44
wallyworld_i'll look at the $@ syntax, not familiar eith htat12:44
wallyworld_bah my typing sucks12:45
rogpeppewallyworld_: if you write shell scripts and don't know about "$@" you are inevitably writing buggy scripts, i'm afraid12:45
wallyworld_it's a simple script12:45
rogpeppewallyworld_: it's the *only* way to allow white space in arguments12:45
wallyworld_lucky there's none required12:45
rogpeppewallyworld_: still, it's best to be defensive12:46
wallyworld_neither script takes args12:46
rogpeppewallyworld_: in which case, just "remote_cmd" would do12:46
rogpeppewallyworld_: for the record, "$@" (quotes necessary) is just the same as $* except that arguments with spaces in are kept as single arguments12:47
wallyworld_ok12:47
wallyworld_which function definition are you suggesting i put remote_cmd after ?12:49
wallyworld_ah never mind, i see  it in your comments12:51
rogpeppewallyworld_: if you define remote_cmd as the first thing in juju-backup, then to test it, just put (just after) remote_cmd; exit $?12:51
rogpeppewallyworld_: then you can test the shell function without the rest of the behaviour12:51
wallyworld_rogpeppe: btw, those snippets for std err capture and working dir came fromstack exchange12:52
rogpeppewallyworld_: FYI here's an illustration of the difference between "$@" and $* http://paste.ubuntu.com/6489365/12:53
wallyworld_people seemed to recommend those snippets from what i could see12:53
rogpeppewallyworld_: it seems too complex - there are already quite a few levels of evaluation in sh scripts and $( eval 'sudo  -n bash -c "(command)") doesn't fill me with delight12:55
wallyworld_that last bit was to  get the command chaining correct12:55
rogpeppewallyworld_: sorry, i don't understand that12:56
wallyworld_so that juju db would restart after any failure12:56
rogpeppewallyworld_: i made an alternative suggestion for that - did you see that?12:56
wallyworld_not yet12:56
wallyworld_i'll have a proper look tomorrow, very tired now12:57
rogpeppewallyworld_: np :-12:57
rogpeppe:-)12:57
mgzTheMue: you can litterall just `bzr push -d lp:~gz/juju-core/devel-packaging lp:~juju-qa/juju-core/devel-packaging`12:57
wallyworld_thans for the review though, i'll look properly tomorrow12:57
TheMuemgz: that sound easy ;)13:01
TheMuemgz: could it be that the order is wrong? I get a lock error for your branch (readonly transport)13:05
TheMuemgz: ah, no, it's the one to pull from, so it's correct. hmmm ...13:12
* dimitern is not feeling very well, so I'll lie down for a while13:13
=== dimitern is now known as dimitern_afk
mgzdimitern: hope you feel better soon13:13
dimitern_afkmgz, thanks13:13
mgzTheMue: you are in ~juju-qa so you should be able to push there if you have the same ssh key as in your launchpad account enabled13:14
TheMuemgz: the key is the same, but the error message mentions your branch13:15
TheMuemgz: bzr: ERROR: Cannot lock LockDir(chroot-83837968:///~gz/juju-core/devel-packaging/.bzr/branch/lock): Transport operation not possible: readonly transport13:16
mgzTheMue: just pull that branch down then, and push from local13:17
rogpepperebooting 'cos my graphics card has gone tits up again13:23
TheMuemgz: system says it's happy13:29
TheMuemgz: only wondering where I see in lp that I've just pushed it13:30
mgzTheMue: https://code.launchpad.net/~juju-qa/juju-core/devel-packaging13:32
TheMuemgz: that's where I looked13:34
mgzyou should see the top revision is from me13:35
TheMuemgz: the 19?13:35
mgzTheMue: yup. ah, I see what's confusing you, I used --author so it doesn't say my name in the UI13:36
TheMuemgz: ah, found it, not the displayed name but the commiter13:36
TheMuemgz: exactly13:36
* TheMue and the wonderful world of bazaar and launchpad 13:37
rogpeppefwereade: have you tried mongorestore at all? Pierre is having some problems following the restore procedure here (can't connect to the database) and i'm wondering if there's something we've got wrong.13:52
fwereaderogpeppe, sorry, I'll pop in13:54
jamfwereade: rogpeppe: just passing by after dinner, is everything sorted out ?14:44
rogpeppejam: nope, not really14:45
fwereadejam, caribou's reports with the build are encouraging, melmoth has had a bit more trouble -- the instance id definition wasunclear14:45
jamso... "juju destroy-environment local" seems to succeed but then "juju status -e local" is working...14:52
jam"juju destroy-environment --debug" claims to "removing service juju-db-jameinel-local, but it is still present in /etc/init14:53
jamwell 'sudo juju destroy-environment'14:54
jamah, I changed the name, that's probably why. strange it didn't *complain* that it couldn't remove the service, but it does complain that it can't remove /etc/rsyslog.d14:55
rogpeppei'm stopping for lunch, and then i'm going to travelling for an hour or so, so will be incommunicado. will be back for a little while after then.15:33
rogpeppefwereade: right, back online no17:28
rogpeppew17:28
fwereaderogpeppe, heyhey17:29
fwereaderogpeppe, turns out the fricking provisioner pays no attention to the machine's address change if it happens after the provisioner starts17:30
rogpeppefwereade: you mean the address updater?17:31
fwereaderogpeppe, yeah, the updater works but the provisioner doesn't care17:31
fwereaderogpeppe, the auth field is set up just once17:31
fwereaderogpeppe, it was meant to be consulted once per group of machines17:31
fwereaderogpeppe, hey ho17:32
rogpeppefwereade: the auth field?17:32
fwereaderogpeppe, it's got a SetupAuthentication that returns state+api info for the new machine17:32
fwereaderogpeppe, including the addresses17:32
fwereaderogpeppe, which are looked up *once* when we start the provisioner17:32
rogpeppefwereade: oh ffs17:32
fwereaderogpeppe, literally the only reason for startMachines was so that we could get up to date addresses17:33
fwereaderogpeppe, without that it's just a dumb loop17:33
* fwereade goes to smoke a grumpy cigarette, brb17:33
rogpeppefwereade: BTW here's a the sketch for a restore command: http://paste.ubuntu.com/6490492/17:34
fwereaderogpeppe, that looks good apart from the need to do the fresh bootstrap in safe mode17:44
rogpeppefwereade: what do you suggest instead?17:45
fwereaderogpeppe, I'm not suggesting it's a bad approach, just a detail that's not explicitly addressed17:45
rogpeppefwereade: i'm not sure i understand17:47
fwereaderogpeppe, well, if we bootstrap with a functioning provisioner, it'll take down all the existing nodes, right?17:47
rogpeppefwereade: yes17:48
fwereaderogpeppe, so the re-bootstrap needs to either run in safe mode, or with the agent disabled -- am I just failing reading comprehension?17:48
rogpeppefwereade: my sketch includes bootstrapping in safe mode, doesn't it?17:48
rogpeppefwereade: i thought you were objecting to that, for some reason17:49
fwereaderogpeppe, yes, I'm just failing reading comprehension, sorry17:49
rogpeppes/,//17:49
rogpeppefwereade: ok, cool17:50
rogpeppefwereade: sorry, i have to go, supper is on the table. i hope that's ok.18:20
rogpeppeg'night all18:22
=== gary_poster is now known as gary_poster|away

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