/srv/irclogs.ubuntu.com/2013/12/19/#juju-dev.txt

thumperwallyworld_: I'm in the hangout now if you feel like joinging00:59
thumperor joining00:59
thumpero/ axw00:59
axwheya thumper00:59
thumperaxw: just for you https://codereview.appspot.com/43730044/01:00
axwcool beans01:00
davecheneysinzui: i cannot reproduce that failure in aws01:03
davecheneydoes anyone have hp credentials I can use ?01:03
axwthumper: why did you end up not using they private key we already have?01:16
thumperaxw: it felt wrong01:17
thumperthat's the guts of it01:17
thumperhard to explain01:17
axwmmk01:17
thumperI think separate keys for different jobs is a good thing01:18
wallyworld_+101:19
thumperugh01:44
thumperneed coffee01:45
* thumper decides not to wait for Rachel01:45
axwwallyworld_: why did you remove TestNoWarningForDeprecatedButUnusedEnv?02:53
* axw is particularly slow today02:53
wallyworld_axw: not sure. that code block was in a place that tested for deprecated attr processing which was moved. i must have missed the fact that there was a test which should have been kept02:54
wallyworld_i'll take a look and add it back if needed.02:55
axwwallyworld_: thanks02:55
wallyworld_i'm the one who is slow02:55
wallyworld_thumper: it seem we already show rev info in status, at least at the service level. the charm url includes the rev no04:48
wallyworld_did we need to extend that to the unit level? is it possible to have units with different rev numbers to the parent service?04:48
=== davecheney is now known as hartman
thumperwallyworld_: I don't think so07:46
thumperwallyworld_: I think all our charms should be at the same version07:46
thumperwallyworld_: and all we actually care about is the service itself, not the individual units07:46
thumperI think07:46
wallyworld_thumper: we do record versions for unit charms and i can see how a unit charm could get out of date with the nominal service version so we may want to report on both08:03
wallyworld_thumper: fwiw, i've hacked togethe rsome code to produce the following https://pastebin.canonical.com/102221/08:03
dimiternrogpeppe, morning08:46
rogpeppedimitern: hiya08:46
dimiternrogpeppe, I decided to change the code to calculate the hash in place08:47
rogpeppedimitern: why?08:47
dimiternrogpeppe, instead of messing with charm store code08:47
dimiternrogpeppe, it's just 5 lines of code anyway08:47
rogpeppedimitern: you don't need to mess with the charm store code - just the charm client code08:47
rogpeppedimitern: and it already calculates the hash in exactly the way we need08:48
rogpeppedimitern: and it's actually a trivial change08:48
dimiternrogpeppe, how about if we support github charms?08:48
dimiternrogpeppe, then the hash and size have to come from the file we download08:48
rogpeppedimitern: then we can implement GetBundle on the GithubRepository08:49
dimiternrogpeppe, this way it's more future proof, in case we need to support other stores than the charm store08:49
rogpeppedimitern: i think it's good that the charm package is in charge of calculating the hashes in exactly the right way08:49
rogpeppedimitern: if we implement github charms, we won't put the code to talk to github inside the api server, will we?08:50
dimiternrogpeppe, well, I talked to william and we decided it's best to do it that way08:50
rogpeppedimitern: we'd implement it in the charm package08:50
dimiternrogpeppe, I have updated https://codereview.appspot.com/43860043/08:51
dimiternrogpeppe, we can change it later if needed08:51
rogpeppedimitern: your code will fail with github charms anyway, as you're type asserting the downloaded charm to *charm.Bundle, and github charms will probably not be in bundled form08:52
rogpeppedimitern: if you're asserting that the result is a bundle, you may as well leverage the code that knows that (and knows the sha sum)08:53
rogpeppewhy do we have to make things more complex than they need to be?08:53
dimiternrogpeppe, please, I want to get on with it and start on ServiceDeploy08:54
axwrogpeppe: I've updated https://codereview.appspot.com/38240043/, but the diff got messed up after I merged in trunk. I might just end up doing a new CL... but the changes are all in there09:33
rogpeppeaxw: thanks - currently i need to finish my action item before the meeting, but will take a look afterwards09:34
axwrogpeppe: no problems, thanks09:34
axwjam: FYI, destroy-environment is LGTM'd, just need to do a final test and I'll land it (hopefully this evening)09:38
dimiternrogpeppe, thanks for the review btw09:57
rogpeppedimitern: np09:57
dimiternrogpeppe, jam, mgz, meeting?10:01
thumperfwereade: you too10:02
jammgz: if you're around, weekly standup is now10:03
axwjam: not sure if it's related to compatibility, but add-machine seems to be busted on trunk10:14
axwI'm digging into it now10:14
jamaxw: I'm just finishing up my patch to do 1.16.3 compat add-machine10:15
axwjam: I mean targeting a 1.17.0 env10:15
axwactually I'm not on trunk, I shouldn't assume it's in the truk code... just pretend I didn't say anything yet10:16
axwwallyworld_: authenticationworker doesn't look happy10:17
wallyworld_i what way?10:18
axwit's continuously dying, with "generating key fingerprint: exit status 1"10:18
wallyworld_hmmm. sounds like ssh-keygen is not being run10:18
wallyworld_that should be installed i would hope10:19
axwwallyworld_: I'll have a look10:19
wallyworld_it runs ssh-keygen -lf blah from memory10:19
wallyworld_i ran a system on trunk today and it appeared fine10:20
axwwallyworld_: it's there, and running that directly works fine10:22
wallyworld_hmmm10:22
wallyworld_axw: sadly i think our command running infrastructure tends to swallow the real error, so possibly some debug code might be needed10:24
wallyworld_is this for an env you are running on ec2 or?10:25
axwwallyworld_: azure10:26
wallyworld_i'm not sure what would be wrong10:27
axwwallyworld_: I can see one of the RPC responses is returning what looks like a list of authorised keys, one of which is ""10:27
wallyworld_that's interesting. i wonder what the authorised_key file has in it10:27
axwwallyworld_: and authorized-keys in my .jenv has a blank line at the end10:27
* axw looks10:27
wallyworld_the \n are supposed to be stripped out10:27
wallyworld_well, they are when reading the .ssh/auth_keys file10:28
wallyworld_and also the auth_keys env setting from the db10:28
wallyworld_not sure about the jenv10:28
wallyworld_but i would hope so10:28
axwwallyworld_:  ~ubuntu/.ssh/authorized_keys has a single line, with a key on it10:28
wallyworld_that sounds correct10:28
axwwallyworld_: looks like that's it10:30
axwwallyworld_: I did juju set-env with what it had minus the blank line, and it's fixed10:30
wallyworld_so you saying if the auth keys env setting has a blank line it barfs?10:30
axwwallyworld_: yes10:31
axwwallyworld_: well, I'll try add it back in and see what happens10:31
wallyworld_from memory blnak lines are ignored everywhere else, i think perhaps i though env setting would not have blank lines10:31
axwwallyworld_: although, is it too late after it's started?10:31
wallyworld_you should be able to use set-env i think10:32
wallyworld_i wonder how the env setting got an extra \n added10:32
wallyworld_i will do a patch to fix it, curious how it got there though10:32
wallyworld_cause as i said, i ran up an ec2 env today and it appeared ok10:33
* axw shrugs10:34
axwI'm not sure why it'd be blank, I'm not familiar with that code10:34
axwoh shit, add-machine has been working, it's just returning an error as well10:35
* axw quickly destroys 5 machines10:36
wallyworld_the code should be defensive anyway. the \n issue is handled properly for reading .ssh/auth_keys etc10:36
dimiternrogpeppe, natefinch, https://codereview.appspot.com/44240045 deploy using the API12:47
rogpeppedimitern: looking12:48
rogpeppedimitern: do you need to worry about compatibility with an API server that has API EnvironmentGet but not AddLocalCharm ?13:01
rogpeppedimitern: i'm concerned that the code that's in cmd/juju/deploy.go won't actually cope with a legacy environment13:02
dimiternrogpeppe, 1) wasn't sure, because EnvGet was there before and some 1.16 releases have it I think13:03
dimiternrogpeppe, 2) what do you mean?13:03
rogpeppedimitern: one mo, just checking something13:04
rogpeppedimitern: have you verified that 1.16 environments return a MethodNotAllowed status when trying to POST?13:07
dimiternrogpeppe, yes13:07
rogpeppedimitern: ah, that's lucky13:07
rogpeppedimitern: i guess the websocket handler does the right thing there13:08
rogpeppedimitern: we'll have to be a bit careful when we do charm GETs though13:09
dimiternrogpeppe, agreed13:13
=== gary_poster|away is now known as gary_poster
axwrogpeppe: I got an LGTM on https://codereview.appspot.com/41280043/, but it occurred to me today as I was testing that we should probably have a --force on destroy-environment now to not call the API13:36
axwrogpeppe: does that sound okay to slip in there?13:36
rogpeppeaxw: we definitely need that, yes13:37
rogpeppeaxw: how much of a change to that CL do you think it will be?13:37
axwrogpeppe: +8/-4 lines in destroyenvironment.go13:38
rogpeppeaxw: well worth it13:38
axwrogpeppe: basically just adding a boolean flag to destroy-environment, and not callig the API if it's enabled13:38
axwdoes that sound sensible to you?13:38
rogpeppeaxw: yeah.13:39
axwrogpeppe: thanks for the review before. I'll unexport the testing.BootstrapContext type as you suggested13:40
axwrogpeppe: it needed to be because the embedded Context is modified in tests13:40
axwrogpeppe: but I'll just have the constructor take a cmd.Context as an arg instead13:40
rogpeppeaxw: ok13:40
axwrogpeppe: what makes you say that Bootstrap is no longer viable inside a web service? I don't see how any of the recent changes would prevent that13:58
rogpeppeaxw: if you're running it inside a web service, how would you, for instance, allow the user to enter an ssh password inside the web page when requested?13:59
axwrogpeppe: you don't ever need to, unless you're doing manual provisioning14:00
rogpeppeaxw: it would be nice to be able to do manual provisioning too, i'd imagine14:00
axwrogpeppe: actually, that's possible too with a pty14:00
rogpeppeaxw: and expect(1)-like logic...14:01
rogpeppeaxw: yuck :-)14:01
axwrogpeppe: how else would you do it?14:01
rogpeppeaxw: i'd make the package API have some kind of a password callback function14:02
rogpeppeaxw: and use sshpass to call back into juju14:02
rogpeppeaxw: it would definitely be more work though14:02
rogpeppeaxw: for not much benefit at this point14:03
axwrogpeppe: sshpass wrapping juju doesn't seem viable, since we shell out multiple times14:03
axwrogpeppe: not sure if you saw the branch, but you can now set $SSHPASS and sshpass will be used if it's available14:03
rogpeppeaxw: that's ok, but it's unfortunately global14:04
axwtrue14:04
axwrogpeppe: alternatively we could just use go.crypto/ssh, which I've started looking into when the system shell isn't available for bootstrapping14:05
axwrogpeppe: I was also thinking that it'd be nice to be able to manually provision from the GUI14:05
axwthat could be useful there14:05
rogpeppeaxw: i'd be so much happier if we could do that, but i know that the go.crypto/ssh is in a state of flux14:05
rogpeppeaxw: it's also important if we want to run under non-unix platforms14:06
axwrogpeppe: yes indeed, that's the prime motivation at the moment - Windows CLI is currently broken on 1.1714:06
rogpeppeaxw: forgive my badly-articulate comments, but i just wanted to indicate some level of discomfort...14:06
rogpeppes/ate/ated/14:06
axwrogpeppe: not at all, I'm glad to discuss it. if CLI things are getting too interwoven with the core, then that's not ideal14:07
rogpeppeaxw: yeah, it's the kind of thing that feels a bit like breaking of abstraction boundaries14:08
rogpeppeaxw: i also feel like that with respect to the Stderr stuff, BTW14:09
rogpeppeaxw: i've been wondering whether we could leverage the logging mechanism instead of that14:09
rogpeppeaxw: for instance logging to the "progress" module could be a convention for printing progress messages14:10
rogpeppeaxw: which would make it easy to run in quiet mode, for example (which is something we don't support now, AFAIK)14:10
axwrogpeppe: I thought thumper was working on something longer-term for that, but I don't know what happened14:11
rogpeppeaxw: i don't know anything about that14:11
dimiternrogpeppe, review poke14:11
dimitern:)14:12
rogpeppedimitern: i'm still on it, sorry14:12
rogpeppedimitern: it's been a bit involved14:12
dimiternrogpeppe, np, just checking :)14:13
rogpeppedimitern: reviewed14:20
dimiternrogpeppe, ta!14:29
* rogpeppe passes the -e flag to destroy-environment almost every time :-\14:34
dimiternrogpeppe, ok, I just checked EnvironmentGet was not available in 1.16, so checking for IsCodeNotImplemented there will allow nice splitting of 2 straight code paths14:38
dimiternrogpeppe, InferURL will return an error when defaultSeries is empty and the URL does not provide one14:38
rogpeppedimitern: cool14:38
rogpeppedimitern: yeah, i checked that InferURL error14:39
rogpeppedimitern: but you might want to make it return a specific error in that case14:39
dimiternrogpeppe, I don't think skipping EnvironmentGet for the sake of 1 less round-trip is worth it, because we need the config later anyway (for local charms), and most importantly will allow me to gate the 1.16 compatibility code nicely14:39
rogpeppedimitern: sure, that's good enough reason to keep it for the time being14:39
dimiternrogpeppe, that's and entirely different CL14:40
rogpeppedimitern: BTW why do you need the config for local charms?14:41
dimiternrogpeppe, but I agree that behavior can be better14:42
rogpeppedimitern: (i can't see that it's used in that case, but i'm probably missing something)14:42
axwdimitern, rogpeppe: do either of you have time for a small review? hazmat found a bug, and is waiting on this: https://codereview.appspot.com/44200043/14:44
rogpeppeaxw: will look14:44
axwthanks14:44
dimiternrogpeppe, we need the config to get the default series14:47
rogpeppedimitern: so you need that for local or cs charms, right? depending on whether the user specified the series in the charm url.14:48
rogpeppedimitern: that's just the step i was suggesting that could be skipped.14:49
rogpeppeaxw: reviewed14:51
axwrogpeppe: ta14:51
dimiternrogpeppe, both local and cs charms14:52
* rogpeppe goes for lunch15:12
mrammanybody for the cross team meeting?15:34
natefinchmramm: if you need a warm body, I can sit in15:36
dimiternrogpeppe, when you're back, I've updated https://codereview.appspot.com/44240045/ and I think it's ready to land15:39
natefinchman #mongodb is useless.  Asked twice in two days for suggestions about this 2.2 vs 2.4 problem I'm having with replicasets, and can't even get anyone to respond15:49
natefinchmakes me glad I've at least responded to people asking questions on here15:49
mgztwo times is certanly fall back to mailinglist moment15:53
sinzuihazmat, The devs want to release 1.17.0 this week, and then do a 1.17.1 the first week of January. Does that work for you?15:55
sinzuihazmat, I see axw has three things in review. Are these the items you wanted in a release: https://code.launchpad.net/~axwalk15:56
natefinchmgz: I posted to their google group, can't hardly get anyone to even look at my post :/  They don't seem to have a more traditional mailing list15:56
natefinchmgz: granted, it's only been a couple hours15:57
hazmatsinzui, sounds good16:13
hazmatsinzui, just the manual detection stderr, there will be more i suspect though in the new year.16:13
hazmati've worked around it for now, by shipping binaries built from the branch16:13
sinzuihazmat, fab. I am writing release notes. I expect it to take most of my day. I will release any goodness that arrives in trunk while I write16:14
rogpeppedimitern: looking16:16
dimiternrogpeppe, thanks16:36
dimiternrogpeppe, and once you're done with it, I have one last one: https://codereview.appspot.com/44230045/16:38
dimitern:)16:38
rogpeppedimitern: with regard to this:16:39
rogpeppeOf course we do! The changes actually assume we're using the API properly,16:39
rogpeppeinstead of in a compatible mode.16:39
rogpeppeAFAICS the changes don't assume anything of the sort16:39
dimiternrogpeppe, yes?16:39
dimiternthey do16:39
rogpeppethe API works equally well if someone isn't using the API properly16:40
dimiternchecking the charm exists in state implies this16:40
rogpeppethus the old code is perfectly sufficient16:40
rogpeppeAFAICS16:40
dimiternthe old code will be gone eventually16:40
dimiternso the API shouldn't do more than it should and duplicate features16:40
rogpeppedimitern: sure - when we want to break compatibility, we can remove the PutCharm piece16:40
rogpeppedimitern: i don't understand that last remark16:41
rogpeppedimitern: the API behaviour has not changed at all16:41
dimiternwe have Add(Local)Charm and ServiceDeploy - all API calls taking charm urls assume they're already in stte16:41
dimiternstate16:41
rogpeppedimitern: so why change the code?16:41
dimiternrogpeppe, a good API has one call per feature more or less, not some calls that internally do what other calls are doing in a different way16:42
rogpeppedimitern: i'm not saying that we should not change it in the future16:42
rogpeppedimitern: that's definitely the plan16:42
rogpeppedimitern: but i don't see that we need to change it now16:43
rogpeppedimitern: because we still need all the old (addcharm + putcharm) functionality for backward compatibility16:44
rogpeppedimitern: can you give me an example of how the new API call differs at all semantically from the old API call?16:44
dimiternrogpeppe, yes16:45
dimiternrogpeppe, when the charm is there, no conn is used at all16:45
fwereaderogpeppe, I think the idea here is to structure the code so as to demonstrate intent, and what's important, and make it easy to extract the simpler version16:46
rogpeppefwereade: honestly, i think that a simple comment is sufficient there16:46
fwereaderogpeppe, and demanding that add-service reference a charm is no worse than demanding that add-unit reference a service ;p16:46
rogpeppefwereade: rather than cluttering the logic16:46
rogpeppefwereade: the new code does not demand that16:47
rogpeppefwereade: it's exactly the same as the old call16:47
rogpeppefwereade: except with more logic16:47
rogpeppefwereade: and maybe a touch more efficient (as dimitern says, it avoids an EnvironConfig when the charm already exists in state)16:48
fwereaderogpeppe, the extra logic looks to me like it's separating the weird and deprecated bits from the intended thrust of the logic16:48
rogpeppefwereade: (but we could easily avoid that by making conn.PutCharm a function that takes a *state.State as an argument rather than requiring a Conn16:48
rogpeppefwereade: it looks a lot more complex to me, and it really isn't that complex.16:50
fwereaderogpeppe, it STM to exist for a valid purpose16:51
rogpeppefwereade: which is?16:51
fwereaderogpeppe, to structure the code so as to demonstrate intent, and what's important, and make it easy to extract the simpler version16:52
rogpeppefwereade: (i can understand the old logic at a glance; i'm spending a while on the new logic now)16:52
fwereaderogpeppe, the old logic is wrong, though, right? it barfs on local charm urls16:52
rogpeppefwereade: i don't see how it makes it any easier to extract the simpler version (which will be *much* simpler)16:52
fwereaderogpeppe, there needs to be some sort of change16:52
rogpeppefwereade: that is a good point about the local charm barfing16:53
rogpeppe[16:45:59] <dimitern> rogpeppe, when the charm is there, no conn is used at all16:55
rogpeppeactually that doesn't appear to be the case16:55
rogpeppedimitern: i think you can lose the need1dot16Compatibility variable entirely and things become much simpler (and i'll be happier :-16:56
rogpeppe])16:56
dimiternrogpeppe, sorry, yes16:57
dimiternrogpeppe, I was thinking of upgrade-charm16:57
dimiternrogpeppe, but it needs conn because of DeployService - we can get rid of this once we drop 1.16 compat + PutCharm and stuff16:58
rogpeppedimitern: let's just turn DeployService into a function that takes state.State as an argument16:59
rogpeppedimitern: it has no need to be a method on Conn16:59
sinzuiHi devs. I am pondering why Hp is so prone to interment mysql hook errors. I wonder if the machine is under powered. Do you think 2G for mysql + juju agent is low?17:00
dimiternrogpeppe, and conn.AddUnits as well17:00
rogpeppedimitern: yeah17:01
dimiternrogpeppe, then we can skip creating a conn entirely for the API I think17:01
rogpeppedimitern: indeed17:01
dimiternrogpeppe, compat. code will still be using it though17:01
rogpeppedimitern: it's easy to change conn.DeployService(...) into juju.DeployService(conn.State, ...)17:02
dimiternrogpeppe, yeah, I agree, let's do that17:03
dimiternrogpeppe, and land it :)17:03
dimiternrogpeppe, and this will also fix bug 121683017:04
_mup_Bug #1216830: apiserver should not depend on Conn <tech-debt> <juju-core:Triaged> <https://launchpad.net/bugs/1216830>17:04
rogpeppedimitern: i don't think you actually need to call Conn.PutCharm at all BTW17:04
rogpeppedimitern: am just making a small suggestion17:04
dimiternrogpeppe, it's needed, because the GUI doesn't yet use Add(Local)Charm() calls17:05
dimiternrogpeppe, and needs to keep working17:05
rogpeppedimitern: ha, but you can call Client.AddCharm from Client.ServiceDeploy...17:05
dimiternrogpeppe, so alas, the bug cannot be fixed because of this single PutCharm17:05
dimiternrogpeppe, hmm17:05
dimiternrogpeppe, yes, actually!17:06
rogpeppedimitern: yeah, i've just published that suggestion17:06
rogpeppedimitern: it takes the compatibility code down to 4 lines17:06
dimiternrogpeppe, cheers, looking17:06
dimiternrogpeppe, about a cs: charm deploy test - I really tried, in fact I was almost at the point of changing the mock charm store to have all methods of *charm.CharmStore and making the latter an interface, but it's too much work for this CL17:10
rogpeppedimitern: yeah, i wondered that17:10
dimiternrogpeppe, fortunately I tested charm deployment from the charm store live on ec2 and it seems to work fine17:10
rogpeppedimitern: that's good17:10
rogpeppedimitern: serviceSetCharm could call Client.AddCharm too, i think17:12
rogpeppedimitern: then we really would be no juju.Conn dependencies in apiserver17:13
rogpeppedimitern: which would be cause for minor celebration :-)17:13
dimiternrogpeppe, yes, indeed17:14
hazmathmm.. deploy silently ignores invalid service names17:24
hazmatthrough the api that is17:24
dimiternrogpeppe, did you manage to look at upgrade-charm as well?17:39
dimiternhazmat, file a bug please17:39
rogpeppedimitern: no, totally distracted by other conversation and development.17:39
rogpeppedimitern: looking now17:39
dimiternrogpeppe, thanks17:39
dimiternrogpeppe, i'm almost done with the suggestions about deploy - reproposing shortly, + conn removal from apiserver17:40
rogpeppedimitern: great! thanks.17:40
rogpeppeanyone got an idea why this might die with a "SyntaxError: Unexpected identifier" error?18:13
rogpeppemongo --ssl -u admin -p mypassword localhost:37017/admin --eval "use juju"18:13
hazmatrogpeppe, use symbol valid for shell not for eval18:14
hazmati'd guess18:14
rogpeppehazmat: yeah, i'm thinking that "use juju" isn't valid js18:14
rogpeppehazmat: i thought the two things were the same18:14
rogpeppehazmat: i hope there's a js equivalent of "use"18:14
hazmatno.. its a mysqlism propogated18:15
hazmatre db shells18:15
rogpeppehazmat: hmm, there must be some other way of accessing a different db then18:15
hazmatrogpeppe, see top of mongo -h18:16
rogpeppehazmat: i can't do that unfortunately18:16
rogpeppehazmat: i have to log into a different db then switch18:16
rogpeppehazmat: i guess i can just pipe into mongo18:17
hazmatits trivial in the client drivers, through the shell you point to the one you want.. or use shell syntax ('use')18:18
rogpeppehazmat: db=db.getSiblingDB("juju")18:22
rogpeppehazmat: useful to know that db is just a normal variable actually18:23
dimiternrogpeppe, also updated https://codereview.appspot.com/44240045/ - just needs an LGTM :)18:25
rogpeppedimitern: don't they all? :-)18:25
rogpeppedimitern: looking18:25
hazmatrogpeppe, is it okay to strip go binaries?18:33
rogpeppehazmat: no18:33
rogpeppehazmat: the symbols are used by the runtime18:33
rogpeppehazmat: you can create executable compressed binaries though18:33
rogpeppehazmat: though i can't remember the tool that was used18:33
hazmatrogpeppe, oh? do tell.. you just mean gzip?18:33
rogpeppehazmat: no18:34
hazmati'll dig through our tools code18:34
rogpeppehazmat: i mean you can get a much smaller binary that uncompresses itself when run18:34
rogpeppehazmat: i'll have a quick search, one mo18:34
rogpeppehazmat: https://github.com/pwaller/goupx18:35
rogpeppehazmat: i can't verify that it still works though18:35
rogpeppehazmat: it seemed to work when i last played with it18:35
rogpeppedimitern: reviewed18:41
dimiternrogpeppe, cheers18:44
* rogpeppe just got a working status from a restored environment, woo18:51
rogpeppeif anyone cares to take a look, juju-restore now seems to work: https://codereview.appspot.com/44350043/20:06
rogpeppenatefinch: ^20:07
natefinchrogpeppe, cool20:10
natefinchrogpeppe, I just got confirmation from a mongo engineer that the problem I was having with replica sets in mongo 2.2.0 is likely just a bug in 2.2.0.  I think we may have to just tell people they need to upgrade to get HA20:11
rogpeppenatefinch: ok, that's good to know20:12
thumpero/20:19
thumperas hazmat mentioned on the mailing list, I thought we already did use a later version20:19
natefinchthumper, I thought older environments had 2.2.0 that didn't get upgraded when we upgraded juju... but I might be wrong about that.20:19
thumpernatefinch: hmm.. not sure about that20:20
natefinchthumper, it may be my misunderstanding20:21
thumperI just don't know20:21
thumperdimitern: well done on getting deploy done \o/20:30
dimiternthumper, and upgrade-charm20:31
thumperdimitern: that's great. what's left?20:31
dimiternthumper, both are about to land as soon as the bot finishes with them20:31
dimiternthumper, let me check20:31
dimiternthumper, only one - apiendpoints20:33
thumperdimitern: is status done?20:33
dimiternthumper, but it's trivial and might benefit from some caching20:33
dimiternthumper, yes, i think it got landed20:33
thumperoh yay20:33
dimiternthumper, i'm updating the blueprint now20:33
dimiternthumper, actually, looking at status it seems it still uses state20:35
dimiternthumper, https://code.launchpad.net/~gz/juju-core/status_api/+merge/198444 this is the branch and it haven't landed yet, but seems done20:36
thumperI think it will be great to get this all landed for 1.1820:37
dimiternindubitably20:38
dimiternseems mgz have changed something recently (2h ago), so perhaps he's looking into landing it20:38
rogpeppethumper: hiya20:56
thumperhi rogpeppe20:56
rogpeppethumper: looking for a review of https://codereview.appspot.com/44350043/ if you have a moment or two20:56
thumpersure20:57
* thumper has a visitor21:01
* rogpeppe has a beer21:08
hatchit's Chrismas time....that means rum and eggnog!21:08
dimiternrogpeppe, you've got LGTM on https://codereview.appspot.com/37850043/21:09
rogpeppedimitern: tyvm21:10
dimiternok, time to stop21:10
dimiterng'night all21:10
rogpeppedimitern: night night21:10
* rogpeppe has also reached eod21:18
rogpeppeg'night all21:18
natefinchrogpeppe, good night21:19
natefinchthumper: who do I talk to about upgrading mongo on the bot?  I can't commit my HA stuff until it's upgraded21:54
thumpernatefinch: sinzui21:54
sinzuiyes?21:54
thumpersinzui: natefinch wants to upgrade mongo on the bot21:55
thumperor do you just do CI and not landing?21:55
* thumper frowns21:55
sinzuiI don't land, sorry.21:55
sinzuithumper, natefinch. I wonder if I can ssh to the machine if I know the IP address.21:57
thumpernatefinch: perhaps wallyworld_ can help, I've not logged into the bot21:57
natefinchthumper, sinzui: jam told me the IP in a hangout like yesterday... but I forgot to write it down ,and now it has flittered into the ether21:58
sinzuiI can push/tag gobot branches21:58
natefinchthumper, well, it's EOD for me anyway. I'll email jam about it and he'll fix me up.22:03
thumperkk22:03
thumpernatefinch: see you around22:03
natefinchthumper, see you22:04
sinzuiwallyworld_, thumper.  I don't understand how to use/document to juju backup plugin.22:40
thumpersinzui: neither do I22:41
wallyworld_sinzui: i can do that. it was more or less a prototype but can be documented22:41
wallyworld_there's also the restore utility which i know little about22:41
wallyworld_it may still be wip, not sure22:42
sinzuiwallyworld_, we can not document it in the 1.17.0 release if you think a 1.17.1 or 1.18.0 is a better time22:43
wallyworld_i think that would be better given i suspect the restore utility may not be done fully (but am not sure, i could be wrong)22:43
sinzuifab. I will just remove it from the notable section. thank you wallyworld_22:44
wallyworld_no-one would care too much i suspect22:44
bradmanyone know whats going on with LP#1241674?  we're upgrading to havana with multiple neutron networks, and are pretty interested in the bug23:10
_mup_Bug #1241674: juju-core broken with OpenStack Havana for tenants with multiple networks <cts-cloud-review> <openstack-provider> <juju-core:Triaged> <https://launchpad.net/bugs/1241674>23:10
wallyworld_bradm: the best person to fix this quickly on the core team is martin. i'm not sure if he has been looking at it, but can catch up with him when he comes online for his SOD23:16
bradmwallyworld_: its going to become pretty critical for us next year23:17
wallyworld_bradm: how would someone determine which network to use? via an environ config?23:17
wallyworld_juju environ that is23:17
bradmwallyworld_: aiui each environment has its own network23:17
wallyworld_so if we introduced a new config attribute called "network-name" or something?23:18
bradmmaybe, I'd want to look into it a bit more23:18
wallyworld_i can start work on it23:18
wallyworld_i'd just need a little more guidance on what we want to do23:19
bradmI'm just trying to get my head around what would be required here, the neutron network stuff is new to me23:19
wallyworld_me too23:19
wallyworld_martin knows about it though :-)23:19
bradmI'm fairly sure its deterministic per tenant what network they have23:19
wallyworld_i'll see if i can catch up with him23:19
wallyworld_so if it's deterministic, we can either specify one, or maybe just choose the first one or something if none is specified?23:20
bradmaiui there's a mapping from tenants to networks23:21
bradmoh, you can tell nova what net-id to use when you boot23:22
wallyworld_so maybe a net-id juju config attribute23:22
bradmyeah, if you can't get it progmatically23:23
wallyworld_well, even if you could, i think maybe it would be needed to allow the user to specify23:24
wallyworld_if there's more than one23:24
bradmyeah, since you can have different nics on different networks23:24
wallyworld_ok. so we will have this fixed definitely by next year if not sooner. but most people are away next week so getting any changes reviewed and committed may be difficult23:25
wallyworld_i'll talk to martin and we'll work something out23:25
bradmthat's fine, I'm nearly on holidays anyway23:26
wallyworld_me too :-D23:26
bradmwe're just building the next version of prodstack, it'd be nice to know there's a plan for the bug23:26
wallyworld_definitely a plan23:26
wallyworld_the bug is down for the 1.17 milestone23:26
wallyworld_which sorta means we can't do the next release until fixed23:27
bradmwe kind of need to do multiple networks so we can segregate off things into seperate pools, so we have some control over badwidth23:27
bradmbandwidth, even.23:27
wallyworld_yep. there's a whole unit of work planned for that sort of stuff23:28
wallyworld_will be started in january23:28
bradmwe're going to end up with 2 different physical router clusters, doing active/passive failover for neutron and firewalls23:28
bradmwith channel bonding on each to allow the different sections to have the required bandwdith they need23:28
wallyworld_sounds good23:28
bradmit should be, it'll let us bring more into juju / openstack, since some of our apps use a lot more bandwidth than others23:29
wallyworld_and is what customers would be doing23:30
wallyworld_so good to get it all dog fooded23:30
bradmyup23:30
bradmits good to see more redundancy happening in the stack, we'll have more control over hardware etc if we can fail things over23:32
wallyworld_yeah23:32
bradmwallyworld_: let us know if we can help, we should have a full havana stack with multiple networks early next year, mostly waiting on hardware atm23:34
wallyworld_bradm: is there something there now? or only next year?23:34
bradmwallyworld_: we have most of the stack now, we're missing ceph, and decent amount of swift storage23:36
bradmwallyworld_: and we don't have the 2nd physical router & neutron setup either23:36
wallyworld_ok. i'mjust thinking we need something with multiple networks just to test with while we develop the solution for the bug23:36
wallyworld_so we don't need a full setup with all the bell and whistles, just something that will fail without the new code and work once we add the necessary fixes23:38
bradmdidn't james page say there was a cloud like that already?23:38
bradmhttps://bugs.launchpad.net/juju-core/+bug/1241674/comments/523:38
_mup_Bug #1241674: juju-core broken with OpenStack Havana for tenants with multiple networks <cts-cloud-review> <openstack-provider> <juju-core:Triaged> <https://launchpad.net/bugs/1241674>23:38
wallyworld_ah yes he did23:39
wallyworld_i wasn't really familiar with the bug23:39
wallyworld_jamespage: is the havana based cloud referenced in the above bug just lyc02 on canonistack?23:41
bradmI don't think canonistack has multiple networks23:43
bradmor is even using neutron23:43
wallyworld_ah ok. i seemed to recall lyc02 was havana but didn't know to what extent it also used neutron etc23:44
bradmyeah, its havana, but I don't think its using neutron with openswitch, I'd say that'll be the next upgrade for canonistack23:45
wallyworld_ok. i'll get the details mentioned in the bug so us core guys can work on the bug23:47
bradmawesome23:47

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