[10:47] <rick_h_> bah, reitveld doesn't want to load for me today. 
[10:55] <rick_h_> there it goes, just needed to warm up today I guess
[12:18] <gary_poster> jujugui, we have a GUI UDS session that we need to lead/attend on Thursday, 18:05-19:00 UTC.  We ought to also attend, at least partially, the "Juju Charm Testing" session (Thursday 15:05-16:00 UTC), the "Charm Development Tooling" session (Wednesday 18:05-19:00 UTC), the "Charm Policy Review" session (Wednesday 15:05-16:00), and the "Juju Core Development" session (today 19:05-20:00 UTC).  I'll put those in an emai
[12:18] <gary_poster> l now...
[12:18] <benji> gary_poster: I wonder if we should promulgate the "Elmo's Pain" blog post to one of the lists.  Maybe at least him. :)
[12:18] <bac> morning
[12:19] <benji> morning, bac; I trust your return trip was OK
[12:20] <bac> it was a-ok.  best as could possibly be for having to catch a cab at 4:45
[12:20] <gary_poster> benji, yeah, the thought crossed my mind as well. :-) I was also considering advertising the blog more generally.  I'll do it soon, though I have higher priorities atm so if someone wants to do some of those that would be cool too.  oh, that reminds me.
[12:20] <gary_poster> I think we have two very high priority bugs atm
[12:20] <gary_poster> one is the memory leak
[12:20] <gary_poster> the other is the problem when we update the demo site and we can't see it  anymore until we clear out our appcache
[12:21] <bac> gary_poster: i got feed back from some of our spikey haired colleagues that the blog is interesting but they won't read it since it seems to be an internal gripe/work-around collection.  food for thought.
[12:21] <gary_poster> bac, which spikey haired ones?
[12:21] <gary_poster> for example, perhaps :-)
[12:21] <bac> ok, it was just one.
[12:21] <bac> his initials are curtis hovey
[12:22] <gary_poster> heh
[12:22] <gary_poster> ok cool
[12:22] <rick_h_> lol
[12:23] <rick_h_> gary_poster: bac I could see though getting a tag or category into one of the planets perhaps? Maybe a "this is share-worthy state of GUI" for those that don't care how the sausage is made.
[12:24] <gary_poster> rick_h_, yeah good idea.  do any of the planets still have decent readership? I was under the impression that they were losing steam
[12:24] <rick_h_> gary_poster: hmm, I'm an rss junkie so not a good person to ask
[12:24] <gary_poster> heh
[12:25] <rick_h_> jcastro might have a good suggestion
[12:25] <gary_poster> good idea thanks
[12:54] <rogpeppe1> gary_poster: hiya
[12:55] <gary_poster> hey rogpeppe1 :-)
[12:55] <rogpeppe1> gary_poster: i've just done a pretty major refactoring of the rpc package. it all seems to be working ok, but i wonder if you could check that the branch works with your stuff.
[12:55] <rogpeppe1> gary_poster: the branch is here: lp:~rogpeppe/juju-core/300-rpc-refactor
[12:56] <gary_poster> cool, rogpeppe1, sounds good.  I'll get someone to give it a whirl.  bac, you up for that?
[12:56] <rogpeppe1> gary_poster: i'm quite happy with it - i think it's got rid of a few lurking bugs and added some cool new possibilities
[12:57] <rogpeppe1> gary_poster: in particular, rpc can now be bi-directional
[12:57] <bac> gary_poster: sure
[12:57] <bac> rogpeppe1: thanks!
[12:57] <gary_poster> thanks bac
[12:57] <gary_poster> rogpeppe1, so you mean Juju can now initiate a conversation?
[12:57] <gary_poster> as opposed to only responding?
[12:57] <rogpeppe1> gary_poster: yes
[12:58] <gary_poster> ah cool rogpeppe1, that is potentially a big deal
[12:58] <rogpeppe1> gary_poster: yeah, i think so
[12:58] <gary_poster> great
[12:59] <gary_poster> I will keep that in mind in my thoughts going forward
[12:59] <gary_poster> di you have any immediate ideas on how to apply that?
[12:59] <rogpeppe1> gary_poster: i was thinking in particular of cross-environment relations, but i'm sure there are other places where it could be useful
[12:59] <gary_poster> ah, of course
[12:59] <rogpeppe1> gary_poster: there's no requirement that both sides speak the same API of course
[12:59] <gary_poster> sure
[12:59] <benji> log streaming
[13:00] <rogpeppe1> benji: i'm not sure about that actually
[13:00] <gary_poster> benji, watchers would work with that, but...yeah
[13:00] <rogpeppe1> benji: i think for genuine streams, it might be better to just use a normal non-websocket URL
[13:00] <gary_poster> rogpeppe1, benji, actually I was thinking that we might be able to use the statsd pattern for logs too.  I want to talk to mew about standards
[13:01] <benji> rogpeppe1: yep, you're probably right
[13:01] <gary_poster> I mean, it would be a relation interface, as rogpeppe1 suggested at the relevant meeting
[13:01] <rogpeppe1> gary_poster: interface or not, the GUI still has to get access somehow
[13:02] <gary_poster> rogpeppe1, yes, but there are lots of log aggregator tools out there now
[13:02] <gary_poster> if we speak the right language, we can play the game
[13:02] <rogpeppe1> gary_poster: ah, that sounds good
[13:02] <rogpeppe1> gary_poster: BTW did you see that go 1.1 is out now?
[13:03] <gary_poster> rsyslog is maybe the most basic.
[13:03] <gary_poster> I did, rogpeppe1!  I intend to look at the new features.  Does that affect the project immediately, or will we havet owait for 13.10?
[13:03] <rogpeppe1> gary_poster: i think we'll move over immediately
[13:03] <gary_poster> cool
[13:03] <rogpeppe1> gary_poster: there's not much that impacts us directly.
[13:04] <rogpeppe1> gary_poster: i can lose a few hacky bits
[13:07] <gary_poster> rogpeppe1, actually I had a thought for the statsd story that I was going to talk to you about.  we want a "statsd" interface that can operate in both a container scope and a global scope.  Specifically, the container scope is good for Landscape and for "adapter" subordinates (statsd -> XXXNEW_PROTOCOL); the global scope is good for gui and statsd servers and graphs (graphite).  We can simply require that users spec
[13:07] <gary_poster> ify the interface twice, once for each scope, but I thought it would be good to record this use case so we can contemplate addressing it at some point.  Would you suggest simply filing a bug?  Or do you think I'm missing something in my evaluation of the situation?
[13:08] <gary_poster> "addressing it at some point": making it possible to declare an interface once, applying to both scopes
[13:09] <rogpeppe1> gary_poster: won't adapter subs have only the global interface?
[13:10] <rogpeppe1> gary_poster: i.e. aren't adapters just about adapting from something local to the global stats relation?
[13:18] <hazmat> gary_poster, the uistage.jujucharms.com is getting yanked...
[13:19] <hazmat> gary_poster, hp is charging for instances
[13:19] <gary_poster> rogpeppe1, well, that's a question.  so if the scenario is that we have charm A that provides a statsd interface and charmB that requires a NEWSTATS interface, and it is possible to translate statsd to NEWSTATS relatively trivially and automatically, what do you do?  I envisioned that you would want subordinate charmC on charmA that would translate statsd to NEWSTATS, and then you would relate charmB to charmC.  The
[13:19] <gary_poster>  advantages AFAICT are that you add incremental load to the adapter charm that scales out naturally
[13:19] <gary_poster> hazmat, hm.  the biggest problem here is juju.ubuntu.com, I think.
[13:19] <rogpeppe1> gary_poster: could you explain that a bit?
[13:19] <gary_poster> rogpeppe1, sorry, yes, wanted to reply to hazmat, 1 sec
[13:20] <rogpeppe1> gary_poster: np
[13:20] <gary_poster> hazmat, this is probably a discussion for sinzui and maybe alejandraobregon 
[13:21] <hazmat> gary_poster, why are stats relayed through juju?
[13:21] <hazmat> gary_poster, i thought heka + new websocket for stats
[13:21] <hazmat> as statds
[13:22] <gary_poster> hazmat, one thing at a time :-P I'll return to that conv. in a sec .  For now, can we prolong uistage until sinzui and alejandraobregon unveil the new jujucharms.com?
[13:22] <sinzui> gary_poster, hazmat, noted. I think we will plan a new instance
[13:22] <gary_poster> sinzui, hazmat, I suggest that you coordinate timing so there is not a link to nowhere from juju.ubuntu.com, but will step aside otherwise.
[13:25] <hazmat> gary_poster, sinzui based on converations the deploy/reveal of that may get delayed even after tech is done.
[13:26] <hazmat> so best to fix up current links
[13:26] <gary_poster> hazmat, I heard the same, yes
[13:26] <sinzui> that's right. I understand they want to rethink the site's initial exerpience
[13:26] <hazmat> gary_poster do you have a staging site for the gui around?
[13:26] <hazmat> er. trunk testing
[13:27] <gary_poster> hazmat no, will arrange soon, and does not need to block you
[13:27] <gary_poster> public facing bit is the only thing I think we need to coordinate
[13:28] <gary_poster> Back to virst conv., rogpeppe1 and hazmat.  stats not relayed through juju, that's not what I'm talking about hazmat.  statsd talks directly to consumer, whoever they are.  The question is about future-proofing generally, since this is a topic that GUI, Landscape, and Core (at least themue had a related session) care about.  when statsd becomes old news and XXXNEWTHING is new approach, what do we do?  two approaches
[13:28] <gary_poster> .  one is that everyone learns how to talk the new format and the old format.  that's fine.  but I was raising an interesting use case (that is practically important for Landscape only atm) of adapter charms.
[13:29] <gary_poster> well, I was saying that adapter charms might be a way to approach the problem
[13:29] <gary_poster> and I was thinking that they might work best as subordinates
[13:29] <rogpeppe1> gary_poster: are you thinking that stats are shown in the GUI?
[13:29] <gary_poster> and landscape is a subordinate now, and how they want to consume the metrics is from the perspective of a subordinate
[13:30] <sinzui> Someone is making staging.jujucharms.com (manage) very angry. I an getting volleys of hate mail
[13:30] <rick_h_> sinzui: that's me
[13:30] <rick_h_> sinzui: looks like the interesting api call is blowing up on something new. 
[13:30] <rick_h_> sinzui: was just trying to do a final QA on my branch which hits it
[13:30] <sinzui> Shall I forward you all the hate, or are you content just knowing it cannot talk
[13:30] <rogpeppe1> gary_poster: a subordinate can still have global relations
[13:31] <rick_h_> sinzui: well, depends on the hate. If it's something I can help fix today before EOD sure. Else someone else might want to grab it. 
[13:31] <gary_poster> rogpeppe1, metrics only for a single unit.  our use case is diagnosis.  metrics for aggregates are for dedicated solutions, like statsd + graphite connecting to one or more services
[13:31] <gary_poster> eh, lines are being crossed, I'm afraid
[13:31] <gary_poster> rogpeppe1, yeah, I know.
[13:32] <gary_poster> rogpeppe1, quick call in the hopes that it straightens things out faster than otherwise?
[13:32] <rogpeppe1> gary_poster: good idea
[13:32] <gary_poster> rogpeppe1, https://plus.google.com/hangouts/_/7fb7c30f3a232db57dd8549738fb98e723d90d4a
[13:36] <sinzui> rick_h_, this is the bug: https://bugs.launchpad.net/charmworld/+bug/1179942
[13:36] <_mup_> Bug #1179942: Max retries exceeded with url: /charms/_search?size=10 <api> <oops> <charmworld:Triaged> <https://launchpad.net/bugs/1179942>
[13:43] <hatch> morning all
[13:53] <gary_poster> rogpeppe1, just lost you :-/
[13:54] <gary_poster> morning hatch
[13:56] <hatch> can I watch a youtube stream of the vUDS talks?
[13:57] <gary_poster> hatch I don't think it is a stream. I think you have to go to each talk.  maybe wrong
[13:58] <rogpeppe1> gary_poster: network difficulties, sorry
[13:58] <gary_poster> np rogpeppe1 still in hangout if you would like to rejoin
[13:59] <rogpeppe1> gary_poster: trying  but it doesn't seem to like me currently
[13:59] <gary_poster> :-)
[14:00] <jcsackett> rick_h_: do you know if we have bugs filed for all of our remaining UX commitments? or is that still in progress while the designs are completed?
[14:04] <rick_h_> jcsackett: right, we asked luca to file bugs with the assets/etc attached in chunks that made sense.
[14:04] <rick_h_> jcsackett: describing to him how we thought of things as 'widgets' or components that fit together
[14:05] <abentley> rick_h_: which staging is broken?
[14:05] <rogpeppe2> gary_poster: connection coming and going but hangouts still not there
[14:06] <rick_h_> abentley: bug sinzui just posted: https://bugs.launchpad.net/charmworld/+bug/1179942
[14:06] <_mup_> Bug #1179942: Max retries exceeded with url: /charms/_search?size=10 <api> <oops> <charmworld:Triaged> <https://launchpad.net/bugs/1179942>
[14:06] <rick_h_> abentley: breaks anything hitting ES I think atm
[14:06] <abentley> rick_h_: Gotcha.
[14:08] <abentley> sinzui: It sounds like you've been looking at staging.  This looks like the same ES fail I've seen a couple of times.
[14:09] <gary_poster> rogpeppe2, ok thanks for trying.  the main point we were discussing was whether setunit can coexist peacefully with addunit and removeunit.  I think they can, and they ought to.  I'd say that the underlying change is that juju needs to maintain a "goal number" of desired units, and have agents moving the actual number of units to meet that desire.  setunit directly changes that goal value.  addunit and removeunit tr
[14:09] <gary_poster> ansactionally (that is, within a single transaction) get the current goal value, modify it, and set it.  setunit is a better concurrent approach generally, but removeunit and addunit will still work fine technically in the new world.  existing tests relying on addunit and removeunit should be fine.  what do you think?
[14:15] <abentley> sinzui: You can see in the charm.log that ES failed to start when restarted. (/var/lib/juju/units/elasticsearch-0/charm.log at 2013-05-14 07:06:19,759)
[14:16] <hatch> hey there is a new version of go released
[14:19] <gary_poster> yeah go devs switching soon according to Roger
[14:19] <gary_poster> I mean juju devs
[14:19] <rick_h_> yea, says it's backwards compat 
[14:19] <rick_h_> go Go :)
[14:20] <rick_h_> when ever I see Go releases I realize how spoiled I am by the Python stdlib
[14:22] <abentley> sinzui: I'm restoring staging.
[14:23] <hatch> I was just surprised to see a go release
[14:23] <hatch> over a year since their last one
[14:23] <hatch> :)
[14:24] <gary_poster> hey Makyo you around?
[14:24] <hatch> well...with the exception of bug fix ones
[14:24] <Makyo> gary_poster, Yep, though net's a little flaky.
[14:24] <hatch> darn, so it wasn't the router?
[14:24] <Makyo> hatch, apparently not.  Which is good in a way, I guess :)
[14:24] <Makyo> I'll swap later.
[14:25] <gary_poster> Makyo, ack.  I'm worried about that appcache problem we see on tinyurl.com/jujucharms (https://ec2-23-20-230-72.compute-1.amazonaws.com/).  I'm afraid it is going to affect jujucharms.com and we are going to be very unhappy.  Could you investigate, or maybe hand off some of your knowledge about this to someone else (hatch?)
[14:26] <hatch> is this the no css issue?
[14:26] <Makyo> gary_poster, Sure, either or.  I think the end result will be appcache just going away.
[14:26] <Makyo> It's no resources, hatch , not just css.
[14:27] <gary_poster> Makyo, no appcache will make us sad, yeah?
[14:27] <abentley> rick_h_: staging is back.
[14:27] <Makyo> gary_poster, the only things in there are the service blocks, which are going away, correct?
[14:27] <rick_h_> abentley: cool thanks
[14:27] <Makyo> And index.html
[14:27] <benji> grrrr, chrome crashed while attempting a heap capture
[14:27] <hatch> :/ tests passed when they should have failed
[14:27] <gary_poster> Makyo, hmm, good point.  how big are the service blocks right now?
[14:28] <Makyo> gary_poster, 25K
[14:28] <Makyo> For all assets.
[14:29] <gary_poster> Makyo, wow, yeah, let's dump it, unless you disagree.  If you agree, do you have time for that (it involves a bit of Makrfile jiggery) or would you prefer I find someone else so you can focus on the Go branches
[14:30] <Makyo> gary_poster, I'll do it, should be quick.  I think it's just too clumsy for our needs.  All or nothing, too hard to clear, no way to not include index.html, etc.
[14:30] <gary_poster> ok thanks much Makyo 
[14:31] <Makyo> gary_poster, np.  Landing service placement, then that, then proposing branch 2/3 of the go stuff.
[14:31] <gary_poster> cool, sounds good
[14:31] <rick_h_> hatch: did you fix/find the issue with that CI issue of 'cannot find image'?
[14:32] <gary_poster> if it's from two weeks ago, yes.  /me hopes ther's not a new one
[14:32] <rick_h_> hatch: sorry "Can not find requested image" failure to be more exact
[14:32] <rick_h_> gary_poster: my branch landing just tossed it out with that failure :/
[14:32] <gary_poster> :-( :-(
[14:32] <hatch> rick_h_: I don't follow...was it someone else maybe?
[14:32] <rick_h_> hatch: I thought you were looking at the CI failure with the image ids/names not looking right?
[14:32] <gary_poster> hatch, no, he's talking about the fix where you set the new openstack image
[14:32] <rick_h_> hatch: my bad if I'm remembering incorrectly
[14:33] <hatch> ohh yeah no I have no idea about that - it wasn't me - I am trying to find where the login username is being changed to 'admin'
[14:33] <rick_h_> I didn't catch what the final fix was for that
[14:34] <gary_poster> hatch, /me worries you were taken over by aliens...or /me was!
[14:34] <rick_h_> lol
[14:34] <rick_h_> ubuflu turns into ubuabduction
[14:34] <gary_poster> heh
[14:35] <hatch> lol
[14:35] <hatch> there was a massive storm last night so maybe they came in under the cover of thunder
[14:36] <arosales> fyi lower third info for G+ hangouts for vUDS or in general http://paste.ubuntu.com/5598305/
[14:36] <arosales> gary_poster, were you just going to review the s-cloud-* BPs @ https://blueprints.launchpad.net/juju-gui
[14:36] <gary_poster> cool thanks arosales 
[14:37] <arosales> for vUDS guid development sessions tomorrow
[14:37] <arosales> s/guid/gui/
[14:37] <gary_poster> arosales, I was going to extract public facing bits from https://docs.google.com/a/canonical.com/document/d/12NlmaoSJswYe2H1u9Z0pjAhrBtqdtN_h76n5rfj05JA/edit# and discuss
[14:37] <gary_poster> Thursday, not tomorrow, thanks to you :-)
[14:39] <arosales> gary_poster, ah yes :-) 
[14:40]  * arosales needs more coffee :-)
[14:40] <gary_poster> :-)
[14:40] <arosales> gary_poster, sounds good, thanks.
[14:40] <gary_poster> cool, thanks
[14:40] <arosales> gary_poster, let me know if you have any questions
[14:40] <gary_poster> thanks arosales, will do
[14:43] <sinzui> rick_h_, abentley, jcsackett, I think someone tested search with asdf and got an error, this is it: https://bugs.launchpad.net/charmworld/+bug/1179970
[14:43] <_mup_> Bug #1179970: KeyError: 'Docs' <oops> <charmworld:Triaged> <https://launchpad.net/bugs/1179970>
[14:44] <rick_h_> sinzui: ack
[14:44] <abentley> sinzui: Yes, I did.  Not sure what happened there, because that was after I'd run 'juju resolved --retry elasticsearch/0'.  It should have succeeded, and later attemtps did succeed.
[14:49] <bac> rogpeppe2: i've exercised the GUI using your RPC branch and don't see any issues.
[14:49] <rogpeppe2> bac: thanks a lot
[14:49] <rogpeppe2> bac: that's good :-)
[15:10] <hatch> somehow I wrote that whole login/logout route rewrite and didn't get a single indentation lint error....either I'm getting better at this stuff or something is seriously wrong :)
[15:17] <hatch> jujugui Looking for a review and a qa on https://codereview.appspot.com/9415043/ a QA needs to be done using all three back ends please :)
[15:19] <teknico> hatch, conflict in lp diff: https://code.launchpad.net/~hatch/juju-gui/auth-routes/+merge/163732
[15:20] <hatch> ahh crap
[15:20] <hatch> ok ignore that email
[15:21] <hatch> thanks for pointing that out teknico :)
[15:22] <teknico> hatch: quick hangout once you're done reproposing?
[15:22] <hatch> yeah I just want to make sure everything works after fixing that
[15:23] <hatch> annnd it doesnt
[15:23] <teknico> :-)
[15:23] <hatch> *expletive*
[15:23] <gary_poster> hatch, after talking with teknico, ping me to talk about CI plz.  I'm pretty sure you know more than you are letting on about how to fix that CI failure.  Or one or both of us are aliens.
[15:24] <hatch> ok we can chat now
[15:24] <gary_poster> teknico,  gets to go first
[15:24] <hatch> sec while I grab my headset
[15:24] <teknico> hatch: https://plus.google.com/hangouts/_/02bb45411739e441fe107c9f66e2a8cc36ba4ba7
[15:25] <hatch> ok there
[15:26] <abentley> rick_h_: Technically, you won't need has_icon, because icon.svg would be listed in "files", but I'm happy to include it as a convenience.
[15:38] <hatch> gary_poster: ok guichat?
[15:38] <gary_poster> ok hatch 
[15:43] <gary_poster> hey bac, you have a sec?
[15:43] <bac> gary_poster: sure
[15:43] <gary_poster> thanks bac, guichat?
[15:43] <bac> yep
[15:53] <gary_poster> jujugui kanban now, call in 7
[16:03] <rick_h_> abentley: ah true. cool
[16:15] <teknico> Makyo: is your "Refactor RepoSuite to juju/testing" card reviewable? it links neither to Rietveld nor to LP
[16:15] <Makyo> teknico, yes, sorry. Card confusion with splitting branches.
[16:16] <Makyo> teknico, https://codereview.appspot.com/9074045/
[16:17] <teknico> Makyo: gotcha
[16:32] <hatch> rick_h_: are you around today?
[16:32] <rick_h_> hatch: yea, what's up?
[16:34] <hatch> in fixing my tests I have somehow broken a charm browser test suite and I am at a total loss as to wtf is going on - any chance you could take a look?
[16:35] <rick_h_> hatch: sure, linky the branch in progress
[16:35] <hatch> https://code.launchpad.net/~hatch/juju-gui/auth-routes
[16:35] <hatch> thanks
[16:35] <rick_h_> hatch: k, pulling down. Give me a few 
[16:36] <hatch> rick_h_: you should see aftereach failing in browser_charm_view right after "qa content is loaded when tab is clicked on"
[16:36] <hatch> and commenting that test out causes a number of tests to fail much later in the full suite....so I'm totally lost haha
[16:37] <rick_h_> hatch: in app.js so both routes login/logout should be there? solving merge conflict...
[16:37] <hatch> ohh I haven't merged with trunk yet
[16:37] <hatch> I didn't want to introduce more issues yet :)
[16:37] <hatch> only login route should be there
[16:38] <rick_h_> hatch: so no logout route
[16:38] <hatch> nope
[16:38] <rick_h_> k
[16:39] <rick_h_> hey, who's leaving the slider assets around the test suite :P
[16:40] <hatch> yeah I noticed that too - I was going to look into fixing that after I got this branch landed
[16:43] <rick_h_> hatch: guichat?
[16:45] <hatch> yup
[16:59]  * rick_h_ yells "not me!" and runs away from failing test
[17:00] <hatch> lol
[17:00] <hatch> thanks for looking :)
[17:17] <bac> hi hatch, quick chat?
[17:25] <bac> hatch: you got a sec?
[17:26] <hatch> sure whats up?
[17:43] <rick_h_> hatch: this Go login thing isn't intermittent. I've gotten it 10 straight times. 
[17:44] <hatch> rick_h_, it depends on the speed it runs it with
[17:44] <hatch> it's ok I know what that issue is ;)
[17:45] <rick_h_> hatch: ok, just trying to poke at this some more. Depending on what I comment out I get all kinds of diff errors
[17:48] <hatch> yeah something is right messed up with these tests
[17:54] <bcsaller> updated card on "export UI" with a review branch when people have time
[17:56] <hatch> rick_h_, I think I solved it
[17:56] <rick_h_> hatch: orly?
[17:56] <rick_h_> hatch: legit issue or just the test suite hating us?
[17:57] <hatch> I think it was an issue with how the tests were written combined with the long instantiation procedure for app
[17:57] <hatch> might have to put some thought into restructuring app
[17:58] <rick_h_> hatch: well I'm all for restructing the test suite :P If app passes the tests then so be it imo. 
[17:59] <hatch> well I was thinking about breaking the app instantiation into a number of extensions which we can turn on/off for testing
[17:59] <hatch> that's my 5s worth of thought on the matter
[17:59] <hatch> :)
[17:59] <rick_h_> hatch: but you still need tests with it all turned on. 
[18:00] <rick_h_> hatch: so if that'll fail then at least let's make sure we know that's what failed vs something 100 tests later
[18:00] <hatch> thats kind of my thoughts - I am also working with a migraine so I'm sure there are also some other issues associated with it that I'm missing :)
[18:01] <rick_h_> hatch: I guess at some point I just wonder if we're fixing the symptoms vs the real problem. If the code's not broken the tests need fixing not the code. 
[18:01] <rick_h_> hatch: ah, well go take some meds for that. hate those evil things
[18:01] <hatch> true but there is something to be said about 'testable code' 
[18:02] <hatch> so it could be that the app is becoming to large to instantiate 
[18:02] <hatch> for tests
[18:03] <rick_h_> hatch: k, well if you found something all good and I'm all for making app easier to maintain/etc. I just don't want to add complexity by flagging app features purely because the test suite hates us. 
[18:03] <rick_h_> not that it's my decision or anything, but my input since I heard someone ask me on the wind over here in my coffee shop :P
[18:03] <hatch> haha so true so true - well once I finish modifying the tests if it works then we can look at it in more detail
[18:04] <hatch> it's windy IN the coffee shop?
[18:05] <hatch> ;)
[18:05] <rick_h_> hatch: or maybe it was just the voices in my head. I can never tell
[18:16] <hatch> haha
[18:27] <gary_poster> I wonder when the service page got too big and required scrolling :-/
[18:28] <gary_poster> sometimes
[18:28] <gary_poster> mm all the time
[18:28] <gary_poster> but sometimes it works for the first few seconds
[18:30] <hatch> gary_poster, I thought we were ignoring that because of the new UX?
[18:30] <gary_poster> not my intent
[18:30] <hatch> oh ok sorry :)
[18:32] <hatch> we got a new radio station, all 80's and 90's hits
[18:32] <hatch> w000t
[18:37] <gary_poster> hey bcsaller I'm trying out your export branch.  shift d works great.  I can't get what I believe be the help key to work (shift /, or simply "?" AFAICT).  From your branch it looks like I should be able to drag the environment name at the top of the page but that is not working for me.  Finally and most trivially, the "esc" callback throws errors when #shortcut-help is not around.  Can you correct me to the proper 
[18:37] <gary_poster> help key and the proper drag mechanism?
[18:38] <gary_poster> that was some strange English
[18:38] <gary_poster> ...what I believe to be...
[18:38] <gary_poster> ...Can you correct my understanding of the help key and the drag mechanism?
[18:39] <bcsaller> gary_poster: Shift-/ or '?' works for me on that branch, odd. I also don't see an error pressing escape as shortcut help is always there (just not visible)
[18:39] <gary_poster> huh
[18:39] <gary_poster> I'll reload page after clearing appcache
[18:39] <bcsaller> the word 'Environment' is the drag target (but I didn't change the cursor on hover as I don't think we should promote this feature yet)
[18:40] <bcsaller> gary_poster: when you start the drag however it does change
[18:40] <gary_poster> bcsaller, duh, looks like I just needed to clear appcache.  sorry for false alarm
[18:42]  * bcsaller shakes his fist at appcache one final time
[18:42] <gary_poster> :-)
[18:46] <gary_poster> bcsaller, shift d works great, but if I export a larger environment (like http://ubuntuone.com/3dl0I8k9YsG52dvmzFdiOH) with drag-drop I get an error ("Error opening file '/home/gary/Desktop/{"meta":{"exportFormat":1},"services":[{"displayName":"cassandra","name":"cassandra","charm":"cs:precise/cassandra-3","config".txt': No such file or directory")
[18:46] <gary_poster> it looks like the name is the content when you drag-drop?
[18:47] <bcsaller> gary_poster: it shouldn't be, maybe I botched the merge, my quick testing seemed to work before, checking now
[18:48] <gary_poster> bcsaller, fwiw I merged your branch into trunk for review.  Maybe that's the problem
[18:48] <gary_poster> no conflicts though
[18:48] <bcsaller> I did that this morning as well before the CR push
[18:50] <bcsaller> gary_poster: there are two import paths, the file reader one which is the drag from file manager to browser case, the other is from the clipboard. The clipboard case will put the JSON (if it fits) in the clipboard
[18:50] <bcsaller> AFAIK it can't set a filename associated with that clip though
[18:50] <bcsaller> so nautilus sees the drag and tries to name the file its contents
[18:51] <gary_poster> ack, on call back soon
[18:51] <bcsaller> however dragging to another gui instance is fine as it tries to import that data directly
[18:51] <bcsaller> ok
[19:00] <Makyo> my cobzr setup got corrupted :|
[19:04] <bac> Makyo: kill cobzr
[19:05]  * Makyo gets out the knife :/
[19:06] <bac> Makyo: seriously, did you read tim's suggestions in juju-core/docs/bazaar* ?
[19:06] <hatch> rick_h_, yeah looks like I found a good workaround 
[19:06] <hatch> it was because of multiple app instantiations with such a long init cycle
[19:06] <Makyo> bac, re: switching to pipelines?
[19:07] <bac> Makyo: you don't have to go all the way to pipelines but just use a sane set up for lightweight checkouts that allows you to get rid of cobzr
[19:07] <Makyo> Something just fell off the roof.  Back in a sec.
[19:10] <Makyo> Oh well.
[19:10] <sinzui> I see m.jc.com just through a wobbly when someone was looking at the juju-gui charm
[19:10] <Makyo> I'll read up on it, bac.
[19:11]  * sinzui reports bug
[19:18] <rick_h_> hatch: cool
[19:19] <hatch> of course I am trying to solve some edge cases now
[19:22] <rick_h_> bcsaller: you guys have a running GUI charm on prodstack right? It's just a raw IP port right now?
[19:22] <bcsaller> rick_h_: I'm not sure the status of that 
[19:22] <rick_h_> bcsaller: asking because abentley noticed that the charm installs apache, but prodstack rules say you must go through the apache charm from them and curious if there's a branch/etc to look at for the latest/greatest
[19:23] <bcsaller> hmm, afaik they accepted what we delivered 
[19:24] <bcsaller> there was no additional work to support a remote apache. Currently the server is static files though so they might have let it in because of that 
[19:24] <rick_h_> bcsaller: ok cool. 
[19:33] <hatch> rick_h_, still around?
[19:41] <rick_h_> hatch: what's up?
[19:41] <hatch> wondering if you could pull down the latest version of my auth branch and see if that Go error pops up
[19:41] <rick_h_> hatch: k, sec
[19:41] <hatch> thanks
[19:44] <rick_h_> hatch: all tests pass
[19:44] <hatch> righteous 
[19:45] <rick_h_> hatch: just testing something else out quick, sec
[19:46] <rick_h_> hatch: so if I comment out the test_app (which I was doing to help debug the test issue) it happens every time
[19:47] <hatch> ok let me try that
[19:49] <hatch> darn I still can't repro
[19:49] <hatch> are you on your desktop?
[19:50] <rick_h_> hatch: laptop
[19:50] <rick_h_> desktop arrives tomorrow
[19:50] <rick_h_> hatch: sec, let me breakpoint there and peek
[19:51] <gary_poster> I attended Juju vUDS session.  Took some notes from GUI perspective, fwiw: http://pad.ubuntu.com/uds-1305-juju-core-development
[19:51] <gary_poster> big take away: we need even more of a machine perspective than I thought
[19:51] <hatch> rick_h_, ok I was able to reproduce it once - I was asking about the desktop because maybe it was a speed issue - looking into the test now
[19:52] <rick_h_> hatch: yea, understand. 
[19:52] <gary_poster> rick_h_, bcsaller yes they accepted the apache because GUI needs to be behind haproxy to merge websocket (juju) and normal web resources (apache).  If we were a subordinate, we would still need our own apache, or something like that.
[19:53] <gary_poster> not sure if we could have our own apache within another apache. don't see how that would work
[19:53] <hatch> gary_poster, mongo works better in HA with odd numbers? lol 
[19:53] <hatch> have to admit that's pretty funny :)
[19:53] <bcsaller> hatch: https://speakerdeck.com/mitsuhiko/a-year-of-mongodb ;)
[19:53] <gary_poster> hatch, :-P :-)
[19:54] <rick_h_> hatch: hmm, so they 'look' the same to me 
[19:54] <rick_h_> hatch: just the order is diff from what I can tell
[19:54] <rick_h_> hatch: maybe the test can just compare multiple properties expected to match instead of the deepequal?
[19:55] <hatch> rick_h_, no the deep eql is necessary - the issue is a race condition...now I need to figure out how to fix that
[19:56] <hatch> that guys slides are wrong.....mongo doesn't use JSON records :P
[19:56] <hatch> I will read more after I fix this test
[19:57] <rick_h_> hatch: http://paste.mitechie.com/show/959/
[19:57] <rick_h_> mongodb needs 3 so you can always vote for a new master. Also you usually want sharding, and 3 of each shard...so enjoy the number of machines 
[19:58] <hatch> ohh that's why it needs 3...I guess that makes sense
[19:58] <rick_h_> yea, you want to have a vote to promote else some out of date second can just become master and oh well to any data that didn't get there yet
[19:59] <rick_h_> hatch: so yea, I don't know. When I debugger into that test and check each property I'm golden. Then again if it's a race the delay in getting at the object must be cool and fix it
[20:01] <hatch> yeah - I know how to fix it....just trying to figure out how without rewriting all of the tests
[20:01] <hatch> :)
[20:01] <rick_h_> hatch: ok, then I can quit poking at this and EOD
[20:01] <rick_h_> have fun :)
[20:02] <hatch> thanks for your help
[20:03] <rick_h_> hatch: heh, happy to just yell "it's broke" :)
[20:04] <hatch> oo new radio station is playing Oasis
[20:04] <hatch> fixed....but yuck
[20:05] <rick_h_> hatch: what was that? I stopped reading at 'fixed' :P
[20:06] <hatch> https://gist.github.com/hatched/3ec63ac042ad698c6ea6
[20:06] <hatch> ln 2 to 11
[20:06] <hatch> feel free to try that in your branch :)
[20:06] <rick_h_> hatch: now turn that into a method resetGoEnv() and it's pretty again
[20:07] <hatch> sure I still think it's a hack :)
[20:08] <rick_h_> hatch: yay tests pass
[20:08] <hatch> and I thought that the login/logout routes would be a simple fix :)
[20:09] <rick_h_> hatch: ok, color me confused. What you added is just a pass through beforeEach/afterEach?
[20:09] <hatch> the before/after each still run as normal, so that's why I am destroying the env that the before created
[20:09] <hatch> clobbered the method causing issues
[20:10] <hatch> then reset it back after
[20:10] <abentley> gary_poster: I don't understand why you would need your own apache if it was a subordinate.  The subordinate relation could make the charmed apache serve your static files.
[20:15] <gary_poster> abentley, the GUI's haproxy would need to proxy the apache, so the haproxy needs to have control over the external port that serves the GUI--80 and 443 in our case.  I could imagine a setup that had the GUI served from apache in one charm, and then fronted by an haproxy service that was specially configured to serve the Juju API properly.  That haproxy would probably require custom development and unusual configurat
[20:15] <gary_poster> ion, and would be antithetical to my desire to make deploying the GUI very easy (a single deploy statement and a single expose statement).  If we could make the GUI charm support both the easy deploy and the subordinate deploy story then that would be fine in theory.  However, 
[20:16] <gary_poster> that is only interesting with the jujucharms.com/sandbox story.  Until convinced otherwise, I prefer to have a single charm that is configured to handle the different cases.
[20:16] <gary_poster> That was a bit convoluted, sorry. :-/
[20:25] <hatch> I noticed that the featured flags route is at the end of the route list - shouldn't that be at the start?
[20:26] <hatch> so that the other routes can rely on that code?
[20:26] <abentley> gary_poster: I'm not familiar with the haproxy+websockets issues.  Do I understand correctly that juju-gui's charm installs both juju-gui and haproxy?
[20:26] <abentley> gary_poster: And apache?
[20:26] <gary_poster> abentley, yes.  want to have a chat?
[20:26] <abentley> gary_poster: sure.
[20:27] <gary_poster> abentley, guichat is open (https://plus.google.com/hangouts/_/7fb7c30f3a232db57dd8549738fb98e723d90d4a)
[20:33] <hatch> jujugui - anyone available for a QA and review? https://codereview.appspot.com/9415043/
[20:35] <bcsaller> hatch: I can review that
[20:35] <hatch> thanks - any chance I could get a QA too? sorry QA'ing this kind of sucks :/
[20:37] <bcsaller> yes
[20:38] <hatch> u da man
[20:54] <gary_poster> hey bcsaller.  so, I can drag and drop into another GUI, or...what else?
[20:55] <gary_poster> I guess a text editor.
[20:55] <gary_poster> trying
[20:55] <abentley> sinzui: Have you seen my explanation of the deeper cause in https://bugs.launchpad.net/charmworld/+bug/1179942 ?
[20:55] <_mup_> Bug #1179942: Max retries exceeded with url: /charms/_search?size=10 <api> <elasticsearch> <oops> <charmworld:Triaged> <https://launchpad.net/bugs/1179942>
[20:55] <bcsaller> another gui is really the target, the export hotkey is the download story as its not size limited
[20:55] <sinzui> ES was not up
[20:55] <gary_poster> text editor does not work.  ah ok
[20:56] <gary_poster> hm
[20:56] <sinzui> ^ abentley ES was not up, so the app tried until it hit the max
[20:57] <abentley> sinzui: Right.  I'll copy the explanation to 1176901, but please don't mark *that* as a dupe :-P
[20:57] <hatch> bcsaller, so what's the best way to clear out the namespaces?
[20:58] <sinzui> abentley, It is the older bug and I think it is the same issue. It is about the time we discovered that ES timesout on start
[20:58] <bcsaller> hatch: look at showRootView
[20:58] <hatch> ok I was thinking override myself thanks
[21:02] <hatch> hmm not working
[21:02] <hatch> to the investigator!
[21:03] <abentley> sinzui: I'm sorry if I didn't communicate that clearly to you earlier.  I thought I had.
[21:06] <bcsaller> gary_poster: do you need different behavior for export? Our choices are limited w/o the server generating a URL for the Download. If it does then we can be more sophisticated. 
[21:06] <bcsaller> generating the blob for the S-d export works because it doesn't need to be referenced apart from the download, but passing a URL (the other mode of DnD) can't reference such a file. 
[21:07] <bcsaller> there is a possibility to request local file access, generate the file there, but its was not clear it was worth the effort 
[21:08] <gary_poster> bcsaller, ok.  had to think a bit about that.  I am concerned about the drag and drop UX because I think it gives the wrong idea of what you can do.  I realize that this must be demonstrated to someone for them to find it, but I want to make it super explicit that this is experimental.  Could you put the drag and drop behind a "gui.experimentaldndexport.enable" flag, or similar?  (you could delete the "experimental,
[21:08] <gary_poster> " for instance :-).  Then when we demo, it will be clear that this is not released and should not necessarily be expected in the future.
[21:08] <bcsaller> drag out being a strange story to being with. Store interaction for example would make more sense 
[21:08] <gary_poster> sorry, reading what you are saying now
[21:08] <gary_poster> yeah agree
[21:09] <gary_poster> basically I think we ought to be able to show off what you have done, so people like Luca can get a feel for possibilities, while being clear that this is not actually released
[21:09] <gary_poster> it sounds like you are on the same page
[21:09] <gary_poster> again, I realize the feature flag simply adds to the hidden nature of what you already had
[21:10] <gary_poster> bcsaller, you ok with featureflag?  if so will LGTM 
[21:10] <gary_poster> btw, who updated the background for the gui blog?  I meant to say thank you!
[21:11] <bcsaller> gary_poster: yes, fine with that, though I'd make it quite short if you're ok with it /:flags:/dnd or something
[21:12] <gary_poster> bcsaller, prefer to make it explicit.  In approval to Matt's branch I pointed to Launchpad feature flag names.  As I quoted them I thought they might be too heavy, but "dnd" is IMO an example of what we don't want: a feature flag that does not clarify what it does, and that will encourage naming conflicts
[21:13] <bcsaller> fair enough
[21:14] <gary_poster> so, I'd be fine with a naming convention that was more trusting, and more trying to state the intent rather than the letter: "choose a name that clearly indicates what it does, both for docs and for name clashes"
[21:14] <gary_poster> we need to share this though
[21:14] <gary_poster> right now the rule is the LP rule
[21:16] <bcsaller> gary_poster: right now its only enabled with sandbox (except for the hotkey, which I think is fine?) I will add the flag. I think always saying gui. and experimental can both be dropped and presence indicates enable implicitly, no?  So 'dndexport'?
[21:18] <bcsaller> if you feel strongly I can go with the whole thing though
[21:18]  * gary_poster hates xchat sometimes
[21:19] <gary_poster> bcsaller, ok with dumping gui (was in contrast with charmbrowser. or inspector. or whatever) for now until we change our minds.  The other element is supposed to be a verb
[21:19] <gary_poster> dndexport.enable
[21:20] <bcsaller> ok
[21:20] <gary_poster> the contrast is supposed to be "disable" or a particular flavor of approach
[21:20] <gary_poster> bcsaller, you can argue against that too and say YAGNI until proven otherwise
[21:21] <bcsaller> seems like presence is on, as you'd never have to turn off a feature flag given our current plans?
[21:21] <bcsaller> they will all say .enable
[21:21] <gary_poster> maybe so bcsaller .  go for it.  have to run. :-P
[21:21] <bcsaller> ha, ok
[21:21] <gary_poster> :-)
[21:43] <hatch> bcsaller, the fix is being proposed
[21:46] <hatch> bcsaller, ok the changes are up - should QA properly now
[21:46] <hatch> you might need to appcache-force 
[21:46] <bcsaller> hatch: I'll check it again in a few minutes, thanks
[21:47] <hatch> yep no rush thanks again
[22:08] <hatch> thanks for the qa and review bcsaller - I'll add that note into hacking
[22:08] <hatch> anyone else still working? :)
[22:08]  * hatch wants to land this
[22:26] <hatch> bcsaller, I created a new unit-tests.rst file to document unit test gotchas and added it to the branch
[22:35] <hatch> morning huwshimi 
[22:40] <Makyo> hatch, looking at your branch because sick of bzr.
[22:40] <hatch> switch to git?
[22:40] <hatch> :P
[22:41]  * hatch is just trolling 
[22:41] <Makyo> HAh.
[22:42] <hatch> lol I have only found a few things that git is actually better at
[22:42] <hatch> but they are used so infrequently it's hardly worth it
[22:43] <Makyo> Yeah.  There's a lot of stuff that bzr does or can be made to do that make the transition relatively easy.  I just screwed up my local stuff.  Was going to rebuild, but I need a break.
[22:43]  * rick_h_ sneaks up behind hatch to snuff out that nonsense he's spewing
[22:43] <hatch> haha sounds good
[22:43] <hatch> rick_h_, lol I think you're more pro-git than I am :)
[22:43] <rick_h_> hatch: it definitely sounds so
[22:54] <hatch> Makyo, is there more recent documentation for juju charm development than https://juju.ubuntu.com/docs/getting-started.html this hasn't been updated since november
[22:55] <rick_h_> hatch: check with marco in #juju and ask about juju create and such
[22:56] <rick_h_> hatch: there's some stuff in the works but not sure where/what state it's at
[22:56] <Makyo> hatch, Don't know, but yeah, check with marcoceppi.
[22:56] <Makyo> Or m_3, I think?
[22:56] <hatch> that name has a ring to it
[22:56] <Makyo> You talked with both of them about the node charm.
[22:56] <hatch> marcoceppi......marcoCeppi......maaaaarcoCEPPI
[22:57] <rick_h_> heh
[23:05] <Makyo> hatch, lost track of time.  Will do a code review now and try to do QA after dinner.
[23:05] <hatch> sure np - bcsaller did a QA so you probably don't have to if you don't want to
[23:06] <hatch> but 2x is always better :)
[23:07] <Makyo> hatch, will leave it up to you, but yeah, more is better
[23:08] <hatch> maybe because it's such an integral part you should probably do another
[23:08] <hatch> I am not sure if he tested with the go back end
[23:08] <hatch> do we have a fake go back end?
[23:08] <hatch> :)
[23:29] <hatch> Makyo, thanks for the review  - I was also curious about the story for requiring the login
[23:29] <hatch> I'll create a friday ticket
[23:32] <Makyo> hatch, cool, thanks.
[23:32] <Makyo> hatch, I know a lot of sites that lose your current goal when you log in, so it's not unusual by any stretch, but still.
[23:32] <Makyo> Some keep it in a ?next=<url>
[23:34] <hatch> yeah I am just thinking that if that happens and then they paste the url again they will need to log in again
[23:34] <hatch> *might need to*
[23:34] <hatch> I'd like to see a ?redirect I think...
[23:34] <hatch> or yeah... a ?next or something along those lines
[23:34] <hatch> should be pretty easy to implement
[23:34] <rick_h_> stick it in localstorage and clear it out post-login
[23:35] <rick_h_> avoid url/router bits
[23:35] <hatch> that might be more work
[23:35] <Makyo> hatch, yeah.  I mean, pasting the URL again, they have the creds in local storage.
[23:35] <hatch> yeah if they have allowed the local storage
[23:35] <Makyo> True.
[23:35] <Makyo> or session storage or whatever we use.
[23:35] <rick_h_> who doesn't allow localstorage? it's pretty darn built in
[23:35] <hatch> rick_h_, it asks for permission - people click no out of habit haha
[23:36] <rick_h_> hatch: it doesn't for localstorage
[23:36] <rick_h_> hatch: you're thinking offline cache access, I just mean sticking the url to redirect to in the key/value store
[23:36] <rick_h_> http://caniuse.com/namevalue-storage
[23:36] <rick_h_> hatch: they don't ask until after 5MB I think
[23:37] <rick_h_> http://dev.w3.org/html5/webstorage/#disk-space
[23:41] <hatch> oh right
[23:43] <hatch> that would probably be the cleanest but using the query params would be the easiest to implement
[23:43] <hatch> although probably not by mjuch
[23:44] <rick_h_> hatch: yea, just an idea as it's more invisible. I'm with Makyo that it'd be nice to implement url saving on login for sure
[23:44] <hatch> ok well there is a ticket for Friday to discuss
[23:44] <hatch> I'm sure that it will pass pretty easily