[00:14] senior7515: juju works against a local lxc provider for development [00:17] ohhh awesome… sooo how does it work when you say -n 3 [00:17] for example [00:17] ? [00:17] virtual instances over some virtual engine or ? [00:17] disregards ? [00:17] or ? [00:18] a newbie's question, and I appreciate if anyone give me a quick answer: can I say Juju does exactly what Chef wants to achieve? Or can someone give me an intro to Juju and Chef's different goal? [00:20] senior7515: well, it depends on your local resources... perhaps I'd try it with a small stack of services first (it creates lxc VMs on a single box) [00:20] senior7515: if you have a large machine available... or pay for a large instance in ec2, then you can run a larger set of service in your local lxc cloud [00:22] chefnewbie: chef's a great tool... it's for configuration mgmt. Where chef is lacking atm is in "coordination" or what we're calling "service orchestration". That's what juju's solving.. it's an eventing/coordination layer. You could coordinate services using juju where each machine was configured with chef or puppet [00:23] chefnewbie: the way that would work would be to have juju charms that call puppet manifests or chef cookbooks... a charm is just a set of hook scripts that get called by juju at the right time. [00:24] SpamapS: ping , wanna prom this ? https://github.com/websitedevops/charms-newrelic-php [00:25] so Chef cookbook is responsible for individual machine configuration (i.e., "setup a machine as MySQL server"); where juju is responsible for a group of machine collaborating with each others ("Apache Server A talks to App Server B, B talks to MySQL server C" [00:25] is this a correct 101 understanding? [00:26] chefnewbie: it _could_ work that way, but it really depends on the service [00:26] <_mup_> juju/unit-rel-lifecycle-start-invoker r533 committed by jim.baker@canonical.com [00:26] <_mup_> Ensure that invoker.start is called to get relation hook caching for lifecycles [00:26] chefnewbie: a lot of services are pretty simple installations and don't need manifests or cookbooks to configure them [00:27] m_3: thanks… testing this mongodb-hadoop api is becoming a pain.. meh.. still wishing I had a devops guy hehe [00:27] chefnewbie: browse through the "install" hooks on a couple of charms in jujucharms.com and you'll see some simple examples [00:27] Thanks, m_3. I am thinking of this long-term goal in my company.... [00:28] chefnewbie: more complex things like rails apps or django apps might warrant using other tools for the configuration of each charm [00:28] chefnewbie: sure... happy to discuss. [00:29] senior7515: cool [00:29] * m_3 gotta run to dinner... catch y'all later [00:29] We are a small Python shop, right now we are planning to use OpenStack / Swift as our backend -- so, this is pretty much a python shop from infrastructure layer to application layer [00:30] if we introduce Chef, we are introducing Ruby prettey much as I understand. [00:30] We want to avoid such scenario as much as possible. [00:30] any suggestion? [00:30] chefnewbie: after you've looked at a couple of charms like wordpress or node.js, take a peek at mysql (the hooks there are done in python) [00:30] chefnewbie: juju hooks can be written in any language (with an ubuntu runtime) [00:31] * imbrandon even does some in php [00:31] is it customary for a person to take a charm, modify the confi of the charm and then deploy or the other way around. Say you need other services etc. [00:32] we are trying to avoid Ruby as much as possbile, that's what I am trying to say :-), and that's why I am asking if Juju can serve as a complete Cloud Management stack [00:32] chefnewbie: certainly [00:33] its able to use pupet or others if you wish but certainly dont need them [00:33] I know people saying Juju can work with Chef, but my motivation is to have python programmers take care of the Management Stack as well (i.e., the Devops job) [00:33] chefnewbie: many hooks are in python in juju [00:34] infact i'd say about 50% its by far the most comon choice [00:34] and those that arent are simple bash scripts [00:34] thanks, I think I roughly got what I wanted from this chat :-) [00:34] and the supportive chat room just gave me another reason to explore Juju... [00:34] :) [00:36] another question: how would other OS vendors treat Juju? --I know Ubuntu will support this effort as long term commitment, but how about centos? [00:37] hrm one of the juju core dev probably would be better to awsner that but IMHO its a blessing it dont, gives you a excuse to kill that abomina^W centoos with fire [00:38] really with services orchstration tho service should not matter, e.g thats one rewason to use a something like this is you care about the app, not the reast of below the app [00:40] the os and software running the app then becomes a commodity , not a asset, and can be started/stoped/moved thrown out etc at will [00:40] and the app is fine [00:41] e.g. stuff like i dont care how many mysql cluster heads or if its just one, i care that my app has a db to connect to [00:41] let juju care if there are 3 heas or 3 and making them work [00:42] once your to that point the os is really just a name on paper [00:42] 3 heads* or 30* [00:43] well, this goal is what Chef claim to serves (i.e a layer to hide the specific OS systems), here I'd like to see how well juju has done this job. [00:43] For example, Ubuntu's /etc/networking/... controls network stuff, but that may be different in Redhad (or other vendors) [00:44] chefnewbie: not sure exactly what your meaning , but real example with omgubuntu.co.uk , when it was release day a few days ago, we had it running on 1 webhead and 1 db, needed mroe capacity so i said "juju add-unit omgubutu-wp -n4" [00:44] and i then had 5 webheads and plenty of room for traffic [00:45] i juju took care of spinning up 4 more nodes, installing nginx, configing it [00:45] making it talk to the db [00:45] imbrandon: here is my question.... [00:45] rsyncing the current wp relase adn code [00:45] etc [00:45] chefnewbie: Charms are written currently with Ubuntu in mind since Juju is such a recent release, as the Juju core is Python it should be relatively easy to port Juju to most any other Linux based system. The charms are less portable, so you'd have to tailor each charm to its intended platform [00:46] While this might change in the future the primary goal is to build the charms in the Ubuntu ecosystem then I'd imagine branch out. Unless someone wanted to work on an RPM port of the project, etc [00:46] marcoceppi: charm is the hook (i.e., the one defining the inidvidual node's configuration)? [00:47] charms define the service to be deployed [00:47] chefnewbie: these are all charms; http://jujucharms.com/charms [00:47] rather, these are all services that have been charmed [00:47] chefnewbie: think of a hook as a init.d script, they are juju scripts that fire at the right times [00:48] on the node [00:49] so like when juju adds more of the "webserver" service , the units all fire "config-changed" hook so that they can add ip's and whatever else they may need to their own configs etc [00:49] whatever is in the config-changed hook, a bash or python or whatever script , is what gets done [00:50] imbrandon: your comparison of "think of a hook as a init.d script" made understand hook crystal-clear (for now for this 101 discussion, at least), can you further talk about charm? -- can you give a metaphor for that? [00:50] charms are just a collection of hooks [00:50] that comprise to build a service [00:50] hrm heh , well it would just bee the system that kicks those off [00:51] yea [00:51] chefnewbie: you can browse what hooks make a charm at any of the charms here: http://jujucharms.com/charms [00:51] and keeps info about all the nodes [00:52] so charm basically is a collection of "Cookbooks", but it does a little more ---it defines how each cooked machine should talk to each other? [00:52] chefnewbie: yea marcoceppi said it perfect "charms are all the hooks it takes to build , configure, and maintain a server, wrapped into one place a.k.a a charm" [00:53] and keeps track of weach service and its state [00:53] thanks, I think I should be looking at Juju doc more. [00:54] You guys are really supportive, many thanks [00:54] what is the juju's license term? [00:54] yea thats one good thin, even as quick as juju is moveing the docs stay pretty upto date [00:54] they are great about that [00:54] AGPL 3.0? what does that mean? [00:54] gpl 3 iirc, for the program its self, chamrs are lic on their own [00:54] charms* [00:55] afro gpl v3 [00:55] yep, it is agpl v3. [00:56] but yea charms are lic individually they arent derivitive works [00:56] of juju at leaste [00:56] All official charms in the charm store must be at least GPLv3 license to be included, though you can license your charms to whatever you'd like, if you want it in the store it needs to follow that and a few other criteria [00:57] marcoceppi: really ? shit mine is gpl v2 and that means drupal will never be in the cs [00:57] s/must be at least GPLv3/must be under a free license: http:\/\/www.opensource.org\/licenses\// [00:57] ahhh ok [00:57] good god [00:57] :) [00:58] Yes, I escape my chat regex lines. [00:58] ahahah [00:58] GPLv3 is just recommended [00:58] yea i about craped my pants there, i really dislike v3 and use v2 mostly or a simplified BSD but drupal is v3 incompatable too [00:59] AGPL v3 is stricter than GPL v3? [00:59] chefnewbie: it covers webservice stuff [00:59] iirc [01:00] imbrandon: what does this mean ("covers webservice stuff")? [01:00] if someone use juju to provide a service like RightScale, it needs to pay license fee? [01:00] chefnewbie: think of it like this ... gpl , website dont have to give out src, its not distrubuted, website in agpl , website must also give out src due to lic provisions specificly for that [01:01] chefnewbie: and no [01:01] chefnewbie: only the src to juju, unless your modify juju to actually provide the web ui [01:01] if its a tools calleed on the backend [01:01] then no [01:02] you can write a webui and be 100% closed and still "call out" to juju [01:02] as a back end program as you would with say ummm ssh or somehting [01:03] hmm, then please give me a scenario that I need to give out src, please. [01:03] chefnewbie: think about it this way makes it easy, about you said the word "use" , any case where that is true then no src is needed, when you say "modify juju to do ....blah" [01:04] thanks, this is simple and easy to understand (for now, for my 101 understanding) [01:04] then src and webservice would be needed to be handed out IF JUJU IS PART OF THE ACTUAL WEBSERVICE CODE , not just another tool of many it may use under da hooh [01:05] basicly if you dont madify juju your golden [01:05] and charms dont cound as part of juju [01:05] count* [01:05] okies, dinner time [01:05] afk a bit fellas [01:06] many thanks, imbrandon [01:06] np [01:06] <_mup_> Bug #992329 was filed: Ensure Invoker.start is called from UnitRelationLifecycle usage. < https://launchpad.net/bugs/992329 > [01:06] thanks to marcoceppi, too. [01:08] btw , the internet meme applies IANAL :) [01:08] adam_g, lp:~jimbaker/juju/unit-rel-lifecycle-start-invoker now contains the fix (this also adds unit testing of the fix vs the debug version i pointed to you earlier, otherwise should be about identical) [01:08] ( i am not a lawyer ) [01:08] chefnewbie: ^^ [01:09] (the only other change was to make it slightly more verbose on logging the caching of the relation hook contexts) [01:09] yeah, layers make big bucks for good reason :-) [01:09] yup yup , just wanted to make sure, when it comes down to it , get real advice, but thats the general gist of it [01:10] yeah, just get a ballpark of what I should pay attention to when thinking of choosing a technology for our small shop... [01:11] yup, you should be perfectly fine imho [01:11] will ask 201 questions once I get another depth of understanding... [01:11] :) [01:11] after that, layers get consulting checks :-) [01:12] heh [01:12] thanks again, you have a good dinner time... [01:12] most of the time you can get clarification on the fsf site as they have spelled out 99% of common cases as lawyers [01:12] but if not you know :) [01:37] <_mup_> juju/unit-rel-lifecycle-start-invoker r534 committed by jim.baker@canonical.com [01:37] <_mup_> Fixed tests that saw augmented log changes [04:39] imbrandon: git is great, but the charm store lives in launchpad. can you push to a launchpad branch please? [05:32] SpamapS: sure but jcastro told me to force yall yo learn the other workflow since its documented that github is a valid src too [05:32] but yea in the intrest of time right now i will :) [06:03] who? [06:03] who decided that? [06:03] imbrandon: I'm supportive of those who would shun git [06:03] but we have a distribution built on bzr [06:03] err [06:03] I'm supportive of those who would *use* git [06:04] Until Launchpad supports git, or the charm store supports pulling from github, new charms for the official charm store need to be on launchpad [06:04] imbrandon: where is it documented btw? [06:06] imbrandon: also btw, the AGPL's only difference from GPL is that *if* the service has a method for downloading the source over any network ports it opens, you cannot disable it. [06:06] juju has no such method [06:06] so it is effectively GPLv3 [06:07] SpamapS: https://juju.ubuntu.com/Charms [06:07] in answer to your github question [06:09] yeah, thats confusing [06:09] since we've never discussed that as a group [06:09] nor have I ever looked at the github pull requests to see if there are new charms there [06:10] :) [06:10] nathwill: thanks tho [06:10] fer sure. [06:11] SpamapS: iirc m_3 is writing some glue so LP wont need to support git [06:11] for the cs [06:11] using bzr-git-ng [06:11] least thats how jcastro splained it to me [06:11] anyhow i pushed the latests newrelic-php to LP and fixed up the bug [06:12] its ready for your worst [06:12] i got some more commits for drupal before i'm happy but working on them now [06:12] just had to stop for a omg hiccup [06:12] awesome [06:12] but back at it , i am [06:13] It would be really awesome if somebody would actually tell *me* that so I don't feel like an idiot telling you something else. ;) [06:13] hahah np [06:13] i totaly understand [06:13] i think thats one reason he was like, yea do it that way, so we're forced to learn the workflow [06:13] like almost exact words :) [06:14] man [06:14] I hate that idea [06:14] lets have one workflow [06:14] choices lead to mistakes [06:14] heh [06:14] we're talking ppl that should be devs [06:14] its already new and crazy and weird enough to be writing charms.. to have 2 workflows to choose from and maintain and monitor... ugh [06:15] dont cut the wheels off, it should be embraced or your gonna see alot more of like what i put in the comments [06:15] Its an efficiency blunder [06:15] Debian has that ethos [06:15] nah [06:15] "choice is the almighty" [06:15] just make the tools work [06:15] like the glue to import from github :) [06:15] And while I'm proud to wear my new Debian Developer badge (granted this weekend) I hate that part about Debian. Just pick one way and get stuff done. [06:15] see i like the midground [06:15] not too man but dont cut my fingers off [06:16] many* [06:16] If its as superior as people seem to think.. [06:16] then it will win out with users anyway [06:16] it has [06:16] thst the problem :) [06:16] But it *has* to be on launchpad. [06:16] oh snap [06:16] *has to be* [06:17] your statements just contradictoed [06:17] themselfs [06:17] SpamapS, doesn't launchpad already have mechanisms for registering upstreams and importing from various VCS systems? [06:17] automagically? [06:17] Unless you know of another system which groups many branches by series and allows bug tracking across those branches (i.e., packages in distro, and charms in our case) [06:17] nathwill: yea for projects nothing else [06:17] hrm [06:17] bet that functionality could be leveraged pretty easily [06:17] nathwill: yes, launchpad can import from github [06:17] we can do that [06:18] But we lose linked branches [06:18] and linked merge proposals [06:18] SpamapS: the way your doing it in LP , github, the unicorn you describe no where without hacks like NEEDING /precise in my url or branch names for that matter like /trunk [06:18] :) [06:20] imho its LP thats broke tho not the cs or github, it should be easy to support both [06:20] i see your grip as its not now [06:20] but thats the problem , not that users wanna use something else [06:20] OpenStack has proved that you can successfully have LP for bugs and git for all else. [06:21] ok then let us do it [06:21] But, thats at the project level. We're building a distro with potentially thousands of branches. [06:21] exxactly a LP peroblem [06:21] SpamapS: whats 1k;s of branches got to do with it, branches are cheap [06:21] imbrandon: the management of them, is not. [06:22] SpamapS: ah, i see what you're saying about losing merge proposals/links [06:22] the management of them is automated either way or should be [06:22] no, bugs cannot be automated [06:22] else we'd have entered the singularity and be fighting off skeletal robots [06:22] and also why can i not link a branch to my repo on github, that should be renamed to something else reflicting that it only works with bzr and LP hosted code [06:23] I'm honestly ignorant of any other bug system that allows bug tracking across concerns the way LP does. [06:23] SpamapS: bah, this is better high bandwidth, but i promis you it all comes down to LP "bugs" [06:23] * nathwill nods i think it's a killer feature [06:24] SpamapS: inho that a useability nightmre and should be removed with fire [06:24] were it me, I'd suggest that people just use the git-bzr thing that just pushes into a bzr branch but does git locally. Is that too hard? [06:24] yes [06:25] make 10000000 ppl change or fix the tool ? hrm [06:25] imbrandon: so, just list out the packages that a bug affects in the comments, or have 10 bugs that duplicate the same error and how it affects each package? [06:25] or fix lp to relate to github bugs and branches as well [06:25] or twoway mirror git [06:25] or both [06:26] linking to an external bug tracker is not really what I"m talking about [06:27] it accomplishes the same thing by linking bugs, we handel it all the time in drupal issue tracking, diffrent upstreams, projects, codepbases but some the same [06:27] etc [06:27] I'm saying, when we change charm store policy to not allow anything to have default passwords, we should have *one* bug to track all 20 charms that have violated it across the 2 series we have. [06:27] yea its not the one ring but still works great [06:27] If all the charms are on github, we can just paste links to the fixed branches, thats not even that much of a concern. [06:28] huh ? still a bug in LP if you NEED that function and it only support LP 1 of 2 things are gonna happen, users will NOT use LP to track bugs at all and you fail or whole projects will not use the cs and you fail [06:29] either way as much as we want it to be it CANNOT be absolutely tied to LP or any ONE place [06:29] even github [06:29] so to fix it, we make LP the easiest way, and supopiort the other ways without hacks [06:29] err [06:30] somehow ubuntu succeeds where this will fail? [06:30] ubuntu did only because it already had critical mass [06:30] it took years [06:30] and juju dont have that mass [06:30] I come at it from a different angle [06:31] The tools are of some slight concern [06:31] that maas [06:31] but as long as I know *how* to contribute [06:31] I don't care that its not my favorite method [06:31] If there are 49 islands out there with charms on them [06:31] how do I pick one? [06:31] paradox of choice [06:31] i come at it from sf.net has been THE place for floss since it came out in 96ish, github toppled them in one year, ONE , the best way to fight that is not with force but embrace it and make your shit better [06:32] if they are forced to choose they WILL choose github [06:32] So, VCS is all on LP, or its all somewhere else. [06:32] and make their own [06:32] why [06:32] why not support both [06:32] github is great, but this is still different [06:32] in fact [06:32] vcs is distributed for a rewason [06:32] it shoud not matter where it is [06:33] the fracturing that github encourages which is why its so awesome for rapid dev of new things, is a detriment to the integration that we need w/ charms [06:33] imbrandon, i don't think developers choose to get involved with a project because of the vcs it uses... but because they like the project [06:33] no [06:33] omg no [06:33] nathwill: your right but they choose to contrib to it or not based on that [06:33] and the frequency of their conriubs [06:34] SpamapS: your missing my point entirely tho [06:34] and its hard for me on irc to articulate it [06:35] imbrandon: the strong tie between the charms in each release is there for a reason. Throwing the charms' VCS out to the wolves means having to use some other meta-storage to bind them together to create a cohesive release. [06:35] and now i'm irritated cuz i know via other convos we've had you would agree if i can figure out how to put it [06:35] SpamapS: thats an infrastructure problem for the store, should not be a user issue in any way [06:35] transparent [06:36] well realistically the juju team seems to think thats important too, but I think they're going to run into the wall because VCS matters and they're halfway to a new VCS already [06:38] SpamapS: see t5hough i'm of the firm thinking that "plan and do how it should be, if the tools, and that means ANYTHING from asm code on up to the keys on my remote to the tv dont supoort that, then fix it or change it, no compromise because of tools" [06:39] in this case LP dont support git or remote bug association and a few other key things that wouold make all this moot [06:39] Yeah, and my plan is, have the same VCS for all charms, bind them together in a single place, and track bugs in a single place. [06:39] note, bzr, lp, not mentioned [06:39] SpamapS: hehe [06:39] sure tho [06:39] and i fully suport that [06:39] but then drop down on step [06:40] thats at the store level no one else care [06:40] mmm skeletal robots [06:40] so at the next meta step down in distrib vcs [06:40] they are all over the place [06:40] dvcs is fine [06:40] so make some glue to brong em togtaher and your both happy [06:40] but the *official* charms need a single place to tie them together [06:40] there needs to be *a mainline* [06:40] they are in the storwe with a vcs [06:40] I know, git blasphemy [06:41] no [06:41] no [06:41] absolutely not [06:41] ok [06:41] every app in itunes is in one place [06:41] imbrandon: I don't have to make that glue. LP exists, and does this, now. [06:41] every dev has crap everywhere [06:41] SpamapS: LP is fucking broken if it wont support that then [06:41] and bzr is not limiting in any way other than politics. [06:41] there is no glue [06:42] bullshit [06:42] it fucked up the omg merges 3 or 4 times last month where git worked perfect [06:42] this is editor wars. ;) [06:42] imbrandon: perhaps because it was git users trying to use bzr the wrong way? :) [06:43] ok look, itunes, apps all in one place, all reviews by apple, all done in diffrent palces [06:43] why do i care that apple wants to keep them all in an NFS share on win3.1 [06:43] i dont [06:43] and perhaps that is enough of a reason to step back and say "git users:bzr users seems to be about 1000:1, so perhaps we should use git" [06:43] once they take it to review i dont care at all [06:43] that dont fix tthe probme [06:43] gaqd i hate irc [06:44] imbrandon: app store apps are not integrated with one another [06:44] it lets the issue get away [06:44] they are, in fact, an island unto themselves. [06:44] SpamapS: they certainly are [06:44] no [06:44] in store purchaes , receipts [06:44] all kinda intergrations [06:44] but that dont matter either [06:44] wtf [06:44] ugh [06:45] you totally side steped it [06:45] Its pretty rare, right? [06:45] Like, *every* charm that is worth anything will have multiple integration points/interfaces which need to be tested as working on each target release of Ubuntu. [06:45] it dont matter , why do i as an apple dev care what the hell apple does with my app once its in their store, awnser is i dont , so why should i be forced to care about the charm store ? [06:46] Because you need your charm to work w/ mysql/memcached/etc. [06:46] it can sorrte my stuff in sabdfl's pinto i dont care, but you make me care if i need to load up the pinto [06:46] hplly shit [06:46] SpamapS: [06:46] common man [06:46] i'm not even on that subject [06:46] that has to do with zk and juju when running [06:46] wtf does it have to do with the store [06:46] then the vcs the store uses [06:47] well if that subject is off the table, and we are not going to care about integration, then yes, we can make all the branches live wherever we want and just punt this to a text file that maps charm namespace <-> branch URL [06:47] of course [06:47] there's no trust relationship with those URLs [06:47] umm thats how it shouldbe , maybe a db ya know ,21k centry and all [06:47] ~charmers is a trusted party, like ubuntu-core-dev [06:48] and ? [06:48] so right now we own all the branches and review all changes made to them [06:48] your bikesheding , it dont matter because the cs dont work directly off ~charmers it still needs to be pulled into the store repo [06:48] or at minimum into the charmers repo [06:48] on approval [06:49] cs *does* in fact work directly off ~charmers (well, lp:charms, same diff as its owned by ~charmers) for cs:series/charmname [06:49] that is done by hand as well as trust verify [06:49] ok my point still stands sans the first part [06:49] ( and wow really? ewwww ) [06:50] Ok, so we can make that work w/o LP and bzr too, as we can have automated pulls that we review from all the branch URLs [06:50] or we could fix LPO to do it too [06:50] and everyone benefits [06:50] imbrandon: cs:~user/series/charmname can be any LP user [06:50] SpamapS: i know but that dont mean the cs [06:50] well whatever [06:51] thats just routing like in a django app [06:51] could be anything [06:51] semantics [06:51] so, my point is still that this glue you speak of, that I acknowledge can be used and written, is not written, and does not exist [06:51] brew install jujutools/juju is the same as ~/jujutools/Forumla/juju.rb tooo [06:52] and furthermore, the process, while not super desirable, is single threaded and easy to follow right now [06:52] for that matter, its all routing [06:52] so until the glue exists [06:52] SpamapS: yes but then it needs to be , we shouldent do something the wrong way because of it [06:52] I do not want to pollute the contribution process, as flawed as it may be, with more VCS's [06:52] so until it exists it should be manual [06:54] there is already some work inside juju to hide these details as well [06:54] right [06:54] as it should [06:54] there should be a 'juju publish' command that will push your local charm up to the charmstore w/o you caring about LP [06:54] cool but how would it verify me then [06:54] (but this gets into where now they are playing a weird game w/ VCS because of that revision file..) [06:54] oh wait [06:55] imbrandon: same way LP does, ssh key [06:55] i would have to care and put a ssh key [06:55] :) [06:55] or perhaps OAuth [06:55] imbrandon, you do for github as well... [06:55] nathwill: sure but i care for github [06:55] :) [06:55] i was playing devils advocate as in yes charmers will still need to care and strust lp [06:56] but users wont [06:56] but thats minor [06:56] users are implicitly trusting ~charmers if they deploy charms unqualified w/ username [06:56] jup [06:56] sure [06:56] and ? [06:57] well its really a trust transfer [06:57] since they get juju from Ubuntu or a PPA, they are already trusting those entities [06:57] or brew.. :) [06:57] see the whole thing here is you are working with tools that exist only, instead of how the ideal situation is an going there [06:57] idealism is the quickest path to failurre [06:58] not with release eaarly and often [06:58] "My goal is perfection." ... you have just failed. [06:58] iteration is the quickest path to success [06:58] yeah, we're going to iterrate [06:58] a LOT [06:59] ok so in the meantime that means some things are a bit un fun or suck like manually pulling github , untill its iterated that lp can pull shiut in like it should [06:59] But I'd like to keep that iterration focused on things that clarify the picture for new contributors, not muddy the waters. [06:59] ios my WHOLE point [06:59] SpamapS: all the more reason to leave it that way then as it will work someday [06:59] so basically "please bend over backward for me because I don't have time to write a tool as powerful as LP with my preferred VCS available?" [07:00] and not change it then go back and say oh but now its ok [07:00] I'm down with that. :) [07:00] <-- seriously will bend over backward for anybody who writes a charm [07:00] SpamapS: no [07:00] fuck man [07:00] I'm serious. :) [07:00] i hate that, what does that have to do with it= [07:00] (^) I will look like that [07:00] yea but you just threw awaay when i thought you finaly understood [07:01] well pulling git branches manually is bending over backward [07:01] and I'm willing to do it. [07:01] the bug tracking and awesomness of lp KEEP, force bzr dont [07:01] if it pains you that you cannot pull git into your store [07:01] fix the store [07:01] I'm just not willing to do it forever. [07:02] right but why muddy the waters [07:02] and make a policy change then to stop it [07:02] and then start it or say "but now its ok" [07:02] later ? [07:02] or leave as is, and as you put it take one [07:02] till its fixed [07:03] Adding things slowly, as you understand their impact better, is a good method of iterration. [07:03] it can be [07:04] It will be very hard to convince me that the "how to submit a charm" page should have more than one method. [07:04] I hope when juju grows a 'publish' command, that we can just ditch the BZR instructions entirely [07:05] damnit man, screw all this lets do it over beer as its not gonna change this week , and prom my newrelic [07:05] :) [07:05] We *SHOULD* say "if you want to use git, do x, y, z, to get your git branch in front of us." [07:05] agreed on the publish [07:05] nah [07:06] it should only take a gpg signed tarbal, quit thinking of lone devlopers, on their side 5 ppl might need to sign off on the release before sumitting to the itunes^W store [07:06] Right now that bit is "push your git branch to a bzr branch, then follow all these other steps like bzr users do" [07:07] rember this has all been done before and will all be done again, juju is NOT the first to havetheese problems, amazon, apple, google, and COUNTLESS others [07:07] imbrandon: I have definitely considered the team story a lot. We suggest in the policy that if a team wants to own a branch we're willing to share ownership of it. [07:08] SpamapS: right, imho any form os submition that is not under lock and https key via a single signed archie [07:08] like ohhhh hte deb build servers [07:08] is wrong [07:08] ~charmers is as secure as ubuntu-core-dev in theory. [07:09] thats how you solve the trust issue,i sign the package for relewase with gpg or whatever [07:09] publish on that not if i';its in a certain vcs [07:09] in practice, I have not reviewed the cs: code to see if it actually does https verification [07:09] zomg [07:09] I just now got EC2 doing that [07:09] wtf does that have to do with it [07:09] ~chamers dont let me upload [07:09] yes it does! [07:09] it dont take tarbalss [07:10] it dont take zips [07:10] iot dont verify gpog [07:10] ~charmers takes bzr push which is as good as an upload [07:10] nope [07:10] SSH keys are the exact same crypto as GPG [07:10] only if you use bzr it is [07:10] then again your forcing somehting on the submistions that effect code [07:12] the publish code will just talk to the cs: daemon and verify that you have write access via cryptographic means, then publish whatever you ask it to. This will have to make use of public key crypto in some form, either local client SSL certs, or gpg keys, or SSH keys [07:12] right that verifies ME [07:13] what verifies my code [07:13] I do think we should be signing our commits [07:13] therre ya go [07:13] NOW [07:13] with what bzr ? [07:13] but there's nothing in there to verify those sigs [07:13] fail [07:13] sign a tarbal [07:13] SpamapS: so [07:13] ... so much code you're suggesting we write [07:13] SpamapS: fix it, dont not do it cuz there is nothing to veruify [07:13] make something to verify [07:14] which should we do first? [07:14] SpamapS: sure [07:14] glue for github? [07:14] gpg signing of commits? [07:14] SpamapS: something of this magnatude IS alot of code [07:14] and alot of man hours etc [07:14] you see now why I don't want to f*** with the way LP+BZR are used, even though I know it must change. [07:15] I'm hoping its hidden from users [07:15] Also hoping ZK is hidden from the client [07:15] :) [07:16] imbrandon: you have brought up an important bug in my mind though, and I think we have to get this done sooner rather than later. [07:16] We have to start signing the code commits. [07:16] * imbrandon writes some git hooks to checkin and push bzr on push [07:16] I know you're saying tarballs, but for now, bzr supports this. [07:16] right i get ya [07:16] babysteps [07:16] We have a closed authentication loop.. [07:16] but not a tamper proof repository [07:17] * SpamapS prepares a bug report [07:17] really imho as much as it is diffrent it also is the same as packaging [07:18] e.g all brit or soyuz [07:18] imbrandon: yeah its integration, not development [07:18] etc steps [07:18] not the finished [07:18] product [07:18] i mean the charms [07:18] and how they are p[ublished [07:18] packaging not using a deb [07:19] your right charmer != kde dev, charmer == motu [07:19] security and steps should be similar to be published, anyone can make their own repo, to be in cs its some work] [07:20] imbrandon: yeah. The vision I have for this is that we have a single place for interested parties in a given service can collaborate on the best way to scale it, secure it, etc. etc. [07:21] me too, but just rember there can be lots of middleware [07:21] :) [07:22] imbrandon: so let the forks roll, but I'd prefer that the forks stay close to the cs: charm ... which probably means we need to have cs: charms pull from github or risk having forks go off the reservation. ;) [07:22] bah the place dont matter [07:22] if your tool dont support tracking them [07:23] SpamapS: see thats what i HATE about drupal, frak worring about if the charms go too far from the cs: make and trying to controll everything and pre think of everything [07:23] just make the cs: and the workflow that should be best [07:23] the easiest [07:23] and the most solid [07:24] then screw the rest, let em stray way the hell off [07:24] it will police it self eventually and then it wont happen [07:24] if its true [07:24] then we dont have to "over think shit" [07:24] we make a great store [07:24] and a great juju [07:24] and thats all [07:25] imbrandon: yeah, I don't want to control.. I want to enable actually. [07:25] imbrandon: I just want to maintain influence over the forks if I can. [07:25] right but there is a fine line [07:25] nag [07:25] nah [07:25] thats control , not enablement [07:26] like, if somebody just fundamentally does something that is awesome to some, but anathema to the cs policy.. I'm fine w/ that.. just keep the merges between us flowing. [07:26] imbrandon: influence means you maintain a voice, control means you squelch other voices. [07:26] I'll give up control gladly.. if they go away.. fine, we lose influence too. [07:26] well even thats against some of your coworkers, i was explained that every person should have their own local forks [07:26] thats what was wnanted [07:27] *bwahahahahaha* [07:27] yeah [07:27] Thats going to be *AWESOME* [07:27] right? [07:27] i think so, everyone has their own cookbooks [07:28] *chef* [07:28] so [07:28] why not just use chef? [07:28] its more mature [07:28] zomg [07:28] ok _everytolls_ has their own local configs [07:28] tool* [07:29] irc , missing , point, context sucks, ugh [07:29] I'm hoping we can shake that kind of B.S. out of ops thinking [07:29] no I get what you mean :) [07:29] I was a busy op once upon a time [07:29] and I didn't have time to contribute back either [07:29] no you dont, you want ever site to be configured exactly the same on the internet ? yea THATS gonna work [07:29] I'd just apt-get source.. change something, build it, install it, and forget about it [07:29] no charms will always need local mods [07:30] SpamapS: excactly [07:30] long term, I'd like for juju to give users a single cmdline opportunity to turn that into a merge proposal against the charm you just forked. [07:30] SpamapS: but that is absolutely needed [07:30] juju will FAIL if not [07:30] rember the php talk we had [07:30] yeah I'll enable that [07:30] you NEED to be abloe to do it [07:30] I'll enable forking and forgetting [07:31] I want to also enable forking and feeding back [07:31] fast and not give two craps [07:31] SpamapS: exactly [07:31] but enable dont hunder [07:31] hinder [07:31] because the next time we update the charm w/ awesomeness [07:31] your mixing the two [07:31] and they can't use said awesomeness because they have to merge w/ us [07:31] they will learn [07:31] exactly [07:31] I want it to be obvious how to say "crap, I don't want to maintain my awesomeness anymore" [07:32] thats bullshit [07:32] thats the same kinda of billshit that is "dont hack core" of drupal [07:32] and if that is just 'juju propose-merge cs:~myuser/precise/foo' [07:32] we make software like this to enable ops and dev [07:32] and it just creates a bug, proposes the merge, and moves on with life.. *zang* [07:32] not to make them do it our way [07:32] we win [07:32] bah [07:32] thats ignorant and arrogant [07:33] what would you propose differently? [07:33] we need to make the tools good, so good there is no question about the process, NOT make them do shit the way we think it should be [07:33] at all [07:34] uhm.. ok? [07:34] I just said that?? [07:34] no, you said how it would be ideal now if they was so incliuned [07:34] and not have their own agenda [07:34] not how the best tool would make that not even matter [07:35] Yeah I guess I'm failing to see where we got disconnected. [07:35] yea, i cant get enough speed out of my keyboard to get my full point accross [07:35] I'm saying, they're off in their own world and it gets harder and harder to maintain that long term... we should make it easy for them to get back on the mainline by submitting their stuff for inclusion. [07:35] or even a good chunk of it [07:35] SpamapS: ok stop [07:36] read [07:36] that again [07:36] what you just said [07:36] ok see, thats where [07:36] we fix the problem of it becominng harder and harder, not just make another damn tool that enforces that to be the hardwr way [07:36] go through the scenario, only the way you'd see it working, instead of my arrogance :) [07:37] not all stuff is or will be suitable for includsion [07:37] nor will they goive two damns if it is [07:37] even if its easy [07:37] so we need to make it easy for them to stay inline IF we even want to at all [07:37] without any [07:38] expectations of them [07:38] none [07:38] how? [07:38] that needs to be worked out by us group of smart ppl, isnt that why we're here [07:38] code changes, forks beget merges.. this is a constant that I cannot see being factored out [07:38] or are we just making something else thats already out there with another companies name on it [07:39] the only thing constant in the universe is c [07:39] we can minimize it, sure. we can have more declarative, simple to merge stuff in charms. I've proposed that for charm helpers already. [07:39] 5 years ago we would have got laughed at for a tool like juju as its not needed for those kids playing in the cloud [07:39] shit chnages fast [07:40] then lets work to minimising it, and then again and again, and seriously not worry about the voice [07:40] but if we both change the same bit of a charm, for good reasons.. thats not going to resolve itself. [07:40] it will be there if we do that [07:41] SpamapS: gawd man you get tied up in the technical bits like they cant be changed [07:41] then lets fix ist or find another route etc [07:41] I don't think a realistic goal of juju is "solve the problem of merging forks" [07:42] then it cant enable forking [07:42] you may need some sleep or something. [07:42] mqybe not from day one, maybe not by me and you but it needs to [07:42] no [07:42] We're already aiming at the stars w/ juju. :) [07:43] :)' [07:43] and i just woke up damn you [07:43] lol [07:43] i'm just really set on not letting ppl think that old way [07:43] in anything software eng, not just juju [07:44] its too wrong and 15 years old [07:44] What old way? [07:44] the way i cant get you to seem to even notice i've been talking about a diffrent one for an hour [07:44] heh [07:44] is this "have a trunk" vs "there is no trunk" ? [07:46] lol no, its if you have a blue button in the website and a user cant click his mouse on the button cuz he is color blind , what do you do, fix the button ? i say make it able to preform the command via voice [07:46] ( example is not practical but the idea of night and day ) [07:47] so, we should make juju impervious to color blind users (aka, Solaris admins?) [07:47] i want new software to fix the real problems , not fix the ones they can and try and control the ones they cant [07:47] LOL [07:47] I think I get that [07:48] You do realize that juju is pushing *REALLY* hard to be disruptive, and change the way people think about services/machines/etc., right? Its not like we picked the tiniest problem and went to tackle that first. [07:49] hahah [07:49] right [07:49] another reason i'm so adament about it [07:49] So there's also such a thing as focus [07:49] and why we cant force things, that we need to embracce they way it flows and enable THAT way to be bets [07:49] even if we dont think it is [07:49] we make it the best it could be , and then encpourage others [07:50] not say "no" and encourage other [07:51] SpamapS: sure focus, but we need to also grow fast, imho every canonical employee and then some could be on this and it would not be enough just yet [07:51] like you said to be distruptive takes alot fo work ( to get right ) [07:52] one way to do that is enable EVERYONE even the stuff we dont like [07:52] The nice thing about being disruptive though is that you can bet on others saying your idea is worthless for a while. :) [07:52] once we have critical mass then start making things more ideal [07:52] heh [07:52] imbrandon: shotgun approach is not really my cup of tea. I'd like to win over the influencers first. [07:53] imbrandon: I welcome all with open arms, but I seek out a few key types. [07:53] sure those key types will be quick to bury you too tho [07:53] indeed, I want their raw unadulterated feedback [07:53] look at the mass exodus over the last 2 years at google [07:54] and the rewasons for it [07:54] they are all the same [07:54] yeah, it created a nice sucking void that pulled Canonical people into it. ;) [07:54] google was king [07:54] LOL [07:54] oh now you're going to tell me google is dead [07:54] no not dead [07:54] "was king" [07:54] but that they have left room for compatition [07:55] so has microsoft [07:55] as in the king got marriwd and has tons of inlaws [07:55] so maybe the prince wont be the next king, maybe his new nephew in law will [07:55] :) [07:56] google is too worried about facbook , and forced g+ on employees, a company that used to foster inovation , now forces their innovators into a single stream of g+ or its shit [07:56] thus the innovators left, quickly [07:56] and made it very clear as to why [07:58] http://blogs.msdn.com/b/jw_on_tech/archive/2012/03/13/why-i-left-google.aspx [07:58] not even quote a month ago [07:58] SpamapS: ^^ gogo read that whole post [07:59] meh I've read enough of the same type of arguments [07:59] and I think they're wrong frankly [07:59] no this is from an exac [08:00] being at war means making hard decisions [08:00] and exec and its personal [08:00] Publishers willing to put the Facebook brand before their own. Exhibit A: www.facebook.com/nike, a company with the power and clout of Nike putting their own brand after Facebook’s? No company has ever done that for Google and Google took it personally. [08:00] google was at peace for a long time.. going to war is going to chase off some peace loving folk [08:01] SpamapS: ok sure, i'll buy into that, but their culture was those ppl [08:01] if they leave its not google [08:01] and clinging to that would probably mean death [08:02] nah, its made them a billion dollar company, trying to force somehting will be theior daeth,. they need to embrace the change [08:02] like they would have 10 years ago [08:02] Taking it personally seems a bit silly.. but.. I get it. "Oops, we f'd up and thought nobody would abuse power because we wouldn't abuse our power" [08:02] I think this is just their way of embracing change. [08:02] but I could be very wrong [08:03] I am poorly informed, and DEFINITELY bike shedding now [08:03] pretty sure your wrong on this one [08:03] hehe [08:03] * SpamapS holds up mirror to imbrandon [08:03] heheh [08:03] well he stuff is visable [08:03] see anybody else bike shedding back there? ;) [08:03] like all the programs that got cut [08:03] Suddenly, 20% meant half-assed. Google Labs was shut down. App Engine fees were raised. APIs that had been free for years were deprecated or provided for a fee. As the trappings of entrepreneurship were dismantled, derisive talk of the “old Google” and its feeble attempts at competing with Facebook surfaced to justify a “new Google” that promised “more wood behind fewer arrows.” [08:04] dont tell me they needed the money [08:04] or investors cared, [08:04] :) [08:05] so no google is not dead, far from it, but its about to be a very very diffrent google, and in that respect control is bad [08:05] seems to me its more about positioning than money [08:06] oh and the funny thing [08:06] this "exec" that left here a month ago and wrote this [08:06] he was the exec over the initial dev and launch of G+ [08:07] heh [08:07] G+ is interesting [08:07] I'd *rather* all my friends were on there instead of FB [08:08] but they're not [08:08] and might never be :-P [08:08] heh and if they were all the crap would come too [08:08] so I toil away w/ 4 social networks (twitter, facebook, google, and linkedin) [08:09] seee here is one line that i DONT want to see happen with juju "The days of old Google hiring smart people and empowering them to invent the future was gone. The new Google knew beyond doubt what the future should look like. " [08:09] we need to attract those key ppl like you say, but not think we know how it should look when they are done [08:10] just enable them along the way to de what they want, only the best way [08:10] maybe not our way [08:11] did you promstrangulate me ? [08:11] man i just need to get some good voice software that i could code with [08:11] that would be fantastic [08:12] but whats out there i cant even chat with let alone code with [08:14] mmmm pure java implmentation of php 5.4 [08:14] sexy [08:14] and faster than the official runtime :) [08:15] imbrandon: lol that is almost comedy [08:15] Java whips crappy C code's butt. Film at 11 [08:15] heh, why is that ? [08:15] LOL [08:15] there is jython and jruby too :) [08:15] but yea [08:16] i wonder what php would be like if re-written [08:17] and without 100000 functions to do everythiong, but more like python with 74 [08:17] but still keep the same syntax , runtime idiums etc [08:17] Isn't that hiphop? [08:17] nah hiphop == php to c converter [08:18] then you can compiler the c with g++ [08:18] it just now grew a jit compiler [08:18] but its buggy [08:19] it would look more like django with php syntax === fenris is now known as Guest733 [08:19] infact i what i'm thinking of is exactly that [08:19] django with only in php syntax === Guest733 is now known as ejat [08:19] not php current runtime a whole new one [08:20] but same token parser [08:20] hrm [08:20] that might actually be cool [08:20] and i bet with llvm compilers its pissible now a days witout a bajillion man hours [08:21] mmmm python with a php tokenizer runtime, that sounds sexy [08:21] <_mup_> Bug #992454 was filed: Charms are not sufficiently tamper proof < https://launchpad.net/bugs/992454 > [08:22] alright [08:22] i mean the java php project shows it can be done in very little time [08:22] I've filed my bug for the night [08:22] :) [08:23] func init() { http.HandleFunc("/", handler) [08:23] } [08:24] alright, sleep time [08:24] how fast you think we could make the dev_appengine.py sticking nginx and sdy infront ? [08:25] gnight man [08:25] i just woke up like 3 hours ago so i'll be up till noon [08:25] or more [08:25] see ya in a few [08:25] ohh before ya go [08:25] where is that test charm [08:25] for spdy, i wanna play with it a bit [08:26] * imbrandon looks on SpamapS lp branches and hopes === almaisan-away is now known as al-maisan === al-maisan is now known as almaisan-away === CORP\rkather1 is now known as krondor [15:28] hey m_3: soo I restarted my cluster of hadoop on ec2, but yesterday i simply shut themed down via the aws console, not juju and… I can't juju ssh into any machine today even though bootstrap and status work just fine. [15:28] any tips ? [15:29] senior7515: can you ssh directly to them? [15:30] well… not sure how. juju does not associate any keypar with them on install [15:30] i suppose I can try the debug thing [15:30] lets see [15:30] nope it detects the machine [15:30] it says [15:31] connecting to machine [15:31] then hangs [15:31] soo I suppose status does work, cuz otherwise how would it pick up the dns name [15:31] connection time out [15:31] debug_hooks finished successfully [15:32] that's what it says [15:34] senior7515: it associates your ssh key to the machines [15:34] senior7515: are you sure status sees the correct DNS name? [15:34] senior7515: like, in the AWS console, are the DNS names the same? [15:35] hmm checking. [15:35] probably… where would it make up the names ? [15:35] let me check [15:36] ohh good point… [15:36] why did the juju bootstrap [15:36] picked up the wrong dns name dunno [15:36] I mean I dont know how else to do it ? [15:36] shouldn't the bootstrap detect that ? [15:36] based on like private ips [15:37] or smth more permanent than the public DNS which is dynamic [15:41] senior7515: it doesn't poll amazon [15:41] senior7515: shutting down instances like that is not something juju fully supports [15:42] senior7515: you can reboot them, but shutting them down is still going to cause issues unfortunately [15:44] ohhh so how does one shut down the instances but keep the configs [15:44] like I need to install some jars on haddop and stuff. compile git repos [15:44] etc. [15:44] soo that takes some time [15:44] I don't necessarily want to shutdown [15:44] errr... [15:44] reboot [15:44] not destroy the environment [15:44] I just want to shutdown while I go home [15:44] and resume in the morning [15:45] senior7515: we've been talking about that lately [15:46] senior7515: I think shutdowns should be supported somehow [15:46] senior7515: perhaps with a "refresh-provider" command or something that goes and re-pulls all the addresses from the provider [15:47] the easiest way would be to install some sort of coordination software [15:47] exactly [15:48] welll on amazon [15:48] i knprivate IP's are not supposed to change for the life of that instance [15:48] so store that instead of the public dns [15:49] and it would work as is for now.. [15:49] ok… sooo solution is to terminate and then install again ? [15:51] senior7515: but how would you ssh to the private IP? ;) [15:51] senior7515: and FYI, I don't believe that private address guarantee extends to shutdown instances [15:53] ohhh ok [15:54] just thinking out loud, should have confirmed before. [15:54] I guess I was thinking private ip is fine within amazon [15:54] i can definitely ssh to 10.* [15:54] from my other machine [15:55] the reason I say that is that I'm pretty sure when I shutdown bootstrap, it changes both addresses [15:55] not sure how they segment their network… I guess it has worked for me in the past because I use all of the instances on est coast [15:55] ohh got you [15:55] which is why you cannot shutdown node 0 :) [15:56] we should actually have some way to fix that [15:56] oh so that's the main problem then haha… I shut all of the services down when I go home [15:56] ok [15:56] though perhaps the best way would be to make bootstrap HA and make sure the 'leader' corrects the addresses when it is time. [15:56] hmmm terminating.. instances [15:57] senior7515: one thing you might consider is pre-handling most of that stuff and dropping a big tarball in the charm w/ all the stuff [15:57] senior7515: this is actually why I encourage use of packages/PPA's because you can do that fairly easily [15:58] got you… sometimes is more than packages is port numbers, configs, custom software, firewall rules, etc. [15:58] packages in ubuntu is a breeze with apt-get\ [15:59] that stuff should all be saved in juju config options [15:59] you can save them off with 'juju get' [15:59] actually I wonder if juju get will save the whole of them in the proper yaml format [15:59] if not, it should [16:00] juju is great so far for 'deploy' [16:08] SpamapS: and json :) [16:08] imbrandon: json would not wor [16:08] k [16:08] :( [16:08] because juju set only takes yaml [16:09] imbrandon: patches accepted [16:09] :) [16:09] oh right , $whatever app could conert it back i guess [16:09] hehe [16:09] speaking of , you know any good php <--> zk bridges ? [16:09] * imbrandon is thinkin of a ui on the bootstrap node [16:11] would be kinda cool to do add-unit / remove unit from the web [16:11] and see some nice bar graphs :) [16:12] does open-port open the local firewall on a node or update the security group to allow for outside access to the port? [16:12] the aws security grp firewall [16:12] iirc [16:12] no idea on anything else [16:13] imbrandon: ok, so doesn't touch iptables. TY [16:13] SpamapS: how can i "force" juju to update its ip info in zk [16:14] phschwartz: as far as i know thats correct, least thats how its been working on my deploys [16:14] i KNOW it does the aws security grps, not sure if it does the ufw in addition or nor [16:14] not* [16:15] imbrandon: what you're describing is best done via a REST API.. https://launchpad.net/jrapi [16:15] SpamapS: yea i figured i'd have to write one tbh [16:15] thus started lower [16:15] :) [16:17] doh twistd [16:17] bah [16:18] SpamapS: btw is zk really needed on the client, would be nice to drop some deps on the osx build [16:18] imbrandon: absolutely [16:18] its *the only thing* the client does [16:19] k thiought maybe only bootstrap needed it [16:19] client changes ZK [16:19] agents make ZK true [16:19] or report errors [16:19] right but it dont workj like sql where there is only the "server" running remote on the bootstrap [16:20] and i only need bindings local ? [16:20] total zk newb so .... yea [16:21] mmm this reset interface looks like it could be functional [16:22] not a fan of twistd but i could use it untill i got a "roundtuwit" and did it in node or php [16:22] hrm === carif_ is now known as carif [16:25] imbrandon: well the problem is the C library is included w/ ZK proper [16:25] imbrandon: don't be silly [16:25] imbrandon: the REST API will be built into juju. Save your precious time. [16:25] imbrandon: the twistd jrapi is there as a stop-gap until the real one lands. [16:26] really, why complicate it, least a seperate go module i hope [16:27] * imbrandon graps the jrapi and to see if it still is working with current juju' [16:29] oh wait [16:29] its only a few days [16:29] old [16:29] nice [16:31] imbrandon: the client will be using the REST API when it is done [16:31] sweet [16:31] ok [16:31] * imbrandon hugs SpamapS [16:31] so yeah, don't make a 3rd one [16:31] :) [16:31] well i still may just fo that [16:31] lol [16:31] j/k [16:32] * imbrandon fires up Zend Studio, too much bash, time for some php [16:33] def to_yaml( self ): [16:33] try: [16:33] return( yaml.safe_dump( self.to_dict() ) ) [16:33] except yaml.YAMLError: [16:33] return( None ) [16:33] def to_json( self, pretty = True ): [16:33] args = dict( skipkeys = True ) [16:33] if pretty: [16:33] args["sort_keys"] = True [16:33] args["indent"] = 4 [16:34] return( json.dumps( self.to_dict(), **args ) ) [16:34] HAH! [16:36] wow this code isnt half bad [16:36] maybe its django i dont like ... /me hushes before he has to eat a few words [16:37] ok back to my problem tho, SpamapS how can i inform the juju got to refresh its info about the ips of the member nodes [16:38] e.g. i got a webhead or 3 that have changed IP's and juju still thinks they are on the old ones [16:39] preferably without invoking any hooks [16:39] imbrandon: it doesn't have any routines to do that. as I was suggesting, we need something like 'refresh-provider' [16:39] ahh ok [16:39] dident catch that [16:40] musta been typing too much [16:40] and in theory, you would also need to invoke all hooks around that service, and any connected to it [16:40] because they may have consumed private/public address [16:40] yea, i just manyualy fixed where it filled in the wrong ip [16:40] figured id spin a new env up sometime [16:40] but trying to put it off as long as possible [16:41] and atm if i add/remove anythign then the hooks fire and refill in the wrong ips [16:41] :) [16:42] i could make the configs read only i guess :) [16:42] lol [16:43] ohh got me a shiney new email ( just got activated ) you.should.hire@me.com heh [16:43] * imbrandon orders some business cards [16:46] well done [16:47] :) [19:26] niemeyer: you mentioned here "http://irclogs.ubuntu.com/2012/01/20/%23juju.txt" that juju won't survive a reboot with local/LXC [19:26] Is that still the case? (seems like it is) [19:29] ihashacks: it is [19:29] ihashacks: a few of the daemons don't get started properly on reboot [19:30] Is manually starting up the containers sufficient or still best to destroy-environment and bootstrap again? [19:30] ihashacks: I believe zookeeper also won't start back up properly [19:31] ihashacks: though you might be able to get it started [19:37] crap, it was here: https://juju.ubuntu.com/docs/provider-configuration-local.html [19:38] I need to RTFM better next time. Thanks. [19:41] adam_g, were you able to verify that one of the 2 branches (debug or what's in review, otherwise no functional diff) worked for you in terms of working with relation ids? [20:03] I am wondering - performing a 'juju deploy mysql' - my resulting juju status shows "state: start_error" [20:04] if I connect directly to the system- I find myql is running [20:12] jimbaker: i haven't had a chance to test yet, sorry [20:12] adam_g, no worries, just want to make sure this isn't blocking [20:12] from what i could tell, it now works fine in debug-hooks however [20:12] jimbaker: i can try now, where is the branch ? [20:13] adam_g, lp:~jimbaker/juju/unit-rel-lifecycle-start-invoker [20:13] thanks [20:13] adam_g, you might also find the new jitsu run-as-hook command useful for triggering relation hooks [20:33] jimbaker: am i wrong in assuming something like this should work: http://paste.ubuntu.com/960962/ [20:34] adam_g, yes [20:34] i'd like to have a relation service A -> B. When a relation is added from B -> C, I'd like to be able to inspect relation data between A and B [20:34] specifically the private-address of A [20:34] adam_g, you need to specify the remote unit as part of the relation-get [20:34] ok [20:34] since it's different than what the relation hook would imply - and that's on a different relation [20:34] so pretty easy [20:35] jimbaker: is there a way to resolve the JUJU_REMOTE_UNIT of a relation id? [20:35] adam_g, you could use relation-list -r relation_id [20:36] jimbaker: ah! exactly what i need. thanks [20:36] adam_g, i suspect that it might be a nice feature if JUJU_REMOTE_UNIT was simply set that way [20:36] when specifying -r... could definitely change that behavior [20:41] jimbaker: cool, that branch seems to do everything i need. [20:41] from debug-hooks at least [20:41] adam_g, cool! [20:41] thanks for the quick fix [20:41] np, please tell how it works in practice and what edges we can smooth [20:41] definitely [21:16] i'm trying to get the remote unit ip in a relation-joined hook, but i'm getting an empty string... i'm using: UNIT_IP=$(relation-get ip), is that the right way to be doing this? [21:22] imbrandon: this is going to be my new laptop http://www.slashgear.com/samsung-series-7-gamer-busts-out-ivy-bridge-01225472/ [21:22] :D [21:23] It will start shipping to stores for consumers in the last quarter of this year ^ but I get one when I get back from UDS :D [21:26] Hi guys, I think I just found a bug where the machine-agent.log consumes all the harddrive space after reboot. Has anyone seen that yet? [21:26] 2012-05-01 17:24:46,172:1198(0x7f2743605700):ZOO_ERROR@handle_socket_error_msg@1579: Socket [192.168.122.1:54477] zk retcode=-4, errno=111(Connection refused): server refused to accept the client [21:26] ^ my system was just killed with a 45GB logfile containing what was likely the above message. [21:27] Actually, that explains why my laptop has been mysteriously shutting down every night... [21:30] FWIW, I'm using juju from the PPA. [21:31] mars: yeah, that's a problem! please file a bug on it [21:31] m_3, yep, doing so now [21:31] thanks [21:47] re the machine log, there was a recent fix for that, but it has not been merged to trunk yet: bug 958312 [21:47] <_mup_> Bug #958312: Change zk logging configuration < https://launchpad.net/bugs/958312 > [21:48] however marked fix released as above, so really needs to be merged [21:48] mars, ^^^ [21:51] <_mup_> Bug #992887 was filed: machine-agent.log grows after boot until all disk space is used < https://launchpad.net/bugs/992887 > [21:51] jimbaker, thanks [21:51] m_3, filed: bug 992887 [21:51] <_mup_> Bug #992887: machine-agent.log grows after boot until all disk space is used < https://launchpad.net/bugs/992887 > [21:53] mars: cool [21:53] jimbaker, looks to be the same. Someone should confirm and dupe the bug I just filed. [21:59] nathwill: "ip" is not always present, it would need to be set by the other side [21:59] nathwill: only 'private-address' and 'public-address' are always present in relations [21:59] hrm [22:00] SpamapS: sounds like i should use one of those then [22:00] SpamapS: will can private-address be used for internode comms? [22:01] s/will can/can/ [22:03] nathwill: the distinction is purely up to the provider, but usually you would want to use private-address for inter-node communication, and public-address only when you need to send an external party to that service [22:03] perfect. ty :) [22:07] nathwill: you might see some older charms doing weird things to get the IP because those values were added later [22:07] * SpamapS thinks we should probably go back through the older charms and do some spring cleaning. [22:07] SpamapS: aha. that would explain the confusion... [22:08] ugh [22:10] <_mup_> juju/trunk r533 committed by kapil.thangavelu@canonical.com [22:10] <_mup_> [merge][trivial] minimize zk logging, workaround local provider problems with restart, ie. filling disks [r=jimbaker][f=958312] [22:11] jimbaker, yeah.. i totally got on a plane before i committed.. done now [22:11] hazmat: I figured as much. :) [22:15] anyone have time to review bug 991897 ? my first charm attempt... [22:15] <_mup_> Bug #991897: new-charm: vsftpd < https://launchpad.net/bugs/991897 > [22:18] nathwill: I'll be reviewing charms later today or early tomorrow [22:18] hazmat, if you have a chance to take a look at lp:~jimbaker/juju/unit-rel-lifecycle-start-invoker, that would be great. adam_g was able to use it to fix the problem he saw with using relation ids - just a one-line fix, everything else is just testing to ensure Invoker.start is actually yielded upon [22:18] SpamapS: cool,thankee [22:18] so i would call it a trivial [22:21] jimbaker, saw it, it looked good, just haven't had a time to examine it carefully [22:21] jimbaker, i'll do it this evening after we wrap up the sprint [22:21] hazmat, np [22:35] jcastro: I was just going to ask out of curiosity why you choose dell laptops instead of zareason or system76? [22:40] bkerensa: perhaps the dell laptops chose jcastro, not the other way around ;) === mcclurmc is now known as 31NAA87MH === SpamapS_ is now known as SpamapS === elmo_ is now known as elmo === marcoceppi_ is now known as marcoceppi === telmich_ is now known as telmich