[00:14] <themonk> marcoceppi: hi
[00:18] <themonk> i have a apache2 mod now i deploy apache2 now how i install my mod in it, do i make a charm for my mod and run this command "juju deploy --to=1 myapache_mod_charm" is this the only way to do this?
[00:31] <marcoceppi> themonk: do you have to compile the mod specially? I think there's a config option for apache mods on the charm
[00:33] <themonk> marcoceppi: this is a custome mod :) and it has a conf and load file for mods-available and i made a binary mod.so from src
[00:33] <marcoceppi> themonk: I'd recommend making your apache_mod_charm a subordinate charm then
[00:33] <marcoceppi> that way you can deploy it without having to use the --to command
[00:36] <themonk> marcoceppi: hmm i was reading subordinate charm doc its not clear to me how i will do it. is there any charm like this. a subordinate charm to apache2 charm
[00:37] <marcoceppi> there's no subordinate charm like yours for the apache2 charm, but there are quite a few subordinate charms
[02:08] <themonk> marcoceppi: hi, i am back. :) can you give me a charm name?
[02:09] <themonk> marcoceppi: i was looking Gunicorn
[02:09] <themonk> marcoceppi: it is a subordinate charm.
[04:38] <themonk> i cant understand add-relation. say juju add-relation apache2 mycharm and juju add-relation mycharm apache2, is there any difference?
[11:10] <zchander> ping frankban
[11:12] <frankban> zchander: morning
[11:18] <zchander> Good morning frankban. I have recreated my MAAS environment this morning, using 13.10
[11:18] <zchander> Going to try that
[11:18] <frankban> zchander: sounds good
[11:19] <zchander> I am at the point to import the PXE files. Will start juju when that's done
[11:20] <zchander> Do you have any recommendations regarding the PXE system? precise, quantal, raring, saucy?
[11:21] <frankban> zchander: I don't know maas enough to give recommendation. the only constraint from the GUI perspective is that the GUI node must be precise
[11:21] <zchander> Ah... Going to use that
[11:31] <zchander> frankban: I am going to test the 'reverse proxy route' using 'subfolders' instead of virtualhosts
[11:31] <frankban> zchander: makes sense
[12:57] <zchander> Yep, got to the point I am going to make the apache2 config for juju-gui
[13:34] <phedny> I'm trying to setup my first juju system with the wordpress+mysql charms example, but it gets stuck in a situation where machines "1" and "2" have instance-id: pending
[13:34] <phedny> I have already disabled ufw
[13:34] <phedny> accorading to mailing list this my be the result of template to be downloaded, but is there a way where the download is active and how far the progress is?
[13:37] <lazyPower> phedny: what version of juju are you running?
[13:37] <lazyPower> phedny: if your instance id's are pending, the hosts are not spinning up. I assume you're using the local provider?
[13:37] <phedny> agent-version: 1.16.6.1
[13:37] <phedny> yes, I'm using the local provider
[13:38] <lazyPower> do you see the machines listed in sudo lxc-ls?
[13:38] <phedny> I only get "mark-local-machine-1"
[13:38] <lazyPower> did you update juju after you bootstrapped your local environment?
[13:39] <phedny> no, I basically followed https://juju.ubuntu.com/docs/config-LXC.html on a clean 12.04 LTS
[13:39] <lazyPower> hmm...
[13:40] <lazyPower> If you've waited a reasonable amount of time (5 minutes should be plenty for getting 2 lxc containers spun up) can you tryd estroyiing the environment and restarting?
[13:40] <phedny> I waited over 30 minutes ;)
[13:40] <lazyPower> yikes
[13:40] <phedny> let me try to destroy and start again
[13:40] <lazyPower> yeah, lxc containers are pretty quick, and getting quicker in one of the revisions coming down the pipeline
[13:41] <lazyPower> phedny: let me know if it continues to hang and give you problems. We'll need to aggregate some facts about the environment.
[13:43] <phedny> okay.. I entered all commands again, in machine-id: pending state, so let's give it some time again
[13:44] <zchander> frankban: When trying the 'non-virtualhost' approach, I get 404 errors. see: http://paste.ubuntu.com/7079340/
[13:45] <zchander> This is my config for now: http://paste.ubuntu.com/7079344/
[13:45] <lazyPower> phedny: can you tail $HOME/.juju/local/logs/machine-0.log and look for errors?
[13:46] <lazyPower> the last time I ran into this, juju was on the same network segment and i had ip address collisions.
[13:49] <phedny> lazyPower: I get only there error messages:
[13:49] <phedny> 2014-03-12 13:42:13 ERROR juju apiclient.go:116 state/api: websocket.Dial wss://localhost:17070/: dial tcp 127.0.0.1:17070: connection refused
[13:49] <phedny> 2014-03-12 13:42:13 ERROR juju runner.go:211 worker: exited "api": websocket.Dial wss://localhost:17070/: dial tcp 127.0.0.1:17070: connection refused
[13:49] <phedny> the remainder are mostly DEBUG level with some json and I saw some PGP blocks
[13:49] <lazyPower> but it bootstrapped and returned without error?
[13:50] <phedny> bootstrap didn't return any errors
[13:50]  * lazyPower if baffled
[13:50] <lazyPower> s/if/is
[13:50] <lazyPower> why would your state server be denying requests if it bootstrapped ok?
[13:51] <phedny> netstat shows me a listening socket on [::]:17070
[14:06] <lazyPower> phedny: i dont have a good resolution for you. My thought is to open a bug against juju-core with your log output.
[14:16] <themonk> for subordinate charm how do i target apache2 only, if i do not want to fork apache2 ?
[14:17] <themonk> my perpous is to install a custome apache module
[14:17] <marcoceppi> themonk: you don't really, you just tell people in the README to only add it to apache2
[14:20] <themonk> marcoceppi: i am depending on juju-info here ryt and every charm implicitly has it, so apache2 and say nginx provides interface http and if i have both of them then my subordinate charm will triger both of them ryt?
[14:21] <marcoceppi> themonk: juju-info is iplicit, yes
[14:21] <marcoceppi> If you wanted to make it ONLY available for apache2 you'd have to add a new interface to the apache2 charm
[14:21] <marcoceppi> but there's nothing wrong with it just being a subordinate
[14:21] <marcoceppi> just prefix the charm name with apache2 so people know it's an apache2 only subordinate
[14:21] <marcoceppi> apache2_mod_yourmod
[14:30] <themonk> marcoceppi: i am just thinking deploy --to <apache2 machine> is much easier :)  an then i can use add-unit to replicate but will it trigger if i do config change in my modcharm?
[14:31] <marcoceppi> themonk: if you add-unit to either your charm or apache neither will scale with each other
[14:32] <marcoceppi> --to is not a very good solution
[14:32] <themonk> marcoceppi: hmm i understand :)
[14:40] <themonk> marcoceppi: i want to show you my metadata
[14:41] <marcoceppi> themonk: oka
[14:45] <themonk> marcoceppi: http://pastebin.com/GnHGT36w
[14:50] <themonk> marcoceppi: is it ok ?
[15:52] <themonk> marcoceppi: hello are you there?
[16:33] <marcoceppi> themonk: the paste link didnt' work
[16:34] <themonk> marcoceppi: it was set for 1h
[16:34] <marcoceppi> themonk: ah, sorry, I was afk for a bit
[16:34] <themonk> marcoceppi: ok doing again
[16:34] <themonk> marcoceppi: no problem :)
[16:36] <themonk> marcoceppi: http://pastebin.com/xQxs0FGP
[16:36] <marcoceppi> themonk: well, that's one way to do it
[16:37] <marcoceppi> but that implies that it'll work on haproxy, varnish, etc
[16:38] <themonk> marcoceppi: yes yes how i fix it
[16:38] <marcoceppi> themonk: just use juju-info
[16:43] <themonk> juju-info:
[16:43] <themonk>      interface: juju-info
[16:43] <themonk>      scope: container
[16:44] <themonk> marcoceppi: you mean remove website: interface : http and use it https://gist.github.com/anonymous/c08c66103454c2bfcacd
[16:44] <marcoceppi> themonk: pretty much, though call the relation something like apache2-mod instead of juju-info. but just use teh juju-info interface
[16:45] <themonk> marcoceppi: hmm ok
[17:30] <jcastro> marcoceppi, did my bundles not get pushed yet?
[17:32] <marcoceppi> jcastro: npt uet
[17:42] <jcastro> marcoceppi, is there a way you could partially pull a PR?
[17:42] <jcastro> like say, the manual provisioning page only and ignore the other parts of my PR?
[17:42] <jcastro> I'd like to get the mention of null out of the docs asap
[17:42] <jcastro> or, is there a trick for me to resubmit only X changes?
[17:43] <marcoceppi> jcastro: it depends
[17:43] <marcoceppi> jcastro: were they done in two commits?
[17:43] <jcastro> yes
[17:44] <marcoceppi> jcastro: then yes
[17:44] <marcoceppi> jcastro: I'll cherry pick your commit after lunch
[17:45] <jcastro> oh man, awesome
[17:46] <jcastro> jut got a mail from a guy using Juju to deploy a wordpress blog, he's migrating from this: http://lquest.org/
[17:46] <marcoceppi> jcastro: sweet, let him know he can ping me with any questions
[17:47] <jcastro> seems like he's deploying to LXC, but wants to access the blog from the outside
[17:48] <jcastro> http://askubuntu.com/a/282415
[17:48] <jcastro> is this still our best bet?
[17:49] <marcoceppi> jcastro: you def need to set up a bridge
[17:50] <marcoceppi> but the dhcp settings will change depending on provider
[17:54] <jcastro> yeah I recommended manual provider instead
[17:54] <jcastro> before realizing it still has the null junk in it
[18:09] <marcoceppi> jcastro: https://github.com/juju/docs/pull/30
[18:10] <marcoceppi> jcastro: I also created a video of how I cherry picked the commit, it's uploading to youtube atm
[18:12] <jcastro> brilliant
[18:13] <jcastro> oh I see, you resubmitted it.
[18:13] <marcoceppi> there's no sound, and it's actually pretty low qual
[18:13] <jcastro> I suppose it's bad form to approve your PR of my PR?
[18:13] <marcoceppi> jcastro: yeah, it still needs to be approved, I just split it out
[18:14] <marcoceppi> jcastro: I mean, it lgtm, but get like lazyPower or someone to ack it
[18:14] <marcoceppi> jcastro: https://www.youtube.com/watch?v=1VWsmr_HdFU
[18:15] <jcastro> I think by low sound you mean no sound
[18:15] <jcastro> heh
[18:15] <marcoceppi> I should probably make a better video
[18:15] <marcoceppi> where I narrate it
[18:16] <lazyPower> jcastro: approved
[18:17] <jcastro> since I have your attention(s)
[18:17] <jcastro> https://code.launchpad.net/~charmers/juju-core/github-docs
[18:18] <jcastro> is the place where you can click the button to import the github branch into launchpad
[18:18] <jcastro> you'll want to hit the button in cases where you want the latest changes from GH to run with the next docs regen cron job
[18:18] <marcoceppi> jcastro: cool, also, since this was a cherry pick, if you look at your other PR, the one that had null provider and quickstart, you'll see it only shows the quickstart stuff now
[18:19] <jcastro> nifty
[18:20] <lazyPower> does the button only show up when theres open differences in the branches? I see no such button.
[18:20] <lazyPower> oh i'm not logged in, hang on
[18:20] <jcastro> you'll see it when you're in ~charmers
[18:21] <lazyPower> ah i see it
[18:21] <lazyPower> oh right! i need to craft my letter to petition the group for a charmer tag
[18:21] <lazyPower> so much to do, so little time in the day
[18:28] <bodie_> how does Juju deal with outages?
[18:33] <marcoceppi> bodie_: depends on the kind of outage
[18:34] <bodie_> maybe I'm misunderstanding it a bit as a state map where it's more a system for choreographing a service network and then deploying it
[18:34] <bodie_> so I guess my real question is whether juju is more about a state service which knows the state of its nodes, vs. more oriented to choreography or planning
[18:35] <bodie_> provider-level outage, in other words
[18:35] <bodie_> let's say a node where 3 of our services reside goes dark
[18:37] <marcoceppi> sure, each agents ping the bootstrap node as a healt check
[18:37] <marcoceppi> so juju knows when agents go missin
[18:37] <marcoceppi> lets say there's a network blip, and your 3 nodes go offline for 10 mins, juju does nothing. It'll queue events and when the agents re-register (and come back online) it'll push the events out again
[18:38] <marcoceppi> bodie_: using the API you can add additional logic to juju, say to replace those nodes, but juju doesn't do anything automatically at the moment
[18:39] <bodie_> I see
[18:39] <jamespage> marcoceppi, expect a ping from mattgriffin re percona-server charms/support in mysql charm
[18:39] <bodie_> but it'll at least realize that something's not normal
[18:39] <jamespage> we just discussed in a session
[18:39] <marcoceppi> jamespage: ack, thanks
[18:39] <marcoceppi> bodie_: right, juju status will reflect an outage in the machine listing and the unit
[18:40] <marcoceppi> saying agent-state: down or missing
[18:40] <bodie_> righto
[18:40] <marcoceppi> so it actively knows about the topology it's deployed and to some extent it's health
[18:40] <bodie_> okay, cool
[18:40] <bodie_> so...  is there someplace I can find the program flow for what happens when a new charm is deployed?
[18:40] <bodie_> I mean, obviously the code
[18:40] <bodie_> but I'm still in overview mode
[18:41] <bodie_> if not, i'll just get to mapping that
[18:41] <marcoceppi> bodie_: the docs and then asking questions. The docs are still pretty fluffy and don't dive too deep at the moment
[18:41] <marcoceppi> there's also a few blog posts floating around
[18:41] <bodie_> (noticed that) lol
[18:41] <bodie_> alright :)
[18:41] <marcoceppi> bodie_: let me find a blog post from gustavo that might help
[18:41] <bodie_> according to nate the server will bring up a replacement unit if it sees an outage?
[18:42] <bodie_> awesome, thanks
[18:42] <marcoceppi> bodie_: http://blog.labix.org/2013/06/25/the-heart-of-juju
[18:42] <marcoceppi> that might have a bit more information than the docs
[18:43] <marcoceppi> bodie_: otherwise, if need more indepth stuff feel free to ping in here
[18:44] <bodie_> :D thanks
[18:45] <bodie_> right now a stranger in a strange land attempting to worm my way into engaging with core code
[19:09] <zchander> lazyPower: Reinstalled my MAAS, using 13.10 for the controller. Went the reverse proxy way without virtual host, but that also won't work. (juju-gui now gives me a weird webpage). The side of the story is, that I can see the requests for juju-gui on de node ;)
[19:12] <lazyPower> ...wat
[19:12] <lazyPower> zchander: what is de node?
[19:13] <zchander> de == the (sorry, was talking to my wife and instantly wrote some Dutch words.... ;) )
[19:13] <lazyPower> oh ok. i was confused about intent
[19:14] <zchander> What I meant: I do see the request coming on the juju-gui node in guiserver.log
[19:34]  * zchander banging head against the wall....
[19:35] <lazyPower> zchander: whats this weird webpage you speak of?
[19:37] <zchander> lazyPower: I'll try to upload it somewhere.... (have to rescue my MAAS interface at the moment, was a bit too fast with apachectl  :(  )
[19:38] <zchander> lazyPower: http://postimg.org/image/axpl2ii2r/
[19:39] <zchander> lazyPower: This is the javascript console: http://postimg.org/image/e4qr3wfe1/
[19:39] <lazyPower> that was my next request :)
[19:40] <zchander> Pfew.... got my MAAS web interface back
[19:40] <lazyPower> ok so its missing the assets - or so it thinks.
[19:41] <marcoceppi> zchander: juju-gui doen't expect to run in a sub-directory
[19:41] <lazyPower> so if you look at your javascript console - its not loading anything as the juju-gui assumes everything is going to be loaded off of a root path of /juju-ui
[19:41] <marcoceppi> so it uses absolute URLs instead of relative
[19:41] <marcoceppi> rick_h_: ^^
[19:42] <marcoceppi> zchander: what I'd recommend doing, is instaed of using sub dirs to route requests in the reverseproxy, use subdomains
[19:42] <rick_h_> lazyPower: marcoceppi yea, don't think things work in non root path atm. It's something we've got to fix coming up
[19:42] <rick_h_> but not a supported way to service atm
[19:42] <marcoceppi> zchander: ie, juju-gui.mass-ctrl-001.nimeto.edu
[19:43] <marcoceppi> rick_h_: ack, thanks for the heads up
[19:43] <marcoceppi> zchander: then have maas-ctrl-001 reverseproxy route based on host name and not directory
[19:43] <marcoceppi> if that's possible
[19:43] <marcoceppi> zchander: it does look like you're close though!
[19:43] <zchander> marcoceppi: I was doing something like that, and using reverse proxy, but that gave me some other issues (with web sockets)
[19:44] <marcoceppi> oh, damn, really?
[19:44] <zchander> it was what I discovered yesterday
[19:44] <marcoceppi> ah, I'm not sure how to get around that
[19:44] <zchander> But I would like to retry (as I now use 13.10 instead of 12.04.4)
[19:44] <marcoceppi> rick_h_: any instructions on how to run juju-gui from behind a proxy?
[19:45]  * lazyPower afks
[19:46] <zchander> marcoceppi: Also using the reverse proxy borked my PXE environment, so when I did restart my node(s) yesterday, they didm;t get back up until this morning as I reverted my config to only a default apache environment on my MAAS
[19:46] <zchander> :D
[19:48] <zchander> Maybe I should install another node/server with two nics, one connected to the 'cluster lan', the other to our schoolnetwork.
[19:48] <zchander> And run the proxy on that node
[23:08] <mmcc> hey folks, I have a quick question - where should I file a bug against the juju.ubuntu.com website? It's just a simple broken link...
[23:10] <sarnold> mmcc: I believe this is the spot: https://bugs.launchpad.net/juju-website/
[23:11] <mmcc> sarnold: great, thanks! I was looking for it among the projects here https://launchpad.net/juju-project - no dice :)
[23:17] <perrito666> hey, I think I have a bug, although it might be a feature:
[23:17] <perrito666> I am using juju 1.16.3-saucy-amd64
[23:18] <perrito666> and I created a charm which uses pgsql relation
[23:19] <perrito666> when the hook for the relation change is triggered, it is triggered twice, once of these times relation-get returns no information on the bash script of the hook
[23:19] <perrito666> but, if hooked with debug-hooks to the event, in both oportunities relation-get works correctly
[23:20] <jose> marcoceppi: ping, you'll be running that charm school at uds tomorrow?
[23:20] <jose> jcastro: ^ ?
[23:36] <marcoceppi> jose: I'll be there, but jcastro is probably your POC
[23:36] <marcoceppi> perrito666: that's not a bug
[23:37] <jose> I wanted to see if it could be ran at ubuntuonair, since we have part of the story of the charm schools, to get it completed
[23:37] <marcoceppi> jose: i dont see why not
[23:37] <marcoceppi> perrito666: all hooks need to be idempotent
[23:38] <marcoceppi> mmcc: which link is broken?
[23:38] <perrito666> marcoceppi: I know, what I think is a "bug" is that the env in debug-hooks is different from the one the hook is run
[23:38] <marcoceppi> perrito666: in what way?
[23:39] <mmcc> marcoceppi: it's the "Overview" link in the footer, I filed this bug: https://bugs.launchpad.net/juju-website/+bug/1291674
[23:39] <_mup_> Bug #1291674: broken "Overview" link in footer of https://juju.ubuntu.com/resources/ <Juju Website:New> <https://launchpad.net/bugs/1291674>
[23:39] <marcoceppi> mmcc: ah! thanks for filing that, I'll make sure it gets updated
[23:39] <perrito666> marcoceppi: this is my hook (for context) https://github.com/perrito666/mezzanine_charm/blob/master/precise/mezzanine/hooks/pgsql-relation-changed
[23:39] <mmcc> marcoceppi: sure, glad it got to the right person :)
[23:39] <perrito666> marcoceppi: now, this is run twice in all my tests
[23:40] <perrito666> marcoceppi: one of those, the first, relation-get returns empty values
[23:40] <perrito666> but
[23:40] <perrito666> if I hook to said event, I can not get said behavior
[23:40] <marcoceppi> perrito666: you're just running in to a race condition
[23:40] <perrito666> relation-get returns results always
[23:40] <perrito666> marcoceppi: that was my tought
[23:41] <perrito666> marcoceppi: I tried a sleep of up to 5 mins to discard that
[23:41] <perrito666> (in the hook)
[23:41] <marcoceppi> perrito666: it's still not a bug, it's just that when the first run of relation-changed on mezzanine happens, pgsql hasn't sent it's data yet, so the first relation-changed (which juju guarentess will fire at least once in a relation) goes off
[23:41] <marcoceppi> perrito666: but data available to the hook doesn't change while the hook is running
[23:42] <perrito666> marcoceppi: I see :) thank you for your help
[23:42] <marcoceppi> perrito666: put the sleep in your relation-joined
[23:42] <marcoceppi> say, just 45 seconds
[23:42] <marcoceppi> by then psql should be ready, and you should see the first run of relation-changed get fresh data
[23:42] <perrito666> marcoceppi: Ill do, just for educational purposes, the charm actually works, I was just curious of this behavior
[23:43] <marcoceppi> perrito666: right, I understand the curiosity, so to guarentee that multiple calls to relation-get work, when the hook is executed it freezes what's available in the relation data wire
[23:43] <marcoceppi> that way relation-get is consistent for the time of that hook, if relation data changes while the hook is running juju just queues another relation-changed hook fire in the event queue
[23:44] <perrito666> marcoceppi: makes a lot of sense, thank you again for taking the time to explain :)
[23:44] <marcoceppi> perrito666: no problem! it occurs to me this would be great to put in the docs
[23:44] <marcoceppi> any other questions while I'm still around?
[23:44] <perrito666> marcoceppi: nope, that is it, thanks again
[23:44] <marcoceppi> perrito666: np!