#juju 2012-03-01 <marcoceppi> heh, so I did a stupid thing. I bootstrapped on EC2 and deployed a crap load of charms to test something. Then I left the office and went home: ERROR Invalid SSH key <marcoceppi> Can I destroy from EC2 without Juju getting sad faced <_mup_> juju/hook-alias-expansion-redux r468 committed by heatherjohnson@example.com <_mup_> scheduler stop values are ignored if the scheduler is running <jamespage> morning all <jcastro> anyone have the spec for the automagic dependency check handy? <jcastro> lp:~hazmat/juju/auto-magic-dependency-spec seems like it's the canonical location <hazmat> jcastro, that's not quite the same thing.. <jcastro> ah ok <hazmat> jcastro, i mean well.. it depends on what you mean ;-) <jcastro> do we have a spec for juju recommending dependencies on a charm? <jcastro> I know we've talked about it and the answer was "some day", just wondering if we had gotten beyond that <hazmat> jcastro, if you mean deploy dependencies automatically.. that's what its doing.. but that isn't practical it turns out <jcastro> hazmat: oh, ok, I am trying to answer this guy's question: <jcastro> http://askubuntu.com/questions/109042/how-would-one-know-a-charms-dependencies <jcastro> and my answer so far is "yeah we don't do that yet." but I wanted to link him to something. <jcastro> or in this case, I guess explain why we don't want that anymore? <hazmat> jcastro, so knowledge is easy to satisfy.. i'd like put the charmrunner plans onto the charm browser, so its more clear <jcastro> ok so the tldr; is "it'll be in the charm browser?" <hazmat> jcastro, but in terms of deploying it into an environment.. say you want to deploy mediawiki into an environment, and you have 3 mysql services already there.. which one do you use to satisify the dep, or do you deploy a new one. <jcastro> ah, right * hazmat needs some coffee <jcastro> indeed, caffeine time <jcastro> ok I left the guy an answer, any one feel free to submit an edit to clarify or correct. <hazmat> jcastro, re the charm browser currently, you can got to any charm page (probably via search) on a given charm page, you can click an interface and it takes to you a page that shows who provides and requires a it <jcastro> yeah but we can improve that a bit <hazmat> also the search works directly from the chrome/chromium's url bar if you tab on the site name .. which is magically awesome ;-) <jcastro> like, mediawiki says it requires memcache, but it doesn't really <jcastro> the real issue I think here is that we don't have READMEs for the basic older charms <jcastro> that would make all of this go away <hazmat> true, mediawiki doesn't any of those as optional <hazmat> https://bazaar.launchpad.net/~charmers/charms/oneiric/mediawiki/trunk/view/head:/metadata.yaml <hazmat> but that's partly because the default is optional anyways at this point.. <jcastro> hmm, maybe we should highlight the Configs and Interfaces more in the web UI than the hooks <jcastro> if I'm consuming a charm do I care about the hooks? <jcastro> I would think I'd care about the config options I can set and if I need something else <jcastro> anyway, for now I think just asking people to go back and README their charms is a good 90% fix <jcastro> and we're heavily recommending it on the new charms <jcastro> still, the guy asked a good question <hazmat> jcastro, docs need some love ;-) <jcastro> I know <_mup_> Bug #944038 was filed: Inform users they have an environment.yaml with the same control bucket value <juju:New> < https://launchpad.net/bugs/944038 > <SpamapS> hazmat: :( <SpamapS> hazmat: you're suggesting dropping my favorite part of Jim's spec <SpamapS> hazmat: juju do is not an anti-use case. I've been asking for it for a *long* time. <SpamapS> hazmat: and it has always been suggested that these commands would be usable by cron jobs, ssh, etc. <hazmat> SpamapS, cron jobs can execute hooks directly and use the cli api.. but the very notion of juju do is pretty crackful imo <hazmat> SpamapS, post the team meeting currently ongoing i was hoping to do a g+ with jimbaker if your up for it <SpamapS> hazmat: cron jobs would have to set the socket path.. and other weird stuff. wrapping that is nice. <SpamapS> hazmat: hrm.. I'm interested but I'm under the gun for a few other things.. so I'll pass for now. <hazmat> SpamapS, fair enough <hazmat> SpamapS, socket path has a default known address, it doesn't need to be set <hazmat> SpamapS, the problem is the other side isn't really listening outside of a hook execution atm <SpamapS> hazmat: I think you misunderstood the desire to have juju do. <SpamapS> hazmat: From what I see, its so you can make it easy to interact with juju outside hooks. <SpamapS> but I digress <SpamapS> I think its two different things <SpamapS> and should be discussed as such <hazmat> SpamapS, it is two different things, using the hook cli api outside of hooks is the one we need to support <hazmat> having juju client support for executing arbitrary hooks.. is not <SpamapS> its not so much the client on your remove machine though.. <SpamapS> right? <SpamapS> Its just so that while you're ssh'd into the machine, you can use relation-get or call a hook <SpamapS> anyway, I don't want juju do to delay the introduction of all the other goodness <hazmat> SpamapS, 'juju' is the client.. regardless of where it is.. <SpamapS> because the other stuff.. being able to relation-list one relation from another.. is *critical* <hazmat> SpamapS, agreed the entire hook cli api offered by hooks should be executable easily outside of hooks <hazmat> SpamapS, what's a use case for executing a hook directly? <SpamapS> hazmat: re-asserting configuration <SpamapS> hazmat: admin logs in, screws everything up debugging.. wants to leave it back in the state the charm asserts <hazmat> SpamapS, the problem is not every hook is idempotent.. calling something like -depart could mess things up more <SpamapS> hazmat: I don't have a use case for departed <hazmat> SpamapS, if we enable the capability.. we enable it for everyone.. a user can just execute config-changed directly at that point <SpamapS> *that* would be fantastic <hazmat> jimbaker, SpamapS g+ invites out <jimbaker> ok <jcastro> m_3: Hey, how's the node charm these days? <jcastro> https://github.com/thedjpetersen/subway#readme <jcastro> saw this on HN and I wanted to chase them down, it looks cute <SpamapS> jcastro: that does look cool <jcastro> especially since it uses node and mongo <jcastro> that's 2 other charms it can interact with <jcastro> SpamapS: you have any idea how complete the node charm is? <SpamapS> jcastro: Its a framework, like django and rails.. needs subordinates to be really amazing. <jcastro> ah dude I get it <jcastro> i'd need 3 instances for IRC <jcastro> bootstrap, subway, and mongo right? <SpamapS> jcastro: yes and no <SpamapS> jcastro: Since this is almost certainly a "low scale" app, you can just have it install mongo locally. <SpamapS> jcastro: I was doing the same thing w/ mediagoblin before they decided to rip out mongodb ;) <jcastro> ah <jcastro> ok I'm going to go just join their channel <jcastro> they seem pretty cool <SpamapS> jcastro: when are we going to start working on project fido again? Next week? <jcastro> yeah <jcastro> we totally forgot to plan for Strata running into this week <adam_g> hmm is there some hard limit on the # of settings that may be passed via relation-set in a single hook? <adam_g> cant seem to get anymore than 7 of 10 to the other side <SpamapS> adam_g: shouldn't be <SpamapS> adam_g: are the values large? <SpamapS> adam_g: zk does have a 1MB limit on any single node, and I believe relation-set sticks all of them in a single node. <SpamapS> But I'd think you would have something much more horrible if you hit that. <SpamapS> dunno if it truncates or errors <adam_g> SpamapS: actually, nevermind. verifiedby flooding the relation with a thousand settings before i realized i fat fingered something in the charm :{ <SpamapS> adam_g: lol * SpamapS sends adam_g's fingers to The Biggest Loser to get yelled at <adam_g> fat finger summer camp <m_3> jcastro: the node charm is actually in good shape <jcastro> good to hear <m_3> it's rpetty much ready for review... had to revamp it a couple of weeks ago for the mongodb talk <jcastro> SpamapS: pastebin/lodgeit charm is ready for round #2 of review. Fight! <flaviamissi> Hey! Is there a way to execute a command in an unit with `juju ssh`? I've tried the ssh's approach of passing the command in the end, but juju doens't interprets it the way I expected.. <robbiew> SpamapS: m_3: -> http://ubuntuone.com/3fNyLF45rp016mWud0KMBc <robbiew> juju-jitsu!! * robbiew returns to work now <SpamapS> robbiew: nice, is that hong kong phooey?! <robbiew> yup <m_3> robbiew: awesome! <m_3> I'm sitting in a talk entitled "Data Jujitsu" * m_3 harumph! <_mup_> Bug #855989 was filed: Document usage with orchestra <juju:Confirmed> < https://launchpad.net/bugs/855989 > #juju 2012-03-02 <hazmat> flaviamissi, that should work in the ppa <hazmat> jimbaker, ^ executing commands after juju ssh works? <jimbaker> hazmat, it should <jimbaker> there's specific testing for it, and i understand it's been used by people like m_3 <jimbaker> (not to mention myself) <_mup_> juju/refactor-machine-agent r457 committed by heatherjohnson@example.com <_mup_> Merged trunk <_mup_> juju/refactor-machine-agent r458 committed by heatherjohnson@example.com <_mup_> Addressed review points <_mup_> juju/robust-test-removed-service-unit r458 committed by heatherjohnson@example.com <_mup_> Merged upstream and resolved conflict <_mup_> juju/refactor-machine-agent r459 committed by heatherjohnson@example.com <_mup_> One last rename <_mup_> juju/robust-test-removed-service-unit r459 committed by heatherjohnson@example.com <_mup_> Merged upstream <_mup_> Bug #873907 was filed: Security group on EC2 does not open proper port <juju:Confirmed> < https://launchpad.net/bugs/873907 > <flaviamissi> jimbaker: I saw the test in juju's code <flaviamissi> jimbaker: also put a pdb to check what's going on, the extra params never gets to the open_ssh function, the error is raised before it <jml> hi <jml> ISTR there's a guide somewhere for setting up a machine to do charm development locally using lxc. <jml> I've had a shallow poke around the juju.u.c site and couldn't find it <jml> I'll just plod away on the charm school page and see where that gets me <marcoceppi> jml you can check out this page: https://juju.ubuntu.com/CharmSchool <marcoceppi> Nevermind, you already have that URL <jml> marcoceppi: :) <jml> marcoceppi: thanks for the confirmation though <jml> what does data-dir get used for? <jml> specifically, why is it in /tmp? <marcoceppi> jml: data-dir is just the directory for the zookeeper state and various log files <marcoceppi> It's only used on local environments <jml> marcoceppi: so the chroots don't live there? <marcoceppi> To my knowledge, no <marcoceppi> jml: http://readthedocs.org/docs/juju-docs/en/latest/provider-configuration-local.html <jml> marcoceppi: when I run 'juju bootstrap' I am told "SSH authorized/public key not found." <marcoceppi> You need to make sure you have both a private key and a public key in ~/.ssh/ folder <jml> marcoceppi: Hmm. I bet I need to make sure they are called either id_dsa(.pub) or id_rsa(.pub) <marcoceppi> Yeah, it uses your id_(r|d)sa(.pub) file <jml> marcoceppi: cool. some quick symlinking addressed that. <jml> I'm now getting "error: internal error Network is already in use by interface virbr0" errors. I wonder if that's because I didn't log out & log in again <marcoceppi> jml: That's exactly why :) <jml> marcoceppi: I'd like to know the underlying reasons for that. <marcoceppi> jml: I'm not 100% sure since I've never used the LXC containers, but I believe it's because of how the libvirt sets up the network interface and the permission associated with that, logging in and out or restarting is essentially the same thing as running newgrp libvirt for your user <jml> hmm. <marcoceppi> I've always just known: Installed libvirt for the first time? Restart for success <jml> marcoceppi: interesting. I wonder how that works, since I can't actually see any configuration anywhere that would put my user into the libvirtd group <jml> I'm mildly reluctant to restart because I'm in the middle of doing other things :) <marcoceppi> Yeah, I detest restarting as well. You could just try `newgrp libvirtd` <jml> marcoceppi: yeah, but my user isn't added to that group yet. Am I supposed to explicitly do that? The docs don't say to do so. <marcoceppi> jml: You shouldn't have to do it <marcoceppi> let me dig up the doc I read that on <jml> marcoceppi: thanks. I really appreciate your help. <marcoceppi> jml: It's on the same page as the data-dir stuff: https://juju.ubuntu.com/docs/provider-configuration-local.html <jml> marcoceppi: yeah, but I'm pretty sure that only works if something has done 'adduser jml libvirtd' first. <jml> marcoceppi: and afaict, that has not been done <jml> which makes me _want_ to restart, just to see if something magically does that :) <marcoceppi> Installing libvirt should have done that, at least on my machine I'm in the libvirtd group :) <jml> marcoceppi: well, this is a pretty darn fresh precise install, so I'm thinking that maybe there's a packaging or documentation bug here. <jml> anyway, I'll re-log now and see what happens. <jml> that's a reboot later and still no libvirtd membership <jml> but 'adduser jml libvirtd; newgrp libvirtd; juju bootstrap' succeeds <marcoceppi> jml: I'm not sure if that's a bug in libvirt on Precise or not. I don't typically use local containers. But if juju bootstraps successfully than \o/ <jml> hmm. also 'bootstrap' doesn't do anywhere near as much downloading as the documentation suggests <jml> marcoceppi: well, yeah, getting further makes me happy. If my experience makes it smoother for others, that would make me happier still. <marcoceppi> jml: it should take about 10 seconds to bootstrap on local <marcoceppi> does juju status show you a machine running? <jml> "To speed up the process, you will want to juju bootstrap before the meeting where you have a decent internet connection, which will take a while because it must debootstrap the operating system." <jml> yep <marcoceppi> that sounds outdated, I know bootstrapping to EC2 can take sometime because of startup lag on Amazon <james_w> jml, are you in the office today? <jml> "The bootstrap command will prompt for sudo access as the machine agent needs to run as root in order to create containers on the local machine." â I also didn't get prompted <jml> james_w: no, heatherjohnson@example.com. <marcoceppi> jml: that's odd, I do get prompted <jimbaker> flaviamissi, i assume you have tried quoting the command? also it would be helpful to have the actual juju ssh you are trying to make <jml> so I've deployed a few charms (wordpress, mysql, oops-tools) <jml> and have got 'juju status |grep public-address' on a watch <jml> but so far no public addresses, and no evidence that it's doing anything <jelmer> hi jml <jelmer> jml: what is the status of the machines? <jml> oh no, apt-cacher-ng is active, so I guess it's downloading stuff in some background process somewhere <jml> jelmer: 'pending' <jml> yay, it works! <jml> "Local provider environments do not survive reboots of the host at this time, the environment will need to be destroyed and recreated after a reboot." â does this mean I'll have to bootstrap again after rebooting? <james_w> jml, yeah, assuming that is still current <jml> james_w: ta <jml> I'm guessing that the packages downloaded by apt-cacher-ng are all still present though <james_w> should be <james_w> unless they are stored in data-dir <SpamapS> they're in apt-cacher-ng's normal location <SpamapS> /var/cache I think <SpamapS> jml: perhaps you didn't get sudo prompted because you had recently done some kind of sudo action? <jml> SpamapS: entirely possible. I don't recall that I did, but memory is a slippery thing. <jml> oh wait <jml> duh <jml> sudo adduser jml libvirtd <jml> that'll be the reason. <hazmat> jml, reboot should work now (w/ juju ppa).. data-dir needs to be in a non temp location <jml> hazmat: thanks. <jml> http://code.mumak.net/2012/03/local-juju.html fwiw. <SpamapS> hazmat: how does reboot work with local provider? <SpamapS> hazmat: is it putting upstart jobs on my box? <hazmat> SpamapS, yes <SpamapS> hazmat: COOL <SpamapS> hazmat: does it also make the containers autostart now? <SpamapS> I know I could read it <SpamapS> but I'm gearing up for fix it friday <SpamapS> no time to hunt down answers. :) <jamespage> jcastro, m_3: hbase and refactored hadoop charms ready for review! <jamespage> I'll blog something next week about using them... <jcastro> jamespage: nice! <jcastro> hey ping me before you do it <jcastro> I'd like to have it just natively on cloud.ubuntu.com <m_3> jamespage: whoohoo! <jamespage> jcastro: not sure what that means but I'll draft it up somewhere first <jamespage> jcastro, m_3: I've spent quite a bit of time on the README's so hopefully that should help alot.... <jcastro> jamespage: hey so duplicate content on the web = bad, so I was thinking of just having you write it right on cloud.u.c instead of on your personal blog <jcastro> make it a bit more Pro looking <jamespage> jcastro, sure <jamespage> jcastro: you mean javacruft.wordpress.com is not pro looking? :-) <jcastro> I appreciate the work on the READMEs <jcastro> those will be very useful <jcastro> jamespage: I am trying not to say "your blog makes it look like you are a walking java developer stereotype." <jamespage> lol <jamespage> jcastro, no problemo <SpamapS> wow.. tons of deep, well thought out email threads today. I may never get to my part in fix-it friday <negronjl> m_3, SpamapS: https://bugs.launchpad.net/charms/+bug/944989 <_mup_> Bug #944989: charm needed: distcc <Juju Charms Collection:Fix Committed by negronjl> < https://launchpad.net/bugs/944989 > <jcastro> SpamapS: nathan's 2 charms are ready for round 2 <SpamapS> jcastro: Its fix it friday not review it friday! ;) (ok ok, I'll take a look once I get < 138 unread emails ;) <m_3> negronjl: cool... I'll hit the review queue first thing next week <negronjl> m_3: cool <m_3> SpamapS: you can leave stuff for me for next week if you want <m_3> negronjl: in your neck of the woods atm actually! <SpamapS> m_3: well I already did the 1st round on those two, so I will finish/promulgate them. :) <negronjl> m_3: really ? where ? <m_3> Santa Clara at strata <negronjl> m_3: ahh ... I'm about 4 hours south today .... lol ... I guess I'm just avoiding you :P <m_3> ha! <SpamapS> m_3: I hate that conference center. Its so close to Great America.. I can never stop thinking about how great it would be to just have a conference talk where you say "Screw it guys, no talk, we're riding the big dipper *NOW*" <m_3> yeah, you can see it from the hotel room * m_3 haven't been on roller coaster in years! <negronjl> m_3, SpamapS: I think the park is closed this time of year <m_3> yeah, didn't pay attention to see if it was running or not <SpamapS> negronjl: that sux <m_3> grrrr... really need to be able to open-port manually without having to reconfigure or upgrade <SpamapS> all the more reason to rent it out and go on the dipper though <SpamapS> m_3: why did your port change? <m_3> SpamapS: ha! yes... it would be legendary <negronjl> SpamapS: Yup. that makes it worst ... you get to see all of the fun you _could_ be having if the park were open ... :/ <negronjl> UDS At Great America :D <m_3> jenkins on 8080 want to go to 80 and remove the proxy b/c I'm cheap <SpamapS> m_3: oh, you *can* actually call open-port w/o a context, IIRC <SpamapS> m_3: You just have to set the socket path <m_3> it wouldn't take it <m_3> oh, <SpamapS> bummer <flaviamissi> jimbaker: yes, I've quoted the command, I am trying to execute the following command: $ juju ssh django/0 ls <jimbaker> flaviamissi, i would expect that to work <flaviamissi> jimbaker: and it outptus juju --help screen, with "juju: error: unrecognized arguments: ls" at the end <flaviamissi> yeah, me too <jimbaker> flaviamissi, does it work with ls * ? <flaviamissi> nope, it executes the ls command in my machine <jimbaker> flaviamissi, hmmm <flaviamissi> jimbaker: look at the error output: juju: error: unrecognized arguments: ls charms _charms data_dir env <SpamapS> flaviamissi: actually it evaluated the * on your machine <SpamapS> flaviamissi: what version of juju? <jimbaker> SpamapS, right, you do need to protect from sh <jimbaker> by quoting it * SpamapS REALLY thinks its time for juju to have a --version <flaviamissi> jimbaker: from dpkg -l: 0.5+bzr398-0ubuntu1 <SpamapS> flaviamissi: AHA! <flaviamissi> SpamapS: ? <SpamapS> flaviamissi: arguments to ssh were added as a feature after 11.10 released <SpamapS> flaviamissi: I'd suggest using juju from the PPA <jimbaker> all makes sense now <flaviamissi> SpamapS: aaaaaahm <SpamapS> flaviamissi: sudo add-apt-repository ppa:juju/pkgs && sudo apt-get update && sudo apt-get install juju <flaviamissi> yeah, shit <flaviamissi> sorry for that <flaviamissi> rs <SpamapS> its ok <SpamapS> we should have shipped a man page <flaviamissi> and I would love to have a --version <flaviamissi> :B <SpamapS> though --help most likely does not show args to ssh ;) <jimbaker> SpamapS, correct, it does not in the old version of juju ssh --help <flaviamissi> yeah, it doens't <flaviamissi> I had to read the souce <SpamapS> usage: juju ssh [-h] [-e ENV] unit_or_machine [command] <SpamapS> in current juju, it shows [command] <SpamapS> should really be [command [args...]] <flaviamissi> just for the record, I installed from the ppa and it worked <flaviamissi> thank you, guys :D <SpamapS> flaviamissi: woot <SpamapS> flaviamissi: note that your environment is going to continue deploying the old juju because of the way juju works. * SpamapS is reminded he is supposed to send an email to the list about this <flaviamissi> hmmm <flaviamissi> SpamapS: I should re-bootstrap it, then, right? <flaviamissi> be right back <SpamapS> flaviamissi: thats probably the best option yes <jono> jcastro, meet alienth <jcastro> hi alienth! <alienth> jcastro: hola :) <jcastro> hey so, jono says you'd dig to learn some juju <jcastro> I can give you a rundown on how everything works <alienth> yeah! <jcastro> heh ok, so I guess I'll start with something familiar. <jcastro> https://github.com/reddit/reddit/wiki/Install-guide <jcastro> let's pretend I want my own reddit and I want to deploy this. <jcastro> the tldr is juju takes all these steps here, and lets you script them (in whatever language you want). <alienth> gotcha <jcastro> so that when I want to deploy on EC2, bare metal, or OpenStack it's deployed the same <jcastro> so ... <alienth> here is the existing script we point folks to: https://gist.github.com/922144 <jcastro> I'm going to pseudo command this page you have here. <alienth> but, it installs everything on one machine (not ideal) <jcastro> oh perfect dude <jcastro> this is basically that script 2.0 <jcastro> except we collect them all together and make it so people can build <jcastro> so we'd do like this: <jcastro> juju bootstrap <jcastro> juju deploy reddit (this basically is the same as your script) <jcastro> juju deploy postgres <jcastro> juju deploy memcached <jcastro> then we do: <jcastro> juju add-relation reddit postgres <jcastro> this fires off hooks, which are basically the db commands on your install page <jcastro> juju add-relation reddit memached <jcastro> hooks to whatever you need memcached and reddit to do fire off <alienth> would the add-relation bit be where the reddit ini file is configured with the proper PG server? <jcastro> the deploys fire off instances <jcastro> yeah <alienth> kk <jcastro> the add-relation hooks are basically "I am memcached, when I talk to postgres I need to do foo, bar, and baz." <jcastro> and then the hooks are done <jcastro> you do: juju expost reddit <jcastro> juju expose reddit I mean <jcastro> which opens the port, then you just go to the IP. <SpamapS> alienth: relations are 2-way configuration channels between the individual units of a service. <jcastro> I missed rabbit and cassandra <jcastro> but, we have charms for those two <SpamapS> wow, we have all those already :) <alienth> awesome :) <alienth> out of curiosity, where does juju install reddit from? i don't think it is in the ubuntu ppa yet. <alienth> cassandra <alienth> err <alienth> we actually package it ourself on our ppa <jcastro> yeah so basically, TL;DR; you could adapt your install script to basically be the install hook <SpamapS> alienth: "wherever you want it to" :) <jcastro> alienth: that would fire off a "charmed" version of your install script <alienth> gotcha <jcastro> which is basically your install script + some meta data <SpamapS> alienth: we have charms installing from git, ppa's, the distro, and even embedding tarballs inside the charm <jcastro> alienth: ok so now here's the cool part. <jcastro> once you've defined how the reddit charm talks to all the other charms via hooks <jcastro> you can scale out <jcastro> so "I need more cassandra" becomes "juju add-unit cassandra" fires off another instance <jcastro> and it already knows what it needs to do <alienth> so, does juju have a central store that knows what servers are where? <jcastro> right so when you start juju <jcastro> the "juju bootstrap" fires off a node with zookeeper <alienth> awesome, we actually already use zookeeper <jcastro> and each subsequent launched instance talks to it. <jcastro> right so here's what we can deploy today: http://charms.kapilt.com/charms <jcastro> and there's about 50 more branches of people hacking on stuff that isn't really in there yet. <jcastro> so when someone writes a charm, we put it in this charm store <jcastro> and then basically anybody can deploy anything in the store in a similar manner <jcastro> here's an inprogress hbase one as an example: http://charms.kapilt.com/~james-page/precise/hbase <jcastro> jamespage: hey, the cassandra charm needs a README. :) <jcastro> alienth: the "hooks" here for cassandra give you an idea on what the charm does: http://charms.kapilt.com/charms/oneiric/cassandra <alienth> so, right now, we use haproxy for loadbalancing. If we were to define a relation between the reddit app and haproxy, would we just tell juju to fire off that relation, and then it would modify haproxy to include the new servers once they are built? <alienth> also, are there any tests that juju can perform before bringing something in to the infra? <jcastro> so you would do "juju add-relation reddit haproxy" <SpamapS> alienth: the haproxy charm is pretty simple, and probably needs work, but in its most basic form yes thats how it works. <SpamapS> alienth: for tests we are just now defining "charm tests" to make sure the charm works as you intend it to. In the past we've also had "tester" charms that would relate to the actual service as deployed and verify it, so you could do that, and once that relation passes, then relate it to the real one. Thats a cool idea actually. <alienth> interesting <alienth> yeah, we have to test that a new app server acutlaly serves the app before we can roll it into haproxy <SpamapS> alienth: Probably the simplest way to do that would be to have the website relation joined hook kick off tests before it sends its port/hostname to haproxy. <jcastro> that is an interesting idea I've never even thought of <SpamapS> alienth: another way to do it is to have each app server as its own "service" in juju, and relate it first to the tester, and then to haproxy after those tests pass <SpamapS> jcastro: gets problematic because of ordering though. :-/ <jamespage> jcastro, on my list to refresh <jamespage> needs upgrading to 1.x series as well <SpamapS> once relations can affect other relations, this becomes a breeze. For now, the 2nd method would be better. <SpamapS> alienth: how "encapsulated" do your tests need to be? Like, is an app server allowed to verify itself, or is the test done remotely? <alienth> test probably should be remote <alienth> we test remote manually, at this time <alienth> to verify the new app server will actually load reddit <SpamapS> alienth: so another option is to have your check_url return a negative result until tests have passed. <alienth> gotcha <SpamapS> alienth: yeah so you could just test a new "unit" manually and when it looks good, flip the switch on it to let haproxy know its ready to go <SpamapS> alienth: I'd think that would be a huge PITA though <SpamapS> alienth: automation FTW ? <alienth> hehe <SpamapS> alienth: anyway.. it seems like we've accidentally implemented your whole stack, to some degree, in charms already. Perhaps you should challenge one of your interested users to enter our charm writing contest? <SpamapS> alienth: or even, you could enter it. :) <alienth> perhaps! i think most of our opensource folks use ubuntu <jcastro> yeah so the cool bit is the charm store comes with ubuntu <jcastro> so anybody can just deploy a reddit if they want to <hazmat> jml, thanks for the blog post <SpamapS> alienth: we won't hold it against anybody who normally uses fedora.. ;) <jcastro> hey so we also happen to be running a contest right now for cool charms: http://cloud.ubuntu.com/2012/02/juju-charm-contest-help-bring-free-software-into-the-cloud/ <jcastro> yeah so I think what makes reddit so cool is how much other stuff it can consume <jcastro> it'd be a wicked demo <jcastro> alienth: hey so, a ton to consume all at once, but that's basically it. <alienth> awesome <alienth> thx for the info <alienth> jcastro: so, we use puppet pretty heavily right now. Do you guys see juju existing alongside puppet? <alienth> jcastro: for example, when we kick a server, a puppet recipe does most things at this time <SpamapS> alienth: we've experimented with embedding puppet in charms. <SpamapS> alienth: and I think there's a use case for having juju be a source of config data and/or classification for puppet <SpamapS> alienth: in fact there may be a good argument to use your puppet recipes as the basis for your charms. <SpamapS> alienth: I see the relationship of puppet <-> juju as the same as autoconf <-> dpkg ... <SpamapS> alienth: so in theory, juju + tools should be able to just take a set of puppet recipes, and turn that into a charm that is then able to relate to other charms maybe written in chef, or shell. <benji> hi guys, I just got this error when doing a deploy-service: <benji> DNS lookup failed: address 'store.juju.ubuntu.com' not found: [Errno -5] No address associated with hostname. <SpamapS> benji: you need to use 'juju deploy --repository path/to/charms local:charmname' <SpamapS> benji: your directory where your charms are also needs to have a sub-dir corresponding with the release of ubuntu you want to deploy, such as 'oneiric' <benji> yep, I forgot the "local:" <gary_poster> +1 on a more direct error message in the future :-) <gary_poster> well, more...friendly? <SpamapS> I think at this point, the message will be "DEPLOYING x from store.juju.ubuntu.com" .. as in, that service is almost ready <benji> I suggest: "Oh no! DNS lookup failed, man!" <SpamapS> "DNS's not here man" <gary_poster> heh <benji> http://www.youtube.com/watch?v=MZX1Mvk84Y0 <_mup_> juju/hook-alias-expansion-redux r469 committed by heatherjohnson@example.com <_mup_> hooks that die from unhandled signals are considered to have error'd out <_mup_> juju/hook-alias-expansion-redux r470 committed by heatherjohnson@example.com <_mup_> joined event hookalias expansion won't execute a changed if the joined hook fails <Jake> HELP PLEASE <philipballew_> Jake, im not sure what your problem might be, but if you say what it is and wait around, someone might help out. Or at least someone will be able to know if they know what to do. <jcastro> SpamapS: hate to be a bother, but Nathan's been waiting like 2 days for his second round of reviews. <jcastro> I believe I sorted the launchpad status? <SpamapS> jcastro: Its on my short list for today.. had to wrap up some MIR response bug fixes. <jcastro> thanks <jcastro> bummer to miss m_3 and nijaba this week, thanks for the extra effort <SpamapS> jcastro: charmers has 25 members.. <SpamapS> jcastro: I'd like to see more review from !(us) <SpamapS> us being, m_3, nijaba, and me. ;) <jcastro> indeed. <jcastro> ok I'll just send a mail to the list <SpamapS> jcastro: our traffic is low enough, its not red alert or anything.. but people should be checking for new charms occasionally <jcastro> yeah I just want to be more vigilant during the contest <jcastro> oy mira, negronjl is a charmer! <negronjl> jcastro: mira ... que pasa <jcastro> got time to do a charm review for a community contributor? <SpamapS> BONG BONG , "lodgeit" promulgated. <negronjl> jcastro: sure ... got a bug number ? <jcastro> oh sneaky Clint <jcastro> https://bugs.launchpad.net/charms/+bug/940677 <_mup_> Bug #940677: Charm needed: Stack Mobile <new-charm> <Juju Charms Collection:Confirmed for george-edison55> < https://launchpad.net/bugs/940677 > <SpamapS> err <SpamapS> I got that one <jcastro> negronjl: ok never mind I guess. :) <negronjl> jcastro, SpamapS: no worries ... <SpamapS> BONG BONG , "stackmobile" promulgated. <jcastro> SpamapS: you only promulgate on Fridays, have you noticed that? <SpamapS> yes <jcastro> never during the week, when I can write out a nice glorious blog post about how amazing the contribution is <jcastro> always, nearly always right after I EOD. <jcastro> I didn't notice at first <jcastro> touche` sir ... <SpamapS> http://bit.ly/zTp84S <negronjl> SpamapS: Since you appear to be in the "promulgate" mood ... you mind reviewing https://bugs.launchpad.net/charms/+bug/944989 <_mup_> Bug #944989: charm needed: distcc <Juju Charms Collection:Fix Committed by negronjl> < https://launchpad.net/bugs/944989 > <SpamapS> negronjl: OOOO thats a good one! <jcastro> oh man <jcastro> that is <jcastro> negronjl: did you see our discussion with alienth earlier today? <negronjl> jcastro: no .. where ? <jcastro> go back a few hours in the log <negronjl> jcastro: just read it ... <negronjl> jcastro: to which part are you ref. to, puppet or haproxy ? <jcastro> I just think the whole thing is interesting <jcastro> they use a bunch of stuff I hadn't expected, things we already have charms for <jcastro> SpamapS: mail sent to the list, I hope I don't come across as too condascending #juju 2012-03-03 <_mup_> juju/hook-alias-expansion-redux r471 committed by heatherjohnson@example.com <_mup_> report signal that caused hook to terminate <negronjl> jcastro: How do you guys monitor the queue of charms that need to be reviewed ? <negronjl> jcastro: If you add me to whatever notification method is in place, I can be more responsive. Right now, I just look at the Charm needed bugs and go from there but, there is also what almost happened today .. I almost started reviewing a charm that SpamapS was working on ... <negronjl> jcastro: I guess a bit more structure on the process would help ( at least me ) working through this in a more efficient manner without stepping on any "toes" :) <SpamapS> negronjl: I just look at all the bugs tagged 'new-charm' periodically <SpamapS> negronjl: I tend to only really look hard at the New/Confirmed/Triaged ones <SpamapS> tho from time to time I will click through to the Incomplete/In Progress ones and see if somebody forgot to change the status <negronjl> SpamapS: Do you assign the bug to yourself when you are reviewing ? How do I know that you are not already working on it ? Do you comment on the bug ? <SpamapS> negronjl: I don't, I think its fine if 2 people review the same charm. <SpamapS> negronjl: but to that end, its probably a good idea. :) <negronjl> SpamapS: ok .. I think we could either comment on the bug or assign it to ourselves while reviewing ( probably both ) so we know that there may be someone already looking at it and we could ask/coordinate better. <SpamapS> negronjl: thus far I haven't seen much duplication, but yes, that sounds like a good plan <SpamapS> negronjl: ahh, your distcc was "Fix Committed" .. I should add that to the bug statuses that I dig further into <negronjl> SpamapS: What's the norm for when you get a charm done .... I thought fix committed would be appropriate ... <SpamapS> negronjl: I actually think you're right. <SpamapS> negronjl: I just was focusing on Confirmed/Triaged/New <SpamapS> negronjl: distcc reviewed <negronjl> SpamapS: cool .... I can promulgate it then <negronjl> SpamapS: spoke too soon ... I'll read the review and check things out <SpamapS> negronjl: sorry, I had a redbull right before I reviewed it ;) <negronjl> SpamapS: no worries ... I'll work on it <SpamapS> negronjl: like I said, the only thing you actually really need to fix is the hostname -f's <SpamapS> negronjl: the other stuff is just me nit picking you to death <negronjl> SpamapS: nah .. I'll fix it all ... do it right or don't do it ;) <hazmat> m_3, new charm runner uploaded w/ fix for snapshot <basil_kurian_> Hi <basil_kurian_> How can I run the juju hooks within the instances ? <basil_kurian_> root@root-local-drupal6-0:/var/lib/juju/units/drupal6-0/charm/hooks# ./db-relation-changed <basil_kurian_> usage: unit-get [-h] [-o OUTPUT] [-s SOCKET] [--client-id CLIENT_ID] <basil_kurian_> [--format FORMAT] [--log-file FILE] <basil_kurian_> [--log-level CRITICAL|DEBUG|INFO|ERROR|WARNING] <basil_kurian_> setting_name <basil_kurian_> No JUJU_AGENT_SOCKET/-s option found <SpamapS> basil_kurian_: thats under discussion right now actually. :) <SpamapS> basil_kurian_: because of the way hooks work, you need to run them in the context of joining/changing relations right now.. but that will change. <basil_kurian_> Is there any other way by which i can mannually run such scripts to debug it ? <basil_kurian_> How can I get logs of such scripts , when we issue an add-relation command ? <basil_kurian_> SpamapS: Is there way to see logs of such scripts , when we issue an add-relation command ? <SpamapS> basil_kurian_: if you want to just test developing on them, you can use 'debug-hooks' <SpamapS> basil_kurian_: debug-hooks will ssh to the node, and pop up a window in screen whenever a hook is supposed to be executed <SpamapS> basil_kurian_: so you can then run the hook over and over in the right context, and edit it all you want. :) <basil_kurian_> a byobu window , right ? <SpamapS> right <basil_kurian_> how can i run the scripts ? goto that directory and then ./<sript> ?? <SpamapS> I have used it to write an entire charm before.. :) <basil_kurian_> oh <SpamapS> you'll be in the charm root already <basil_kurian_> ./<scriptname> will work ? <SpamapS> you should stay there, some charms expect CWD == $CHARM_DIR <SpamapS> hooks/scriptname <basil_kurian_> oh , let me try <basil_kurian_> It is not working :( <basil_kurian_> please see this http://pastebin.ubuntu.com/866367/ <SpamapS> basil_kurian_: that looks like two separate things <SpamapS> basil_kurian_: when you ran 'debug-hooks', did it start a byobu session? <basil_kurian_> yes , it did <basil_kurian_> see the change in hostname <basil_kurian_> Sorry I got disconnected <SpamapS> basil_kurian_: odd <basil_kurian_> I tried several times ;( <SpamapS> basil_kurian_: I'd expect JUJU_AGENT_SOCKET to be set <SpamapS> basil_kurian_: can you pastebin 'env | grep JUJU' ? <basil_kurian_> on virtual instance , right ? <SpamapS> yes <basil_kurian_> root@root-local-drupal6-0:~# env | grep JUJU <basil_kurian_> root@root-local-drupal6-0:~# <basil_kurian_> no output <SpamapS> basil_kurian_: weird! <basil_kurian_> any file to source ? <SpamapS> basil_kurian_: you're inside the byobu window, and no JUJU_ .. <SpamapS> basil_kurian_: no it should be set <SpamapS> basil_kurian_: what version of juju ? <basil_kurian_> also , pleaseee the putput of pwd <SpamapS> basil_kurian_: dpkg -l juju would show you <basil_kurian_> root@root-local-drupal6-0:~# dpkg -l | grep juju <basil_kurian_> ii juju 0.5+bzr467-1juju2~oneiric1 next generation service orchestration system <basil_kurian_> ran that on virtual instance <SpamapS> basil_kurian_: ok, so this sounds like a bug. I have not tried debug-hooks on the local provider, so its possible its broken somehow. <basil_kurian_> I 'm running it on LXC containers <SpamapS> basil_kurian_: well past my bed time.. so I'll leave you with that. :-/ for a log, btw, you can run 'juju debug-log' to get all the logs except for the 'install' hook. <basil_kurian_> ok <basil_kurian_> bye , thanks for the help <mightbereptar> o/ <mightbereptar> I hope I can learn to create a charm and enter the contest <_mup_> Bug #945505 was filed: Use ipAddress instead of dnsName now that txaws supports it <juju:New> < https://launchpad.net/bugs/945505 > <SpamapS> mightbereptar: WELCOME! <SpamapS> mightbereptar: we hope you can learn as well. :) <hazmat> SpamapS, there's a default tmux session there thats not associated to hooks where basil was <hazmat> the hook sessions pop as a new windows in the session <hazmat> but it sounds like he was in the default window which is not executing a hook <_mup_> Bug #945862 was filed: Support for AWS "spot" instances <juju:New> < https://launchpad.net/bugs/945862 > <koolhead17> jcastro: so 2nd and 3ed winner at charm contest both equally gets 100$ gift voucher? #juju 2012-03-04 <SpamapS> hazmat: yeah that makes sense.. that will teach me to try and support users 3 minutes before sleep. ;) <_mup_> juju/force-upgrade r457 committed by heatherjohnson@example.com <_mup_> merge trunk #juju 2012-03-05 <jcastro> negronjl: mira, the moin charm got some updates a while back but we never finished it off, it looks pretty close if you want to finish off a review <negronjl> jcastro: I'll look into it in a minute....id you happen to have a bug number, that will speed things up <negronjl> SpamapS: I updated distcc ( https://bugs.launchpad.net/charms/+bug/944989 ). When you get a chance, can you review it again ? <_mup_> Bug #944989: charm needed: distcc <Juju Charms Collection:In Progress by negronjl> < https://launchpad.net/bugs/944989 > <SpamapS> negronjl: looking righ tnow <negronjl> SpamapS: thx. <SpamapS> negronjl: *really* nice work <negronjl> SpamapS: thx ... ok to promulgate now ? <SpamapS> negronjl: do you want to promulgate that? (don't forget to make it owned by ~charmers first) <negronjl> SpamapS: Yes and yes ... <SpamapS> I'll +1 in the bug just for doc purposes <negronjl> SpamapS: thx <negronjl> SpamapS: btw ... I thought that promulgate would change the ownership of the branch to ~charmers on it's own ... <SpamapS> negronjl: it doesn't <negronjl> SpamapS: ok .. .I'll do it <SpamapS> negronjl: I believe pushing to lp:charms/foo does .. <negronjl> SpamapS: We'll find out very soon :) <SpamapS> if that doesn't do it, then I've taken to just pushing to lp:~charmers/charms/oneiric/foo/trunk with --rememeber .. then promulgating <negronjl> SpamapS: distcc ... promulgated <negronjl> glusterfs charm .... here I come !!!!!!!! <SpamapS> oooohhhhhh snap <m_3> SpamapS: hey, can you please change ownership of lp:charms/tomcat6 to ~charmers? <negronjl> SpamapS: will do <m_3> negronjl: can you do the same for lp:charms/hadoop-mapreduce? that's still showing as a personal branch <negronjl> SpamapS: lp:charms/tomcat6 shows as yours :P <negronjl> m_3: will do <negronjl> m_3: done <m_3> negronjl: cool thanks! <SpamapS> negronjl: doh <negronjl> m_3: no worries ... <jamespage> m_3: zookeeper charm appears to work OK on oneiric <m_3> jamespage: whoohoo! <jamespage> m_3: should I remove the config options that are specific to precise? <jamespage> its a bit misleading ATM <m_3> jamespage: I think they'll be two separate charms maintained in parallel... any better ideas? <jamespage> m_3: kinda what I mean; I'll update the branch to remove the PPA options for oneiric <jamespage> they can stay for the precise version <m_3> jamespage: right <jamespage> m_3: or I could backport the packages in the PPA to oneiric - that would be easier actually <jamespage> then people can kill themselves with 3.4.3! <m_3> jamespage: easier? really? :) <jamespage> m_3: the packaging is simple so yes <m_3> jamespage: it makes sense to keep separate branches lp:~charmers/charms/oneiric/zookeeper/trunk (lp:charms/zookeeper) and lp:~cha...precise... <jamespage> m_3: yep <m_3> jamespage: it's just a little backwards from the usual "direction" of the branch :) <jamespage> m_3: charm backport - I like it! * m_3 groan <jamespage> m_3: OK if I promulgate that now! <jamespage> ? <m_3> jamespage: just still scared of backports in packages :) <m_3> jamespage: please go ahead and shrink wrap it <jamespage> m_3: https://code.launchpad.net/~charmers/charms/oneiric/zookeeper/trunk <jamespage> deone <jamespage> done even <m_3> jamespage: awesome! <m_3> charms are almost tended... jcastro will even be happy... we're net positive count after the changes :) <jcastro> \o/ <andrewsmedina> What I do when a bootstrap instance state is not-started? <avoine> check the log on the server in /var/log/juju/ <andrewsmedina> avoine: -bash: cd: /var/log/juju: No such file or directory <andrewsmedina> =/ <avoine> if there is none and you are on aws also check /var/log/cloudinit/ <SpamapS> andrewsmedina: what provider are you using ? <andrewsmedina> SpamapS: ec2 (openstack) <andrewsmedina> using default juju version works fine, but with the last ppa version, bootstrap returns "not-started" status <SpamapS> bootstrap usually doesn't return anything.. can you explain? <andrewsmedina> SpamapS: after bootstrap, when I execute juju status, returns the bootstrap instance status <avoine> andrewsmedina: check in /var/log/cloudinit/ if something have failed there <SpamapS> andrewsmedina: right, ok. So you need to use the EC2 API tools to figure out why the instance hasn't started yet. <SpamapS> andrewsmedina: euca-get-console-output on the instance ID should help <hazmat> its probably the same problem of the metadata server not being configured to return values for 1.0 api version <hazmat> its a configuration (.ini) fix for nova <hazmat> ie. bug 942868 <_mup_> Bug #942868: metadata service reports to support 1.0 but serves incorrect data <canonistack> <juju:Confirmed> <OpenStack Compute (nova):New> < https://launchpad.net/bugs/942868 > <SpamapS> Right! <hazmat> it feels like a packaging bug, we could update juju to just use latest or another common version that's enabled by default <SpamapS> major DOH there ;) <hazmat> ie. work around it <andrewsmedina> SpamapS: is everything ok in the instance * SpamapS is getting giddy.. in 2 hours his upstream will go from 1Mbit to 5Mbit .. woot. <SpamapS> hazmat: I think we should update juju to use the *latest* common version that we know we can support. <hazmat> SpamapS, technically the metadata we're after is common to all of the extant versions <andrewsmedina> SpamapS: but I think that juju does not found zookeeper agent in this instance <SpamapS> hazmat: isn't there a "best effort" url? <hazmat> it looks like 2009-04-04 is the latest version available <andrewsmedina> SpamapS: cloud-init boot finished at Mon, 05 Mar 2012 18:53:55 +0000. Up 300.53 seconds <hazmat> SpamapS, 'latest' is latest, but some risk of deviation.. <hazmat> pretty minor though <hazmat> internally these all dispatch to the same implementation for ostack <SpamapS> andrewsmedina: right, so from there, you need to look at the juju agent logs,which will be in /var/log/juju .. or perhaps if they had catastrophic errors, in /var/log/upstart <hazmat> the error should be in the console output <SpamapS> hazmat: try:;latest;except:;try:known_old_version <jcastro> hazmat: ok so now /charms says 60 official <hazmat> jcastro, woot! <hazmat> m_3, nice <jcastro> hazmat: heh ok, so we're sure this is right right? <andrewsmedina> SpamapS: but with an old juju version works fine <jcastro> I still see some are counted twice <hazmat> jcastro, /charms is cross series, add a series to it if you want a particular series <hazmat> jcastro, ala http://charms.kapilt.com/charms/oneiric <jcastro> oh cool! <jcastro> got it! <jcastro> ok, so 54! <SpamapS> hazmat: with the agents being started in upstart jobs.. are you sure the error would be in the console? <hazmat> SpamapS, yes, the metadata server error happens pre-agent during juju-admin initialize <hazmat> which is just a cli command for cloud-init <hazmat> andrewsmedina, can you pastebin the console output? <SpamapS> hazmat: well at least we have a fail early then. ;) <andrewsmedina> SpamapS: http://dpaste.org/u7oDI/ <SpamapS> hazmat: ^^ <hazmat> andrewsmedina, that's status output.. i meant the equivalent of ec2-console-output.. or the cloud init log <hazmat> but that's the output i would expect for this bug from status <andrewsmedina> hazmat: http://dpaste.org/1qhg4/ <hazmat> huh.. <andrewsmedina> everything seems ok <hazmat> andrewsmedina, if your logged on the machine.. what's the output of.. curl http://(502)257-5948/1.0/meta-data/instance-id <andrewsmedina> hazmat: humm <andrewsmedina> hazmat: http://dpaste.org/oRDnk/ <andrewsmedina> hazmat: juju-sample groups isn't created <andrewsmedina> hazmat: im wrong <andrewsmedina> juju-sample groups is here <andrewsmedina> hazmat: the problem is my http_proxy =/ <SpamapS> Ugh always the proxy <hazmat> errand time, bbiab <andrewsmedina> I removed the proxy but nothing has changed =/ <jcastro> negronjl: nice work on the review! <jcastro> so we can promulgate that badboy? <negronjl> jcastro: sure <negronjl> jcastro: checking to see if he has access to do it. If he doesn't, I'll merge it. <jcastro> I don't think he does <jcastro> he looks like a new contributor <jcastro> time for a tshirt and a mug! <negronjl> jcastro: python-moinmoin merged and pushed and promulgated * jcastro rings the bell <negronjl> clear <jcastro> third one in 2 days fellas! <negronjl> jcastro: do we need to upgrade this guy ? <jcastro> what do you mean? <negronjl> jcastro: how many charms does patrick have ? <jcastro> this is his first <negronjl> jcastro: nm then ... ignore me <jcastro> your mixing him up with Nathan I think <jcastro> which has like 4 or 5 now or something <jcastro> but only interested in writing, not reviewing <jcastro> SpamapS: got time for a quick G+? <jcastro> I need like 45 seconds for you to explain something to me <jcastro> m_3: https://launchpad.net/~chris-lea/+archive/node.js <jcastro> FYI I didn't know there was a node PPA <_mup_> Bug #947483 was filed: Support for container relations <juju:New> < https://launchpad.net/bugs/947483 > <hazmat> bcsaller, lbox needs the bug flag to show up in the kanban <bcsaller> hazmat: and I think rerunning it isn't adding the bug for me now, but I think it used to <hazmat> bcsaller, i just did it by hand.. <_mup_> juju/force-upgrade r458 committed by heatherjohnson@example.com <_mup_> some environment destruction tests where missing inlinecallbacks decorator <hazmat> niemeyer, the charm test spec looks like it could use another review.. https://codereview.appspot.com/5624044/ <hazmat> m_3, what's the url for your charm testing jenkins instance? * hazmat keeps forgetting <SpamapS> jcastro: back from lunch, we can G+ any time. <m_3> hazmat: it's moving ec2 accts atm... gimme a few <jimbaker> hazmat, can you respond to julian edwards and gavin panella re the maas provider branch? * SpamapS still wishes providers had been made fully pluggable so they would be useful without being fully integrated into juju.environment.config :-P <hazmat> jimbaker, sure <jimbaker> hazmat, thanks! <andrewsmedina> hazmat: my problem is that juju version in bootstrap in different from my machine <andrewsmedina> hazmat: in my machine I use ppa version <hazmat> andrewsmedina, juju should detect that and use the ppa version when bootstrapping, unless a
{'channel': 'juju', 'month': 3}