/srv/irclogs.ubuntu.com/2012/12/14/#juju-gui.txt

gary_posterswebb, there's a painful manual answer, and an incomplete automatic answer.  I'm not going to bother with the manual answer because it is too annoying, and I don't want to describe or support it.  For the automatic answer, we're working on a charm, currently in https://code.launchpad.net/~juju-gui/charms/precise/juju-gui/trunk .  It is nominally usable now.  The biggest problem is that there is zero security: if som02:07
gary_postereone knows your gui box address, they can connect and do anything they want (in terms of starting, stopping, and modifying services via the charms) over the web socket.  There are numerous other small problems--the next biggest one is that the charm should be working with gui releases, and not with the gui trunk.  We are working on all of those.  We should have decent answers for both of them by the end of the next 02:07
gary_posterweek, before Christmas break, and then we will polish and announce in early January.02:07
swebbI tried the juju-gui-4 charm last night and I got it running, but I couldn't connect to it for some reason.02:08
gary_posterswebb, did you expose it?02:08
swebbI 'exposed' it (and double-checked my security groups) and it was open.02:08
gary_posterhm02:09
swebbI logged onto the machine too and found it running on port 8080, but when hitting the port, I got some weird error.  I'll see if I can find the error again.02:09
gary_posterswebb, one of the problems with not using gui releases is that we can change something in the gui that breaks the charm02:09
gary_posterour tests in the gui don't run the charm02:09
gary_postercharm tests run the charm :-P02:10
gary_posterthat's why we are switching default behavior to use qa'd releases02:10
swebbYea, when I run it locally, I do a 'make prod'.02:10
swebband it runs.02:10
swebbbut it doesn't know about my environment, so it doesn't show anything.02:10
gary_posterright02:10
swebbWhen I use the juju-gui-4 charm, it fired up, but when connecting to it, the error was "no such resource"02:11
gary_posterlocally, you need to run a custom juju that connects to the main juju zookeeper02:11
swebb(on port 808002:11
gary_posterswebb, did you try port 80?  02:11
swebbAre there docs somewhere that will allow me to do that?02:11
swebbYea, I tried port 80 too.  That hung.02:11
gary_posterIIRC that's the expected port now02:11
swebbok.02:12
swebbI'm going to get it all up and running like at the BoF last night when I get back to work and wow my coworkers.02:12
swebb:)02:12
gary_posterdocs: no, we don't want to support the zookeeper story.  you can look at the charm, in the install hook, and get an idea of what is necessary02:12
gary_poster:-)02:12
swebbok, so if I install the charm, which hook do I look for to get it to see my active environment?02:13
swebbzookeeper?02:13
swebboh, the install hook.  My bad.02:15
swebbSo the install instructions should be: juju bootstrap ; edit juju-gui install hook, juju deploy juju-gui ; http://hostname:80/ to do the rest.02:16
gary_posterswebb, about to be afk, but install instructions are dev oriented at http://jujucharms.com/~juju-gui/precise/juju-gui *but* the last three paras are for you, starting with, "Deploying parameters may be configured by creating a configuration file"02:20
gary_poster(everything above that should be ignorable, assuming you are using version 14/revno 12)02:21
gary_posterbut no guarantees until we get the tests running with real GUI releases!02:22
gary_postergood luck, and we'll be stable for you very soon02:22
gary_posterttyl02:22
swebbThanks for the info.  I'll keep listening to this channel.02:22
swebbok, thanks!02:23
dguerrii all, is there a working juju web-UI for real (not dummy) providers? 10:45
dguerriI'm using rapi-delta10:45
teknicodguerri, hi, I'm not sure what you mean11:52
dguerriI'm trying to integrate the juju web-hi with our openstack installation11:52
dguerri*web-ui (sorry)11:52
teknicoweb-hi is rather nice too :-)11:53
dguerrihehe :)11:53
dguerridamn autocorrection :)11:53
dguerrimoreover I'm from Italy my english is not the best 11:53
gary_posterdguerri, yes.  https://code.launchpad.net/~juju-gui/charms/precise/juju-gui/trunk is the charm we are working on to make it easy.  It is in flux right now, with two main limitations, but it works.  I expect us to be at a state that we can encourage people to give it a try by the end of next week, just before the break; and we intent to polish it and announce it during the first two weeks of Jan13:01
gary_posterintend13:01
dguerrigary_poster: thanks, it includes the restful service needed by the gui ?13:04
gary_posteryes dguerri 13:05
dguerrigreat!13:05
dguerrii'll try it asap13:05
gary_posterdguerri, two big limitations that we are fixing: (1) there is no security, so anyone who can connect to your web socket can control your juju; (2) charm is based on trunk rather than releases, so our automated tests can still fail us and give us a branch of the GUI that doesn't work well with the charm.  Fixes for both are in progress, as I said13:07
gary_posterTo mitigate risk of #1, if you are on ec2, change your security connection to only allow a connection to your IP13:08
gary_posterbut more reasonable fix on the way (HTTPS, password)13:08
dguerriyes I'm aware of the #1… however it is more related to the guy itself and not to the charm, isn't it? 13:09
dguerribtw I'm going to try it on openstack in a protected environment13:10
gary_posteryes dguerri, thought the charm has to play along too, of course13:10
gary_postercool13:10
gary_posters/thought/though/13:10
dguerri<adv>www.unicloud.it</adv>13:10
dguerri:)13:10
dguerrithanks for all the info13:11
gary_posterheh, cool :-)13:11
gary_posternp13:11
frankbangary_poster: do you have time for a quick hangout?13:23
gary_postersure frankban 13:24
frankbangary_poster: juju-ui?13:24
gary_postersure frankban.  checking to see if it is open13:24
gary_posteryes13:24
=== mattuk1972_ is now known as mattuk1972
gary_posterbcsaller, hi.  I have an embarrassingly inexperienced question: how do you deploy a non-official charm from the charm store?  I've only ever done that locally.  Neither "juju deploy ~juju-gui:precise/juju-gui" nor " juju deploy lp:~juju-gui/charms/precise/juju-gui/trunk" work.  My next try would be bzr+ssh or https, but I decided asking might be a nice idea. :-)14:14
gary_posterdocs don't seem to address this clearly14:15
bcsallergary_poster: you'll be best with a local charm, there is --repository and local:series/charm14:15
gary_posterbcsaller, I am getting a lot of support questions for people wanting to give a try to the charm itself.  I was rewriting our charm's README to give them a big warning about where we are, and then tell them how to try the charm out.  I'd rather not tell them to use a local charm.  Is there no easy way for them to just give the charm a try?14:17
gary_postera lot == 2 in 12 hours :-)14:17
bcsallergary_poster: let me check, there is a way, I think its just with the lp: but I'll check14:19
gary_posterthanks14:19
goodspudgary_poster, as an admin for the juju-gui list, can you alter my settings so I don't just get the digest?14:25
bcsallergary_poster: ahh, its like juju-deploy cs:~gandelman-a/quantal/mysql14:25
gary_postergoodspud, yes, will do14:26
goodspudgary_poster, cheers!14:26
gary_posterah bcsaller cool thanks!  seems to have worked14:27
bcsallergary_poster: it was odd enough that I forgot how that worked14:27
gary_poster:-)14:27
bcsallerI always did devel with local charms14:27
frankbanbcsaller: re d3 components framework: do you think Module.events.yui is the right place for synthetic events (like 'windowresize')?14:28
bcsallerfrankban: that is the intent, do you disagree?14:28
frankbanbcsaller: no I don't. My next branch will contain a little patch to how the event is handled by the framework, so I just wanted to be sure of it.14:30
bcsallerfrankban: I have some minor pending changes as well, I'd be happy to talk about it at any point14:31
frankbanbcsaller: sure, whenever you want14:31
bcsallerfrankban: I can hop on g+, in public now if you want to chat14:32
gary_posterbcsaller, want to talk to frankban now and ping me when you are done?14:33
bcsallergary_poster: sounds good14:33
gary_postercool14:33
frankbanbcsaller: juju-ui?14:33
bcsallerfrankban: yeah14:33
bcsallergary_poster: all done14:37
goodspudQuick thought re my last email to the list, if the gui charm forms part of the infrastructure for an environment can it be deployed to the bootstrap node?15:04
bacgoodspud: i think that is the plan but juju core doesn't allow it yet.15:10
goodspuddamn you juju core... damn you to hell!15:11
goodspudbac, then I stick with my suggestion of ensuring we write the warnings into the readme file for the charm and sort out stuff later once juju core can handle co-location15:12
bacwhat does the '|' do in makefile dependency lists?15:15
bace.g. in the $(BUILD_FILES) target15:15
bachmm, 'order-only-prerequisites'15:17
gary_posteryes bac can explain if desired15:29
bacgary_poster: no, i'm good now15:29
gary_posterbac benji bcsaller frankban goodspud hazmat (?) Makyo call in 115:29
bacand its Meeting Time15:29
gary_posterMakyo ping15:33
MakyoWas sitting on the join screen, oy.15:35
arosalesgary_poster: Unfortunately I won't be able to make today's restorspective I have a conflict. :-(15:44
gary_posterok thanks arosales 15:45
dguerrigary_poster: sorry to bother again but so far I can't understand the restful api services architecture for juju. For instance, why are you using "improv.py" ?16:02
dguerri "improv.py" seems to be only a demo since is using fictional data16:04
gary_posterdguerri, yes, it is fictional.  In the charm, you only use improv when "staging" is true16:24
gary_posterotherwise you are connecting to a juju instance that is connecting to the shared zookeeper and providing the restful interface16:24
gary_posterdguerri, I'm writing a better user help doc ATM.  We're still not quite ready for you--end of next week should be much better--but it can work now16:25
dguerriok, thanks16:25
gary_poster(dguerri, fwiw, also we've been saying "RESTful" but it is a bit of a misnomer.  It's a websocket connection that has communication that roughly follows RESTful best practices in how its communications are spelled)16:27
dguerrinow is more clear to me… so this (REST or whatever) interface feeds a zookeeper instance, right?  (please be patient, I'm a newbie for juju, zookeeper and python… however I'm a developer)16:29
gary_posterdguerri, zookeeper is an implementation detail that I probably shouldn't have mentioned.  It is replaced in Go Juju.  Our current story is something like this:16:30
dguerrigood to hear that… zookeeper seems a.. beast to me :D16:31
gary_posterGUI connects to a websocket.  websocket is provided by a custom Juju instance that connects to a shared state (which happens to be implemented with zookeeper) that the main Juju instance also uses.16:32
gary_posterIn the future, Go Juju will simply provide the websocket directly16:32
gary_posterBig picture, that's the way to think of it16:32
gary_posterthe GUI connects to a websocket from Juju, and the websocket exposes all of the standard Juju commands16:33
dguerriwow… now i understand the big picture… thanks!16:33
gary_posternp dguerri 16:33
dguerrithanks a lot! great16:33
dguerribtw, I really love juju.. it's a pity is wasn't developed with ruby :P16:34
gary_poster:-) well, I doubt we'll have a third rewrite--certainly hope not ;-)16:34
dguerrifirst one was  java… ?16:35
gary_posterPython16:35
gary_posterUpcoming one (13.04) is Go16:35
dguerriah 16:35
dguerri:)16:36
gary_posterhey frankban, I'm updating the charm README to better describe how to use it.  Do you have a second to help me document the jitsu deploy-to variant?16:53
frankbangary_poster: sure16:53
gary_posterthanks16:53
gary_postertrying juju-ui frankban ...16:53
gary_posterempty16:54
frankbancould anyone please review https://codereview.appspot.com/6941053 ? thanks!16:59
gary_posterbcsaller, ^^ :-)17:00
bcsalleryeah, I can do that 17:02
frankbanbcsaller: thank you17:04
gary_posterfrankban, I'll review yours if you review mine :-) https://codereview.appspot.com/694505817:10
frankbangary_poster: agreed17:12
gary_poster:-) thx17:12
gary_posterapproved frankban 17:14
frankban:-) thanks gary_poster 17:14
gary_posterand I like your QA instructions, but unfortunately I'm still doing them......17:14
gary_poster:-)17:15
frankban:-)17:15
gary_posterMakyo, approved your branch17:22
Makyogary_poster, Thanks, should I land before lunch?  It's minor.17:55
gary_posterMakyo, shrug. :-)17:56
gary_posterdo what works for you17:56
gary_posterlanding is good for the kanban board 17:56
gary_posterso I lean towards doing it sooner17:56
gary_posterbut if you are hungry...17:56
gary_poster...nobody likes a hungry Makyo 17:56
gary_poster:-)17:56
MakyoHaha, well, alright :)  Was thinking of second review, but I'll land.17:57
gary_posterMakyo, oh I see.  bac, wanna review Makyo's branch?  it fixes the clean issue you found, and is teeny tiny17:58
bacyes17:58
* bac he said with much self-interest17:58
gary_poster:-)17:58
bacMakyo: it looks fine.  what would you think about adding this to it?  http://paste.ubuntu.com/1439028/18:00
Makyobac, looks fine.18:04
MakyoLand with that?18:04
bacMakyo: if you don't mind.18:04
baci don't know that it will actually fix anything but it is more correct and this part of the makefile is error prone18:05
MakyoYeah18:05
MakyoEt voila.  Will be back after lunch.18:07
=== Makyo is now known as Makyo|out
frankbantime to go, have a nice weekend!18:16
bacgary_poster: you said you launched the charm recently.  did you see it populated with the normal test services from improv?19:53
gary_posterbac, no, that is only if you turn staging on now19:59
gary_posterby default it connects to the real juju19:59
bacah, so it is19:59
baca perfect test, then, for config-changed19:59
gary_poster:-)20:00
gary_posterbac, I found that right now the charm does not correctly set up the config file20:00
bachow so?20:01
gary_posterthat is, config.js says socket_url: 'ws://localhost:8081/ws'20:01
gary_posterwhich doesn't work out so well20:01
gary_posterdid you see that or fix it?  I was about to dig into it for a second, since I had time before next call20:01
baci had not seen it20:01
gary_posterbac, when you go to your default charm deployment, does it connect?20:02
baci only just now got the charm to deploy without error, partly due to fixes i made and maturity of the the gui code20:02
bacno20:02
baci think not20:02
gary_posterok20:02
gary_posterthat's the problem then--or at least your experience does not contradict mine20:02
bachow would you tell20:02
baccharm search works but the default charm list is empty20:02
gary_posterbac, you can tell because the alerts box is orange20:04
gary_posterhttp://ec2-204-236-250-8.compute-1.amazonaws.com/20:04
gary_posterand because the svg panel has not expanded beyond 800x600, but that's a bug20:04
bacyes my alert box is orange but i didn't know why20:05
bacor the significance, i mean20:05
gary_posterrght20:06
gary_posterhm, my diagnosis is wrong20:07
gary_posterhttp://ec2-204-236-250-8.compute-1.amazonaws.com/juju-ui/assets/config.js20:07
gary_posterexcept that the requests are in fact going to localhost...20:08
gary_posteroh I bet config.js is rolled up now maybe20:09
gary_posteryup20:10
gary_posterand I broke it unwittingly by changing config.js into config-prod.js :-/20:15
gary_posterbenji I see the regression of the missing thumb-x.png; the fix is in your branch, reinstating what was there before, right?  20:25
gary_posterJust making sure I remember correctly20:25
benjiright20:25
benjiI am very close (I hope) to proposing the branch with the fix in it, or I can give you a diff20:26
gary_postercool thanks. is that gonna be in review today benji?  no, that's what I wanted--didn't want it broken over the weekend because it can be pretty noticeable20:26
gary_posterso, all's good, thank you20:26
benjicool20:26
bacgary_poster: i see build-prod/juju-ui/assets/config.js as http://paste.ubuntu.com/1440053/20:31
bacbut it still is not connecting20:31
gary_posterbac the problem is that the file is being included in the rollup20:31
gary_posterand that is overriding the file we see20:31
gary_posterI have a fix bac20:31
gary_postertrying it out on my instance20:31
gary_posterbac, I have a fix20:36
gary_posteryay >> http://ec2-204-236-250-8.compute-1.amazonaws.com/20:37
bacexcellent20:37
bacgary_poster: great.  you want to share?20:38
gary_postery, one sec20:38
gary_posterbac http://pastebin.ubuntu.com/1440086/ and lp:~gary/juju-gui/fix-deploy .  I think I am going to propose as is: this would be another test of our build process IMO20:40
gary_posterbac, quick review? https://codereview.appspot.com/694805520:42
bacyes, looking20:43
gary_posterthank you20:43
benji___gary_poster: the branch is up for review at https://codereview.appspot.com/6947057/; I am going to take a break for a few minutes.20:46
benji___After I kill "benji"20:46
gary_postercool benji___ .  Growing a tail that long is probably exhausting20:47
gary_poster:-)20:47
=== benji___ is now known as benji
bacgary_poster: who builds config-prod.js and config-debug.js?20:48
gary_posterbac, they are in our source tree20:48
gary_posterso...we do?20:48
baci see the charm writing out build-prod/juju-ui/assets/config.js20:48
gary_posterright20:49
bacso it is copied over at some point?20:49
gary_postersymlinked20:49
benjiI guess my Animagus form is something with a tail.  Probably a cat.20:49
gary_poster:-)20:49
bacgary_poster: they are not symlinked in my ec2 instance20:50
baci don't think i'm handling them properly.  it sounds like if the api port changes i need to not just write out those files but call bin/merge-files too20:51
gary_posterbac 20:51
gary_poster# ls -l build-prod/juju-ui/assets/config.js 20:51
gary_posterlrwxrwxrwx 1 ubuntu ubuntu 64 Dec 14 14:38 build-prod/juju-ui/assets/config.js -> /var/lib/juju/units/juju-gui-0/charm/juju-gui/app/config-prod.js20:51
gary_posterbac, no you do not need to rerun merge-files, as long as you have my patch20:52
bacright, because your patch is excluding them from the min.  gotcha.20:54
gary_posterright20:55
gary_posterbenji, out of curiosity (it looks good to me), is https://codereview.appspot.com/6947057/diff/1/app/views/charm-panel.js?column_width=80 for readability and testablity or just one of those? And...20:55
bacgary_poster: ok, i'm going to merge your branch now20:55
gary_posterbac, with trunk or with your branch?20:55
bacgary_poster: into my branch20:56
gary_posterbac cool20:56
bacdon't want to wait on your review/land20:56
benjigary_poster: that change was so I could remove the test that tested the pixel position of DOM elements (tooltips) and instead test the underlying calculations20:56
gary_posterbenji, I know you are just following a pattern, but why is line 50 a push, rather than part of the list in lines 43-46, of https://codereview.appspot.com/6947057/diff/1/bin/merge-files?column_width=80 ?20:56
* benji looks20:57
gary_poster(and then do you know why line 49 is that way?)20:57
gary_posterbenji, cool20:57
gary_poster(for tooltips)20:57
benjigary_poster: oh, that should be a push, for the same reason templates.js shouldn't be (or rather, needn't be); the function above is collecting dependencies and if app/models/charm.js had any that the other modules did not, they would be missed, so I would think that app/models/charm.js should be moved to the list above (assuming that really works, which I will test now)20:58
gary_posterbenji, oh!20:59
gary_posterbenji, that is an exclude list20:59
benjigary_poster: change "should" to "shouldn't" and "shouldn't" to "should" in the above, but I tthink you get the point20:59
gary_posterand we should add those two files, not exclude them20:59
benjinope, templates.js is included, but it can never have dependencies20:59
gary_posterIOW, it is correct as it is now...oh...confused21:00
benjithere are no exclusions there21:00
gary_posterespecially given that I just touched that list in my branch21:00
* benji waves hand21:00
gary_posterbah :-)21:00
benji:)21:00
gary_posterbenji you confused me enough that you have to come explain it to me in juju-ui now :-P21:00
benjiheh, ok21:00
bacgentlemens, i am EOD and EOW.  i'll be back later to check on things but i'm being summoned for a walk.  have a good weekend.21:08
gary_posterbye bac21:22
gary_posterhave a great weekend21:22
gary_posterMakyo, if you are available for a review, benji could use a second one on https://codereview.appspot.com/6947057/21:23
dguerrigary_poster: it works! :)22:41
gary_posterdguerri, great :-)23:40

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