/srv/irclogs.ubuntu.com/2012/05/01/#juju.txt

m_3senior7515: juju works against a local lxc provider for development00:14
senior7515ohhh awesome… sooo how does it work when you say -n 300:17
senior7515for example00:17
senior7515 ?00:17
senior7515virtual instances over some virtual engine or ?00:17
senior7515disregards ?00:17
senior7515or ?00:17
chefnewbiea 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:18
m_3senior7515: 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
m_3senior7515: 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 cloud00:20
m_3chefnewbie: 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 puppet00:22
m_3chefnewbie: 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:23
imbrandonSpamapS: ping , wanna prom this ? https://github.com/websitedevops/charms-newrelic-php00:24
chefnewbieso 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
chefnewbieis this a correct 101 understanding?00:25
m_3chefnewbie: it _could_ work that way, but it really depends on the service00:26
_mup_juju/unit-rel-lifecycle-start-invoker r533 committed by jim.baker@canonical.com00:26
_mup_Ensure that invoker.start is called to get relation hook caching for lifecycles00:26
m_3chefnewbie: a lot of services are pretty simple installations and don't need manifests or cookbooks to configure them00:26
senior7515m_3: thanks… testing this mongodb-hadoop api is becoming a pain.. meh.. still wishing I had a devops guy hehe00:27
m_3chefnewbie: browse through the "install" hooks on a couple of charms in jujucharms.com and you'll see some simple examples00:27
chefnewbieThanks, m_3. I am thinking of this long-term goal in my company....00:27
m_3chefnewbie: more complex things like rails apps or django apps might warrant using other tools for the configuration of each charm00:28
m_3chefnewbie: sure...  happy to discuss.00:28
m_3senior7515: cool00:29
* m_3 gotta run to dinner... catch y'all later00:29
chefnewbieWe 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 layer00:29
chefnewbieif we introduce Chef, we are introducing Ruby prettey much as I understand.00:30
chefnewbieWe want to avoid such scenario as much as possible.00:30
chefnewbieany suggestion?00:30
m_3chefnewbie: 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
m_3chefnewbie: juju hooks can be written in any language (with an ubuntu runtime)00:30
* imbrandon even does some in php00:31
senior7515is 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:31
chefnewbiewe 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 stack00:32
imbrandonchefnewbie: certainly00:32
imbrandonits able to use pupet or others if you wish but certainly dont need them00:33
chefnewbieI 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
imbrandonchefnewbie: many hooks are in python in juju00:33
imbrandoninfact i'd say about 50% its by far the most comon choice00:34
imbrandonand those that arent are simple bash scripts00:34
chefnewbiethanks, I think I roughly got what I wanted from this chat :-)00:34
chefnewbieand the supportive chat room just gave me another reason to explore Juju...00:34
imbrandon:)00:34
chefnewbieanother question: how would other OS vendors treat Juju? --I know Ubuntu will support this effort as long term commitment, but how about centos?00:36
imbrandonhrm 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 fire00:37
imbrandonreally 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 app00:38
imbrandonthe os and software running the app then becomes a commodity , not a asset, and can be started/stoped/moved thrown out etc at will00:40
imbrandonand the app is fine00:40
imbrandone.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 to00:41
imbrandonlet juju care if there are 3 heas or 3 and making them work00:41
imbrandononce your to that point the os is really just a name on paper00:42
imbrandon3 heads* or 30*00:42
chefnewbiewell, 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
chefnewbieFor example, Ubuntu's /etc/networking/... controls network stuff, but that may be different in Redhad (or other vendors)00:43
imbrandonchefnewbie: 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
imbrandonand i then had 5 webheads and plenty of room for traffic00:44
imbrandoni juju took care of spinning up 4 more nodes, installing nginx, configing it00:45
imbrandonmaking it talk to the db00:45
chefnewbieimbrandon: here is my question....00:45
imbrandonrsyncing the current wp relase adn code00:45
imbrandonetc00:45
marcoceppichefnewbie: 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 platform00:45
marcoceppiWhile 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, etc00:46
chefnewbiemarcoceppi: charm is the hook (i.e., the one defining the inidvidual node's configuration)?00:46
marcoceppicharms define the service to be deployed00:47
marcoceppichefnewbie: these are all charms; http://jujucharms.com/charms00:47
marcoceppirather, these are all services that have been charmed00:47
imbrandonchefnewbie: think of a hook as a init.d script, they are juju scripts that fire at the right times00:47
imbrandonon the node00:48
imbrandonso 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 etc00:49
imbrandonwhatever is in the config-changed hook, a bash or python or whatever script , is what gets done00:49
chefnewbieimbrandon: 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
marcoceppicharms are just a collection of hooks00:50
marcoceppithat comprise to build a service00:50
imbrandonhrm heh , well it would just bee the system that kicks those off00:50
imbrandonyea00:51
marcoceppichefnewbie: you can browse what hooks make a charm at any of the charms here:  http://jujucharms.com/charms00:51
imbrandonand keeps info about all the nodes00:51
chefnewbieso 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
imbrandonchefnewbie: 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:52
imbrandonand keeps track of weach service and its state00:53
chefnewbiethanks, I think I should be looking at Juju doc more.00:53
chefnewbieYou guys are really supportive, many thanks00:54
chefnewbiewhat is the juju's license term?00:54
imbrandonyea thats one good thin, even as quick as juju is moveing the docs stay pretty upto date00:54
imbrandonthey are great about that00:54
chefnewbieAGPL 3.0? what does that mean?00:54
imbrandongpl 3 iirc, for the program its self, chamrs are lic on their own00:54
imbrandoncharms*00:54
imbrandonafro gpl v300:55
chefnewbieyep, it is agpl v3.00:55
imbrandonbut yea charms are lic individually they arent derivitive works00:56
imbrandonof juju at leaste00:56
marcoceppiAll 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 criteria00:56
imbrandonmarcoceppi: really ? shit mine is gpl v2 and that means drupal will never be in the cs00:57
marcoceppis/must be at least GPLv3/must be under a free license: http:\/\/www.opensource.org\/licenses\//00:57
imbrandonahhh ok00:57
imbrandongood god00:57
imbrandon:)00:57
marcoceppiYes, I escape my chat regex lines.00:58
imbrandonahahah00:58
marcoceppiGPLv3 is just recommended00:58
imbrandonyea i about craped my pants there, i really dislike v3 and use v2 mostly or a simplified BSD but drupal is v3 incompatable too00:58
chefnewbieAGPL v3 is stricter than GPL v3?00:59
imbrandonchefnewbie: it covers webservice stuff00:59
imbrandoniirc00:59
chefnewbieimbrandon: what does this mean ("covers webservice stuff")?01:00
chefnewbieif someone use juju to provide a service like RightScale, it needs to pay license fee?01:00
imbrandonchefnewbie: 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 that01:00
imbrandonchefnewbie: and no01:01
imbrandonchefnewbie: only the src to juju, unless your modify juju to actually provide the web ui01:01
imbrandonif its a tools calleed on the backend01:01
imbrandonthen no01:01
imbrandonyou can write a webui and be 100% closed and still "call out" to juju01:02
imbrandonas a back end program as you would with say ummm ssh or somehting01:02
chefnewbiehmm, then please give me a scenario that I need to give out src, please.01:03
imbrandonchefnewbie: 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:03
chefnewbiethanks, this is simple and easy to understand (for now, for my 101 understanding)01:04
imbrandonthen 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 hooh01:04
imbrandonbasicly if you dont madify juju your golden01:05
imbrandonand charms dont cound as part of juju01:05
imbrandoncount*01:05
imbrandonokies, dinner time01:05
imbrandonafk a bit fellas01:05
chefnewbiemany thanks, imbrandon01:06
imbrandonnp01:06
_mup_Bug #992329 was filed: Ensure Invoker.start is called from UnitRelationLifecycle usage. <juju:In Progress by jimbaker> < https://launchpad.net/bugs/992329 >01:06
chefnewbiethanks to marcoceppi, too.01:06
imbrandonbtw , the internet meme applies IANAL :)01:08
jimbakeradam_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
imbrandon( i am not a lawyer )01:08
imbrandonchefnewbie: ^^01:08
jimbaker(the only other change was to make it slightly more verbose on logging the caching of the relation hook contexts)01:09
chefnewbieyeah, layers make big bucks for good reason :-)01:09
imbrandonyup yup , just wanted to make sure, when it comes down to it , get real advice, but thats the general gist of it01:09
chefnewbieyeah, just get a ballpark of what I should pay attention to when thinking of choosing a technology for our small shop...01:10
imbrandonyup, you  should be perfectly fine imho01:11
chefnewbiewill ask 201 questions once I get another depth of understanding...01:11
imbrandon:)01:11
chefnewbieafter that, layers get consulting checks :-)01:11
imbrandonheh01:12
chefnewbiethanks again, you have a good dinner time...01:12
imbrandonmost of the time you can get clarification on the fsf site as they have spelled out 99% of common cases as lawyers01:12
imbrandonbut if not you know :)01:12
_mup_juju/unit-rel-lifecycle-start-invoker r534 committed by jim.baker@canonical.com01:37
_mup_Fixed tests that saw augmented log changes01:37
SpamapSimbrandon: git is great, but the charm store lives in launchpad. can you push to a launchpad branch please?04:39
imbrandonSpamapS: sure but jcastro told me to force yall yo learn the other workflow since its documented that github is a valid src too05:32
imbrandonbut yea in the intrest of time right now i will :)05:32
SpamapSwho?06:03
SpamapSwho decided that?06:03
SpamapSimbrandon: I'm supportive of those who would shun git06:03
SpamapSbut we have a distribution built on bzr06:03
SpamapSerr06:03
SpamapSI'm supportive of those who would *use* git06:03
SpamapSUntil Launchpad supports git, or the charm store supports pulling from github, new charms for the official charm store need to be on launchpad06:04
SpamapSimbrandon: where is it documented btw?06:04
SpamapSimbrandon: 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
SpamapSjuju has no such method06:06
SpamapSso it is effectively GPLv306:06
nathwillSpamapS: https://juju.ubuntu.com/Charms06:07
nathwillin answer to your github question06:07
SpamapSyeah, thats confusing06:09
SpamapSsince we've never discussed that as a group06:09
SpamapSnor have I ever looked at the github pull requests to see if there are new charms there06:09
imbrandon:)06:10
SpamapSnathwill: thanks tho06:10
nathwillfer sure.06:10
imbrandonSpamapS: iirc m_3 is writing some glue so LP wont need to support git06:11
imbrandonfor the cs06:11
imbrandonusing bzr-git-ng06:11
imbrandonleast thats how jcastro splained it to me06:11
imbrandonanyhow i pushed the latests newrelic-php to LP and fixed up the bug06:11
imbrandonits ready for your worst06:12
imbrandoni got some more commits for drupal before i'm happy but working on them now06:12
imbrandonjust had to stop for a omg hiccup06:12
SpamapSawesome06:12
imbrandonbut back at it , i am06:12
SpamapSIt 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
imbrandonhahah np06:13
imbrandoni totaly understand06:13
imbrandoni think thats one reason he was like, yea do it that way, so we're forced to learn the workflow06:13
imbrandonlike almost exact words :)06:13
SpamapSman06:14
SpamapSI hate that idea06:14
SpamapSlets have one workflow06:14
SpamapSchoices lead to mistakes06:14
imbrandonheh06:14
imbrandonwe're talking ppl that should be devs06:14
SpamapSits already new and crazy and weird enough to be writing charms.. to have 2 workflows to choose from and maintain and monitor... ugh06:14
imbrandondont cut the wheels off, it should be embraced or your gonna see alot more of like what i put in the comments06:15
SpamapSIts an efficiency blunder06:15
SpamapSDebian has that ethos06:15
imbrandonnah06:15
SpamapS"choice is the almighty"06:15
imbrandonjust make the tools work06:15
imbrandonlike the glue to import from github :)06:15
SpamapSAnd 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
imbrandonsee i like the midground06:15
imbrandonnot too man but dont cut my fingers off06:15
imbrandonmany*06:16
SpamapSIf its as superior as people seem to think..06:16
SpamapSthen it will win out with users anyway06:16
imbrandonit has06:16
imbrandonthst the problem :)06:16
SpamapSBut it *has* to be on launchpad.06:16
nathwilloh snap06:16
SpamapS*has to be*06:16
imbrandonyour statements just contradictoed06:17
imbrandonthemselfs06:17
nathwillSpamapS, doesn't launchpad already have mechanisms for registering upstreams and importing from various VCS systems?06:17
nathwillautomagically?06:17
SpamapSUnless 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
imbrandonnathwill: yea for projects nothing else06:17
nathwillhrm06:17
nathwillbet that functionality could be leveraged pretty easily06:17
SpamapSnathwill: yes, launchpad can import from github06:17
SpamapSwe can do that06:17
SpamapSBut we lose linked branches06:18
SpamapSand linked merge proposals06:18
imbrandonSpamapS: 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 /trunk06:18
imbrandon:)06:18
imbrandonimho its LP thats broke tho not the cs or github, it should be easy to support both06:20
imbrandoni see your grip as its not now06:20
imbrandonbut thats the problem , not that users wanna use something else06:20
SpamapSOpenStack has proved that you can successfully have LP for bugs and git for all else.06:20
imbrandonok then let us do it06:21
SpamapSBut, thats at the project level. We're building a distro with potentially thousands of branches.06:21
imbrandonexxactly a LP peroblem06:21
imbrandonSpamapS: whats 1k;s of branches got to do with it, branches are cheap06:21
SpamapSimbrandon: the management of them, is not.06:21
nathwillSpamapS: ah, i see what you're saying about losing merge proposals/links06:22
imbrandonthe management of them is automated either way or should be06:22
SpamapSno, bugs cannot be automated06:22
SpamapSelse we'd have entered the singularity and be fighting off skeletal robots06:22
imbrandonand 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 code06:22
SpamapSI'm honestly ignorant of any other bug system that allows bug tracking across concerns the way LP does.06:23
imbrandonSpamapS: 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 feature06:23
imbrandonSpamapS: inho that a useability nightmre and should be removed with fire06:24
SpamapSwere 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
imbrandonyes06:24
imbrandonmake 10000000 ppl change or fix the tool ? hrm06:25
SpamapSimbrandon: 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
imbrandonor fix lp to relate to github bugs and branches as well06:25
imbrandonor twoway mirror git06:25
imbrandonor both06:25
SpamapSlinking to an external bug tracker is not really what I"m talking about06:26
imbrandonit accomplishes the same thing by linking bugs, we handel it all the time in drupal issue tracking, diffrent upstreams, projects, codepbases but some the same06:27
imbrandonetc06:27
SpamapSI'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
imbrandonyea its not the one ring but still works great06:27
SpamapSIf all the charms are on github, we can just paste links to the fixed branches, thats not even that much of a concern.06:27
imbrandonhuh ? 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 fail06:28
imbrandoneither way as much as we want it to be it CANNOT be absolutely tied to LP or any ONE place06:29
imbrandoneven github06:29
imbrandonso to fix it, we make LP the easiest way, and supopiort the other ways without hacks06:29
SpamapSerr06:29
SpamapSsomehow ubuntu succeeds where this will fail?06:30
imbrandonubuntu did only because it already had critical mass06:30
imbrandonit took years06:30
imbrandonand juju dont have that mass06:30
SpamapSI come at it from a different angle06:30
SpamapSThe tools are of some slight concern06:31
nathwillthat maas06:31
SpamapSbut as long as I know *how* to contribute06:31
SpamapSI don't care that its not my favorite method06:31
SpamapSIf there are 49 islands out there with charms on them06:31
SpamapShow do I pick one?06:31
SpamapSparadox of choice06:31
imbrandoni 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 better06:31
imbrandonif they are forced to choose they WILL choose github06:32
SpamapSSo, VCS is all on LP, or its all somewhere else.06:32
imbrandonand make their own06:32
imbrandonwhy06:32
imbrandonwhy not support both06:32
SpamapSgithub is great, but this is still different06:32
SpamapSin fact06:32
imbrandonvcs is distributed for a rewason06:32
imbrandonit shoud not matter where it is06:32
SpamapSthe 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/ charms06:33
nathwillimbrandon, i don't think developers choose to get involved with a project because of the vcs it uses... but because they like the project06:33
imbrandonno06:33
imbrandonomg no06:33
imbrandonnathwill: your right but they choose to contrib to it or not based on that06:33
imbrandonand the frequency of their conriubs06:33
imbrandonSpamapS: your missing my point entirely tho06:34
imbrandonand its hard for me on irc to articulate it06:34
SpamapSimbrandon: 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
imbrandonand now i'm irritated cuz i know via other convos we've had you would agree if i can figure out how to put it06:35
imbrandonSpamapS: thats an infrastructure problem for the store, should not be a user issue in any way06:35
imbrandontransparent06:35
SpamapSwell 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 already06:36
imbrandonSpamapS: 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:38
imbrandonin this case LP dont support git or remote bug association and a few other key things that wouold make all this moot06:39
SpamapSYeah, 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
SpamapSnote, bzr, lp, not mentioned06:39
imbrandonSpamapS: hehe06:39
imbrandonsure tho06:39
imbrandonand i fully suport that06:39
imbrandonbut then drop down on step06:39
imbrandonthats at the store level no one else care06:40
lifelessmmm skeletal robots06:40
imbrandonso at the next meta step down in distrib vcs06:40
imbrandonthey are all over the place06:40
SpamapSdvcs is fine06:40
imbrandonso make some glue to brong em togtaher and your both happy06:40
SpamapSbut the *official* charms need a single place to tie them together06:40
SpamapSthere needs to be *a mainline*06:40
imbrandonthey are in the storwe with a vcs06:40
SpamapSI know, git blasphemy06:40
imbrandonno06:41
imbrandonno06:41
imbrandonabsolutely not06:41
imbrandonok06:41
imbrandonevery app in itunes is in one place06:41
SpamapSimbrandon: I don't have to make that glue. LP exists, and does this, now.06:41
imbrandonevery dev has crap everywhere06:41
imbrandonSpamapS: LP is fucking broken if it wont support that then06:41
SpamapSand bzr is not limiting in any way other than politics.06:41
imbrandonthere is no glue06:41
imbrandonbullshit06:42
imbrandonit fucked up the omg merges 3 or 4 times last month where git worked perfect06:42
SpamapSthis is editor wars. ;)06:42
SpamapSimbrandon: perhaps because it was git users trying to use bzr the wrong way? :)06:42
imbrandonok look, itunes, apps all in one place, all reviews by apple, all done in diffrent palces06:43
imbrandonwhy do i care that apple wants to keep them all in an NFS share on win3.106:43
imbrandoni dont06:43
SpamapSand 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
imbrandononce they take it to review i dont care at all06:43
imbrandonthat dont fix tthe probme06:43
imbrandongaqd i hate irc06:43
SpamapSimbrandon: app store apps are not integrated with one another06:44
imbrandonit lets the issue get away06:44
SpamapSthey are, in fact, an island unto themselves.06:44
imbrandonSpamapS: they certainly are06:44
imbrandonno06:44
imbrandonin store purchaes , receipts06:44
imbrandonall kinda intergrations06:44
imbrandonbut that dont matter either06:44
imbrandonwtf06:44
imbrandonugh06:44
imbrandonyou totally side steped it06:45
SpamapSIts pretty rare, right?06:45
SpamapSLike, *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
imbrandonit 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:45
SpamapSBecause you need your charm to work w/ mysql/memcached/etc.06:46
imbrandonit can sorrte my stuff in sabdfl's pinto i dont care, but you make me care if i need to load up the pinto06:46
imbrandonhplly shit06:46
imbrandonSpamapS:06:46
imbrandoncommon man06:46
imbrandoni'm not even on that subject06:46
imbrandonthat has to do with zk and juju when running06:46
imbrandonwtf does it have to do with the store06:46
imbrandonthen the vcs the store uses06:46
SpamapSwell 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 URL06:47
SpamapSof course06:47
SpamapSthere's no trust relationship with those URLs06:47
imbrandonumm thats how it shouldbe , maybe a db ya know ,21k centry and all06:47
SpamapS~charmers is a trusted party, like ubuntu-core-dev06:47
imbrandonand ?06:48
SpamapSso right now we own all the branches and review all changes made to them06:48
imbrandonyour bikesheding , it dont matter because the cs dont work directly off ~charmers it still needs to be pulled into the store repo06:48
imbrandonor at minimum into the charmers repo06:48
imbrandonon approval06:48
SpamapScs *does* in fact work directly off ~charmers  (well, lp:charms, same diff as its owned by ~charmers) for cs:series/charmname06:49
imbrandonthat is done by hand as well as trust verify06:49
imbrandonok my point still stands sans the first part06:49
imbrandon( and wow really? ewwww )06:49
SpamapSOk, 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 URLs06:50
imbrandonor we could fix LPO to do it too06:50
imbrandonand everyone benefits06:50
SpamapSimbrandon: cs:~user/series/charmname can be any LP user06:50
imbrandonSpamapS: i know but that dont mean the cs06:50
imbrandonwell whatever06:50
imbrandonthats just routing like in a django app06:51
imbrandoncould be anything06:51
imbrandonsemantics06:51
SpamapSso, my point is still that this glue you speak of, that I acknowledge can be used and written, is not written, and does not exist06:51
imbrandonbrew install jujutools/juju is the same as ~/jujutools/Forumla/juju.rb tooo06:51
SpamapSand furthermore, the process, while not super desirable, is single threaded and easy to follow right now06:52
imbrandonfor that matter, its all routing06:52
SpamapSso until the glue exists06:52
imbrandonSpamapS: yes but then it needs to be , we shouldent do something the wrong way because of it06:52
SpamapSI do not want to pollute the contribution process, as flawed as it may be, with more VCS's06:52
imbrandonso until it exists it should be manual06:52
SpamapSthere is already some work inside juju to hide these details as well06:54
imbrandonright06:54
imbrandonas it should06:54
SpamapSthere should be a 'juju publish' command that will push your local charm up to the charmstore w/o you caring about LP06:54
imbrandoncool but how would it verify me then06:54
SpamapS(but this gets into where now they are playing a weird game w/ VCS because of that revision file..)06:54
imbrandonoh wait06:54
SpamapSimbrandon: same way LP does, ssh key06:55
imbrandoni would have to care and put a ssh key06:55
imbrandon:)06:55
SpamapSor perhaps OAuth06:55
nathwillimbrandon, you do for github as well...06:55
imbrandonnathwill: sure but i care for github06:55
imbrandon:)06:55
imbrandoni was playing devils advocate as in yes charmers will still need to care and strust lp06:55
imbrandonbut users wont06:56
imbrandonbut thats minor06:56
SpamapSusers are implicitly trusting ~charmers if they deploy charms unqualified w/ username06:56
imbrandonjup06:56
imbrandonsure06:56
imbrandonand ?06:56
SpamapSwell its really a trust transfer06:57
SpamapSsince they get juju from Ubuntu or a PPA, they are already trusting those entities06:57
SpamapSor brew.. :)06:57
imbrandonsee the whole thing here is you are working with tools that exist only, instead of how the ideal situation is an going there06:57
SpamapSidealism is the quickest path to failurre06:57
imbrandonnot with release eaarly and often06:58
SpamapS"My goal is perfection." ... you have just failed.06:58
imbrandoniteration is the quickest path to success06:58
SpamapSyeah, we're going to iterrate06:58
SpamapSa LOT06:58
imbrandonok 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 should06:59
SpamapSBut I'd like to keep that iterration focused on things that clarify the picture for new contributors, not muddy the waters.06:59
imbrandonios my WHOLE point06:59
imbrandonSpamapS: all the more reason to leave it that way then as it will work someday06:59
SpamapSso 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?"06:59
imbrandonand not change it then go back and say oh but now its ok07:00
SpamapSI'm down with that. :)07:00
SpamapS<-- seriously will bend over backward for anybody who writes a charm07:00
imbrandonSpamapS: no07:00
imbrandonfuck man07:00
SpamapSI'm serious. :)07:00
imbrandoni hate that, what does that have to do with it=07:00
SpamapS(^)  I will look like that07:00
imbrandonyea but you just threw awaay when i thought you finaly understood07:00
SpamapSwell pulling git branches manually is bending over backward07:01
SpamapSand I'm willing to do it.07:01
imbrandonthe bug tracking and awesomness of lp KEEP, force bzr dont07:01
imbrandonif it pains you that you cannot pull git into your store07:01
imbrandonfix the store07:01
SpamapSI'm just not willing to do it forever.07:01
imbrandonright but why muddy the waters07:02
imbrandonand make a policy change then to stop it07:02
imbrandonand then start it or say "but now its ok"07:02
imbrandonlater ?07:02
imbrandonor leave as is, and as you put it take one07:02
imbrandontill its fixed07:02
SpamapSAdding things slowly, as you understand their impact better, is a good method of iterration.07:03
imbrandonit can be07:03
SpamapSIt will be very hard to convince me that the "how to submit a charm" page should have more than one method.07:04
SpamapSI hope when juju grows a 'publish' command, that we can just ditch the BZR instructions entirely07:04
imbrandondamnit man, screw all this lets do it over beer as its not gonna change this week , and prom my newrelic07:05
imbrandon:)07:05
SpamapSWe *SHOULD* say "if you want to use git, do x, y, z, to get your git branch in front of us."07:05
imbrandonagreed on the publish07:05
imbrandonnah07:05
imbrandonit 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 store07:06
SpamapSRight now that bit is "push your git branch to a bzr branch, then follow all these other steps like bzr users do"07:06
imbrandonrember 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 others07:07
SpamapSimbrandon: 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:07
imbrandonSpamapS: right, imho any form os submition that is not under lock and https key via a single signed archie07:08
imbrandonlike ohhhh hte deb build servers07:08
imbrandonis wrong07:08
SpamapS~charmers is as secure as ubuntu-core-dev in theory.07:08
imbrandonthats how you solve the trust issue,i sign the package for relewase with gpg or whatever07:09
imbrandonpublish on that not if i';its in a certain vcs07:09
SpamapSin practice, I have not reviewed the cs: code to see if it actually does https verification07:09
imbrandonzomg07:09
SpamapSI just now got EC2 doing that07:09
imbrandonwtf does that have to do with it07:09
imbrandon~chamers dont let me upload07:09
SpamapSyes it does!07:09
imbrandonit dont take tarbalss07:09
imbrandonit dont take zips07:10
imbrandoniot dont verify gpog07:10
SpamapS~charmers takes bzr push which is as good as an upload07:10
imbrandonnope07:10
SpamapSSSH keys are the exact same crypto as GPG07:10
imbrandononly if you use bzr it is07:10
imbrandonthen again your forcing somehting on the submistions that effect code07:10
SpamapSthe 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 keys07:12
imbrandonright that verifies ME07:12
imbrandonwhat verifies my code07:13
SpamapSI do think we should be signing our commits07:13
imbrandontherre ya go07:13
imbrandonNOW07:13
imbrandonwith what bzr ?07:13
SpamapSbut there's nothing in there to verify those sigs07:13
imbrandonfail07:13
imbrandonsign a tarbal07:13
imbrandonSpamapS: so07:13
SpamapS<sigh> ... so much code you're suggesting we write07:13
imbrandonSpamapS: fix it, dont not do it cuz there is nothing to veruify07:13
imbrandonmake something to verify07:13
SpamapSwhich should we do first?07:14
imbrandonSpamapS: sure07:14
SpamapSglue for github?07:14
SpamapSgpg signing of commits?07:14
imbrandonSpamapS: something of this magnatude IS alot of code07:14
imbrandonand alot of man hours etc07:14
SpamapSyou see now why I don't want to f*** with the way LP+BZR are used, even though I know it must change.07:14
SpamapSI'm hoping its hidden from users07:15
SpamapSAlso hoping ZK is hidden from the client07:15
imbrandon:)07:15
SpamapSimbrandon: 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
SpamapSWe have to start signing the code commits.07:16
* imbrandon writes some git hooks to checkin and push bzr on push07:16
SpamapSI know you're saying tarballs, but for now, bzr supports this.07:16
imbrandonright i get ya07:16
imbrandonbabysteps07:16
SpamapSWe have a closed authentication loop..07:16
SpamapSbut not a tamper proof repository07:16
* SpamapS prepares a bug report07:17
imbrandonreally imho as much as it is diffrent it also is the same as packaging07:17
imbrandone.g all brit or soyuz07:18
SpamapSimbrandon: yeah its integration, not development07:18
imbrandonetc steps07:18
imbrandonnot the finished07:18
imbrandonproduct07:18
imbrandoni mean the charms07:18
imbrandonand how they are p[ublished07:18
imbrandonpackaging not using a deb07:18
imbrandonyour right charmer != kde dev, charmer == motu07:19
imbrandonsecurity and steps should be similar to be published, anyone can make their own repo, to be in cs its some work]07:19
SpamapSimbrandon: 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:20
imbrandonme too, but just rember there can be lots of middleware07:21
imbrandon:)07:21
SpamapSimbrandon: 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
imbrandonbah the place dont matter07:22
imbrandonif your tool dont support tracking them07:22
imbrandonSpamapS: 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 everything07:23
imbrandonjust make the cs: and the workflow that should be best07:23
imbrandonthe easiest07:23
imbrandonand the most solid07:23
imbrandonthen screw the rest, let em stray way the hell off07:24
imbrandonit will police it self eventually and then it wont happen07:24
imbrandonif its true07:24
imbrandonthen we dont have to "over think shit"07:24
imbrandonwe make a great store07:24
imbrandonand a great juju07:24
imbrandonand thats all07:24
SpamapSimbrandon: yeah, I don't want to control.. I want to enable actually.07:25
SpamapSimbrandon: I just want to maintain influence over the forks if I can.07:25
imbrandonright but there is a fine line07:25
imbrandonnag07:25
imbrandonnah07:25
imbrandonthats control , not enablement07:25
SpamapSlike, 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
SpamapSimbrandon: influence means you maintain a voice, control means you squelch other voices.07:26
SpamapSI'll give up control gladly.. if they go away.. fine, we lose influence too.07:26
imbrandonwell even thats against some of your coworkers, i was explained that every person should have their own local forks07:26
imbrandonthats what was wnanted07:26
SpamapS*bwahahahahaha*07:27
SpamapSyeah07:27
SpamapSThats going to be *AWESOME*07:27
SpamapSright?07:27
imbrandoni think so, everyone has their own cookbooks07:27
imbrandon*chef*07:28
SpamapSso07:28
SpamapSwhy not just use chef?07:28
SpamapSits more mature07:28
imbrandonzomg07:28
imbrandonok _everytolls_ has their own local configs07:28
imbrandontool*07:28
imbrandonirc , missing , point, context sucks, ugh07:29
SpamapSI'm hoping we can shake that kind of B.S. out of ops thinking07:29
SpamapSno I get what you mean :)07:29
SpamapSI was a busy op once upon a time07:29
SpamapSand I didn't have time to contribute back either07:29
imbrandonno you dont, you want ever site to be configured exactly the same on the internet ? yea THATS gonna work07:29
SpamapSI'd just apt-get source.. change something, build it, install it, and forget about it07:29
imbrandonno charms will always need local mods07:29
imbrandonSpamapS: excactly07:30
SpamapSlong 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
imbrandonSpamapS: but that is absolutely needed07:30
imbrandonjuju will FAIL if not07:30
imbrandonrember the php talk we had07:30
SpamapSyeah I'll enable that07:30
imbrandonyou NEED to be abloe to do it07:30
SpamapSI'll enable forking and forgetting07:30
SpamapSI want to also enable forking and feeding back07:31
imbrandonfast and not give two craps07:31
imbrandonSpamapS: exactly07:31
imbrandonbut enable dont hunder07:31
imbrandonhinder07:31
SpamapSbecause the next time we update the charm w/ awesomeness07:31
imbrandonyour mixing the two07:31
SpamapSand they can't use said awesomeness because they have to merge w/ us07:31
imbrandonthey will learn07:31
imbrandonexactly07:31
SpamapSI want it to be obvious how to say "crap, I don't want to maintain my awesomeness anymore"07:31
imbrandonthats bullshit07:32
imbrandonthats the same kinda of billshit that is "dont hack core" of drupal07:32
SpamapSand if that is just 'juju propose-merge cs:~myuser/precise/foo'07:32
imbrandonwe make software like this to enable ops and dev07:32
SpamapSand it just creates a bug, proposes the merge, and moves on with life.. *zang*07:32
imbrandonnot to make them do it our way07:32
SpamapSwe win07:32
imbrandonbah07:32
imbrandonthats ignorant and arrogant07:32
SpamapSwhat would you propose differently?07:33
imbrandonwe 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 be07:33
imbrandonat all07:33
SpamapSuhm.. ok?07:34
SpamapSI just said that??07:34
imbrandonno, you said how it would be ideal now if they was so incliuned07:34
imbrandonand not have their own agenda07:34
imbrandonnot how the best tool would make that not even matter07:34
SpamapSYeah I guess I'm failing to see where we got disconnected.07:35
imbrandonyea, i cant get enough speed out of my keyboard to get my full point accross07:35
SpamapSI'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
imbrandonor even a good chunk of it07:35
imbrandonSpamapS: ok stop07:35
imbrandonread07:36
imbrandonthat again07:36
imbrandonwhat you just said07:36
imbrandonok see, thats where07:36
imbrandonwe fix the problem of it becominng harder and harder, not just make another damn tool that enforces that to be the hardwr way07:36
SpamapSgo through the scenario, only the way you'd see it working, instead of my arrogance :)07:36
imbrandonnot all stuff is or will be suitable for includsion07:37
imbrandonnor will they goive two damns if it is07:37
imbrandoneven if its easy07:37
imbrandonso we need to make it easy for them to stay inline IF we even want to at all07:37
imbrandonwithout any07:37
imbrandonexpectations of them07:38
imbrandonnone07:38
SpamapShow?07:38
imbrandonthat needs to be worked out by us group of smart ppl, isnt that why we're here07:38
SpamapScode changes, forks beget merges.. this is a constant that I cannot see being factored out07:38
imbrandonor are we just making something else thats already out there with another companies name on it07:38
imbrandonthe only thing constant in the universe is c07:39
SpamapSwe 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
imbrandon5 years ago we would have got laughed at for a tool like juju as its not needed for those kids playing in the cloud07:39
imbrandonshit chnages fast07:39
imbrandonthen lets work to minimising it, and then again and again, and seriously not worry about the voice07:40
SpamapSbut if we both change the same bit of a charm, for good reasons.. thats not going to resolve itself.07:40
imbrandonit will be there if we do that07:40
imbrandonSpamapS: gawd man you get tied up in the technical bits like they cant be changed07:41
imbrandonthen lets fix ist or find another route etc07:41
SpamapSI don't think a realistic goal of juju is "solve the problem of merging forks"07:41
imbrandonthen it cant enable forking07:42
SpamapSyou may need some sleep or something.07:42
imbrandonmqybe not from day one, maybe not by me and you but it needs to07:42
imbrandonno07:42
SpamapSWe're already aiming at the stars w/ juju. :)07:42
imbrandon:)'07:43
imbrandonand i just woke up damn you07:43
imbrandonlol07:43
imbrandoni'm just really set on not letting ppl think that old way07:43
imbrandonin anything software eng, not just juju07:43
imbrandonits too wrong and 15 years old07:44
SpamapSWhat old way?07:44
imbrandonthe way i cant get you to seem to even notice i've been talking about a diffrent one for an hour07:44
imbrandonheh07:44
SpamapSis this "have a trunk" vs "there is no trunk" ?07:44
imbrandonlol 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 voice07:46
imbrandon( example is not practical but the idea of night and day )07:46
SpamapSso, we should make juju impervious to color blind users (aka, Solaris admins?)07:47
imbrandoni want new software to fix the real problems , not fix the ones they can and try and control the ones they cant07:47
imbrandonLOL07:47
SpamapSI think I get that07:47
SpamapSYou 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:48
imbrandonhahah07:49
imbrandonright07:49
imbrandonanother reason i'm so adament about it07:49
SpamapSSo there's also such a thing as focus07:49
imbrandonand why we cant force things, that we need to embracce they way it flows and enable THAT way to be bets07:49
imbrandoneven if we dont think it is07:49
imbrandonwe make it the best it could be , and then encpourage others07:49
imbrandonnot say "no" and encourage other07:50
imbrandonSpamapS: 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 yet07:51
imbrandonlike you said to be distruptive takes alot fo work ( to get right )07:51
imbrandonone way to do that is enable EVERYONE even the stuff we dont like07:52
SpamapSThe nice thing about being disruptive though is that you can bet on others saying your idea is worthless for a while. :)07:52
imbrandononce we have critical mass then start making things more ideal07:52
imbrandonheh07:52
SpamapSimbrandon: shotgun approach is not really my cup of tea. I'd like to win over the influencers first.07:52
SpamapSimbrandon: I welcome all with open arms, but I seek out a few key types.07:53
imbrandonsure those key types will be quick to bury you too tho07:53
SpamapSindeed, I want their raw unadulterated feedback07:53
imbrandonlook at the mass exodus over the last 2 years at google07:53
imbrandonand the rewasons for it07:54
imbrandonthey are all the same07:54
SpamapSyeah, it created a nice sucking void that pulled Canonical people into it. ;)07:54
imbrandongoogle was king07:54
imbrandonLOL07:54
SpamapSoh now you're going to tell me google is dead07:54
imbrandonno not dead07:54
SpamapS"was king"07:54
imbrandonbut that they have left room for compatition07:54
SpamapSso has microsoft07:55
imbrandonas in the king got marriwd and has tons of inlaws07:55
imbrandonso maybe the prince wont be the next king, maybe his new nephew in law will07:55
imbrandon:)07:55
imbrandongoogle 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 shit07:56
imbrandonthus the innovators left, quickly07:56
imbrandonand made it very clear as to why07:56
imbrandonhttp://blogs.msdn.com/b/jw_on_tech/archive/2012/03/13/why-i-left-google.aspx07:58
imbrandonnot even quote a month ago07:58
imbrandonSpamapS: ^^ gogo read that whole post07:58
SpamapSmeh I've read enough of the same type of arguments07:59
SpamapSand I think they're wrong frankly07:59
imbrandonno this is from an exac07:59
SpamapSbeing at war means making hard decisions08:00
imbrandonand exec and its personal08:00
imbrandonPublishers 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
SpamapSgoogle was at peace for a long time.. going to war is going to chase off some peace loving folk08:00
imbrandonSpamapS: ok sure, i'll buy into that, but their culture was those ppl08:01
imbrandonif they leave its not google08:01
SpamapSand clinging to that would probably mean death08:01
imbrandonnah, its made them a billion dollar company, trying to force somehting will be theior daeth,. they need to embrace the change08:02
imbrandonlike they would have 10 years ago08:02
SpamapSTaking 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
SpamapSI think this is just their way of embracing change.08:02
SpamapSbut I could be very wrong08:02
SpamapSI am poorly informed, and DEFINITELY bike shedding now08:03
imbrandonpretty sure your wrong on this one08:03
imbrandonhehe08:03
* SpamapS holds up mirror to imbrandon08:03
imbrandonheheh08:03
imbrandonwell he stuff is visable08:03
SpamapSsee anybody else bike shedding back there? ;)08:03
imbrandonlike all the programs that got cut08:03
imbrandonSuddenly, 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:03
imbrandondont tell me they needed the money08:04
imbrandonor investors cared,08:04
imbrandon:)08:04
imbrandonso no google is not dead, far from it, but its about to be a very very diffrent google, and in that respect control is bad08:05
SpamapSseems to me its more about positioning than money08:05
imbrandonoh and the funny thing08:06
imbrandonthis "exec" that left here a month ago and wrote this08:06
imbrandonhe was the exec over the initial dev and launch of G+08:06
imbrandonheh08:07
SpamapSG+ is interesting08:07
SpamapSI'd *rather* all my friends were on there instead of FB08:07
SpamapSbut they're not08:08
SpamapSand might never be :-P08:08
imbrandonheh and if they were all the crap would come too08:08
SpamapSso I toil away w/ 4 social networks (twitter, facebook, google, and linkedin)08:08
imbrandonseee 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
imbrandonwe need to attract those key ppl like you say, but not think we know how it should look when they are done08:09
imbrandonjust enable them along the way to de what they want, only the best way08:10
imbrandonmaybe not our way08:10
imbrandondid you promstrangulate me ?08:11
imbrandonman i just need to get some good voice software that i could code with08:11
imbrandonthat would be fantastic08:11
imbrandonbut whats out there i cant even chat with let alone code with08:12
imbrandonmmmm pure java implmentation of php 5.408:14
imbrandonsexy08:14
imbrandonand faster than the official runtime :)08:14
SpamapSimbrandon: lol that is almost comedy08:15
SpamapSJava whips crappy C code's butt. Film at 1108:15
imbrandonheh, why is that ?08:15
imbrandonLOL08:15
imbrandonthere is jython and jruby too :)08:15
imbrandonbut yea08:15
imbrandoni wonder what php would be like if re-written08:16
imbrandonand without 100000 functions to do everythiong, but more like python with 7408:17
imbrandonbut still keep the same syntax , runtime idiums etc08:17
SpamapSIsn't that hiphop?08:17
imbrandonnah hiphop == php to c converter08:17
imbrandonthen you can compiler the c with g++08:18
imbrandonit just now grew a jit compiler08:18
imbrandonbut its buggy08:18
imbrandonit would look more like django with php syntax08:19
=== fenris is now known as Guest733
imbrandoninfact i what i'm thinking of is exactly that08:19
imbrandondjango with only in php syntax08:19
=== Guest733 is now known as ejat
imbrandonnot php current runtime a whole new one08:19
imbrandonbut same token parser08:20
imbrandonhrm08:20
imbrandonthat might actually be cool08:20
imbrandonand i bet with llvm compilers its pissible now a days witout a bajillion man hours08:20
imbrandonmmmm python with a php tokenizer runtime, that sounds sexy08:21
_mup_Bug #992454 was filed: Charms are not sufficiently tamper proof <juju:New> < https://launchpad.net/bugs/992454 >08:21
SpamapSalright08:22
imbrandoni mean the java php project shows it can be done in very little time08:22
SpamapSI've filed my bug for the night08:22
imbrandon:)08:22
imbrandonfunc init() { http.HandleFunc("/", handler)08:23
imbrandon}08:23
SpamapSalright, sleep time08:24
imbrandonhow fast you think we could make the dev_appengine.py sticking nginx and sdy infront ?08:24
imbrandongnight man08:25
imbrandoni just woke up like 3 hours ago so i'll be up till noon08:25
imbrandonor more08:25
imbrandonsee ya in a few08:25
imbrandonohh before ya go08:25
imbrandonwhere is that test charm08:25
imbrandonfor spdy, i wanna play with it a bit08:25
* imbrandon looks on SpamapS lp branches and hopes08:26
=== almaisan-away is now known as al-maisan
=== al-maisan is now known as almaisan-away
=== CORP\rkather1 is now known as krondor
senior7515hey 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
senior7515any tips ?15:28
SpamapSsenior7515: can you ssh directly to them?15:29
senior7515well… not sure how. juju does not associate any keypar with them on install15:30
senior7515i suppose I can try the debug thing15:30
senior7515lets see15:30
senior7515nope it detects the machine15:30
senior7515it says15:30
senior7515connecting to machine <public dns name>15:31
senior7515then hangs15:31
senior7515soo I suppose status does work, cuz otherwise how would it pick up the dns name15:31
senior7515connection time out15:31
senior7515debug_hooks finished successfully15:31
senior7515that's what it says15:32
SpamapSsenior7515: it associates your ssh key to the machines15:34
SpamapSsenior7515: are you sure status sees the correct DNS name?15:34
SpamapSsenior7515: like, in the AWS console, are the DNS names the same?15:34
senior7515hmm checking.15:35
senior7515probably… where would it make up the names ?15:35
senior7515let me check15:35
senior7515ohh good point…15:36
senior7515why did the juju bootstrap15:36
senior7515picked up the wrong dns name      dunno15:36
senior7515I mean I dont know how else to do it ?15:36
senior7515shouldn't the bootstrap detect that ?15:36
senior7515based on like private ips15:36
senior7515or smth more permanent than the public DNS which is dynamic15:37
SpamapSsenior7515: it doesn't poll amazon15:41
SpamapSsenior7515: shutting down instances like that is not something juju fully supports15:41
SpamapSsenior7515: you can reboot them, but shutting them down is still going to cause issues unfortunately15:42
senior7515ohhh so how does one shut down the instances but keep the configs15:44
senior7515like I need to install some jars on haddop and stuff. compile git repos15:44
senior7515etc.15:44
senior7515soo that takes some time15:44
senior7515I don't necessarily want to shutdown15:44
senior7515errr...15:44
senior7515reboot15:44
senior7515not destroy the environment15:44
senior7515I just want to shutdown while I go home15:44
senior7515and resume in the morning15:44
SpamapSsenior7515: we've been talking about that lately15:45
SpamapSsenior7515: I think shutdowns should be supported somehow15:46
SpamapSsenior7515: perhaps with a "refresh-provider" command or something that goes and re-pulls all the addresses from the provider15:46
senior7515the easiest way would be to install some sort of coordination software15:47
senior7515exactly15:47
senior7515welll on amazon15:48
senior7515i knprivate IP's are not supposed to change for the life of that instance15:48
senior7515so store that instead of the public dns15:48
senior7515and it would work as is for now..15:49
senior7515ok… sooo solution is to terminate and then install again ?15:49
SpamapSsenior7515: but how would you ssh to the private IP? ;)15:51
SpamapSsenior7515: and FYI, I don't believe that private address guarantee extends to shutdown instances15:51
senior7515ohhh ok15:53
senior7515just thinking out loud, should have confirmed before.15:54
senior7515I guess I was thinking private ip is fine within amazon15:54
senior7515i can definitely ssh to 10.*15:54
senior7515from my other machine15:54
SpamapSthe reason I say that is that I'm pretty sure when I shutdown bootstrap, it changes both addresses15:55
senior7515not 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 coast15:55
senior7515ohh got you15:55
SpamapSwhich is why you cannot shutdown node 0 :)15:55
SpamapSwe should actually have some way to fix that15:56
senior7515oh so that's the main problem then haha… I shut all of the services down when I go home15:56
senior7515ok15:56
SpamapSthough perhaps the best way would be to make bootstrap HA and make sure the 'leader' corrects the addresses when it is time.15:56
senior7515hmmm terminating.. instances15:56
SpamapSsenior7515: one thing you  might consider is pre-handling most of that stuff and dropping a big tarball in the charm w/ all the stuff15:57
SpamapSsenior7515: this is actually why I encourage use of packages/PPA's because you can do that fairly easily15:57
senior7515got you… sometimes is more than packages is port numbers, configs, custom software, firewall rules, etc.15:58
senior7515packages in ubuntu is a breeze with apt-get\15:58
SpamapSthat stuff should all be saved in juju config options15:59
SpamapSyou can save them off with 'juju get'15:59
SpamapSactually I wonder if juju get will save the whole of them in the proper yaml format15:59
SpamapSif not, it should15:59
senior7515juju is great so far for 'deploy'16:00
imbrandonSpamapS: and json :)16:08
SpamapSimbrandon: json would not wor16:08
SpamapSk16:08
imbrandon:(16:08
SpamapSbecause juju set only takes yaml16:08
SpamapSimbrandon: patches accepted16:09
SpamapS:)16:09
imbrandonoh right , $whatever app could conert it back i guess16:09
imbrandonhehe16:09
imbrandonspeaking of , you know any good php <--> zk bridges ?16:09
* imbrandon is thinkin of a ui on the bootstrap node16:09
imbrandonwould be kinda cool to do add-unit / remove unit from the web16:11
imbrandonand see some nice bar graphs :)16:11
phschwartzdoes open-port open the local firewall on a node or update the security group to allow for outside access to the port?16:12
imbrandonthe aws security grp firewall16:12
imbrandoniirc16:12
imbrandonno idea on anything else16:12
phschwartzimbrandon: ok, so doesn't touch iptables. TY16:13
imbrandonSpamapS: how can i "force" juju to update its ip info in zk16:13
imbrandonphschwartz: as far as i know thats correct, least thats how its been working on my deploys16:14
imbrandoni KNOW it does the aws security grps, not sure if it does the ufw in addition or nor16:14
imbrandonnot*16:14
SpamapSimbrandon: what you're describing is best done via a REST API.. https://launchpad.net/jrapi16:15
imbrandonSpamapS: yea i figured i'd have to write one tbh16:15
imbrandonthus started lower16:15
imbrandon:)16:15
imbrandondoh twistd16:17
imbrandonbah16:17
imbrandonSpamapS: btw is zk really needed on the client, would be nice to drop some deps on the osx build16:18
SpamapSimbrandon: absolutely16:18
SpamapSits *the only thing* the client does16:18
imbrandonk thiought maybe only bootstrap needed it16:19
SpamapSclient changes ZK16:19
SpamapSagents make ZK true16:19
SpamapSor report errors16:19
imbrandonright but it dont workj like sql where there is only the "server" running remote on the bootstrap16:19
imbrandonand i only need bindings local ?16:20
imbrandontotal zk newb so .... yea16:20
imbrandonmmm this reset interface looks like it could be functional16:21
imbrandonnot a fan of twistd but i could use it untill i got a "roundtuwit" and did it in node or php16:22
imbrandonhrm16:22
=== carif_ is now known as carif
SpamapSimbrandon: well the problem is the C library is included w/ ZK proper16:25
SpamapSimbrandon: don't be silly16:25
SpamapSimbrandon: the REST API will be built into juju. Save your precious time.16:25
SpamapSimbrandon: the twistd jrapi is there as a stop-gap until the real one lands.16:25
imbrandonreally, why complicate it, least a seperate go module i hope16:26
* imbrandon graps the jrapi and to see if it still is working with current juju'16:27
imbrandonoh wait16:29
imbrandonits only a few days16:29
imbrandonold16:29
imbrandonnice16:29
SpamapSimbrandon: the client will be using the REST API when it is done16:31
imbrandonsweet16:31
imbrandonok16:31
* imbrandon hugs SpamapS 16:31
SpamapSso yeah, don't make a 3rd one16:31
SpamapS:)16:31
imbrandonwell i still may just fo that16:31
imbrandonlol16:31
imbrandonj/k16:31
* imbrandon fires up Zend Studio, too much bash, time for some php16:32
imbrandon    def to_yaml( self ):16:33
imbrandon        try:16:33
imbrandon            return( yaml.safe_dump( self.to_dict() ) )16:33
imbrandon        except yaml.YAMLError:16:33
imbrandon            return( None )16:33
imbrandon    def to_json( self, pretty = True ):16:33
imbrandon        args = dict( skipkeys = True )16:33
imbrandon        if pretty:16:33
imbrandon            args["sort_keys"] = True16:33
imbrandon            args["indent"] = 416:33
imbrandon        return( json.dumps( self.to_dict(), **args ) )16:34
imbrandonHAH!16:34
imbrandonwow this code isnt half bad16:36
imbrandonmaybe its django i dont like ... /me hushes before he has to eat a few words16:36
imbrandonok back to my problem tho, SpamapS how can i inform the juju got to refresh its info about the ips of the member nodes16:37
imbrandone.g. i got a webhead or 3 that have changed IP's and juju still thinks they are on the old ones16:38
imbrandonpreferably without invoking any hooks16:39
SpamapSimbrandon: it doesn't have any routines to do that. as I was suggesting, we need something like 'refresh-provider'16:39
imbrandonahh ok16:39
imbrandondident catch that16:39
imbrandonmusta been typing too much16:40
SpamapSand in theory, you would also need to invoke all hooks around that service, and any connected to it16:40
SpamapSbecause they may have consumed private/public address16:40
imbrandonyea, i just manyualy fixed where it filled in the wrong ip16:40
imbrandonfigured id spin a new env up sometime16:40
imbrandonbut trying to put it off as long as possible16:40
imbrandonand atm if i add/remove anythign then the hooks fire and refill in the wrong ips16:41
imbrandon:)16:41
imbrandoni could make the configs read only i guess :)16:42
imbrandonlol16:42
imbrandonohh got me a shiney new email ( just got activated ) you.should.hire@me.com heh16:43
* imbrandon orders some business cards16:43
toothwell done16:46
imbrandon:)16:47
ihashacksniemeyer: you mentioned here "http://irclogs.ubuntu.com/2012/01/20/%23juju.txt" that juju won't survive a reboot with local/LXC19:26
ihashacksIs that still the case? (seems like it is)19:26
SpamapSihashacks: it is19:29
SpamapSihashacks: a few of the daemons don't get started properly on reboot19:29
ihashacksIs manually starting up the containers sufficient or still best to destroy-environment and bootstrap again?19:30
SpamapSihashacks: I believe zookeeper also won't start back up properly19:30
SpamapSihashacks: though you might be able to get it started19:31
ihashackscrap, it was here: https://juju.ubuntu.com/docs/provider-configuration-local.html19:37
ihashacksI need to RTFM better next time. Thanks.19:38
jimbakeradam_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?19:41
mapuI am wondering - performing a 'juju deploy mysql' - my resulting juju status shows "state: start_error"20:03
mapuif I connect directly to the system- I find myql is running20:04
adam_gjimbaker: i haven't had a chance to test yet, sorry20:12
jimbakeradam_g, no worries, just want to make sure this isn't blocking20:12
jimbakerfrom what i could tell, it now works fine in debug-hooks however20:12
adam_gjimbaker: i can try now, where is the branch ?20:12
jimbakeradam_g, lp:~jimbaker/juju/unit-rel-lifecycle-start-invoker20:13
adam_gthanks20:13
jimbakeradam_g, you might also find the new jitsu run-as-hook command useful for triggering relation hooks20:13
adam_gjimbaker: am i wrong in assuming something like this should work: http://paste.ubuntu.com/960962/20:33
jimbakeradam_g, yes20:34
adam_gi'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 B20:34
adam_gspecifically the private-address of A20:34
jimbakeradam_g, you need to specify the remote unit as part of the relation-get20:34
adam_gok20:34
jimbakersince it's different than what the relation hook would imply - and that's on a different relation20:34
jimbakerso pretty easy20:34
adam_gjimbaker: is there a way to resolve the JUJU_REMOTE_UNIT of a relation id?20:35
jimbakeradam_g, you could use relation-list -r relation_id20:35
adam_gjimbaker: ah! exactly what i need. thanks20:36
jimbakeradam_g, i suspect that it might be a nice feature if JUJU_REMOTE_UNIT was simply set that way20:36
jimbakerwhen specifying -r... could definitely change that behavior20:36
adam_gjimbaker: cool, that branch seems to do everything i need.20:41
adam_gfrom debug-hooks at least20:41
jimbakeradam_g, cool!20:41
adam_gthanks for the quick fix20:41
jimbakernp, please tell how it works in practice and what edges we can smooth20:41
adam_gdefinitely20:41
nathwilli'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:16
bkerensaimbrandon: this is going to be my new laptop http://www.slashgear.com/samsung-series-7-gamer-busts-out-ivy-bridge-01225472/21:22
bkerensa:D21:22
bkerensaIt will start shipping to stores for consumers in the last quarter of this year ^ but I get one when I get back from UDS :D21:23
marsHi 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
mars2012-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 client21:26
mars^ my system was just killed with a 45GB logfile containing what was likely the above message.21:26
marsActually, that explains why my laptop has been mysteriously shutting down every night...21:27
marsFWIW, I'm using juju from the PPA.21:30
m_3mars: yeah, that's a problem!  please file a bug on it21:31
marsm_3, yep, doing so now21:31
m_3thanks21:31
jimbakerre the machine log, there was a recent fix for that, but it has not been merged to trunk yet: bug 95831221:47
_mup_Bug #958312: Change zk logging configuration <juju:Fix Released by hazmat> < https://launchpad.net/bugs/958312 >21:47
jimbakerhowever marked fix released as above, so really needs to be merged21:48
jimbakermars, ^^^21:48
_mup_Bug #992887 was filed: machine-agent.log grows after boot until all disk space is used <juju:New> < https://launchpad.net/bugs/992887 >21:51
marsjimbaker, thanks21:51
marsm_3, filed: bug 99288721:51
_mup_Bug #992887: machine-agent.log grows after boot until all disk space is used <juju:New> < https://launchpad.net/bugs/992887 >21:51
m_3mars: cool21:53
marsjimbaker, looks to be the same.  Someone should confirm and dupe the bug I just filed.21:53
SpamapSnathwill: "ip" is not always present, it would need to be set by the other side21:59
SpamapSnathwill: only 'private-address' and 'public-address' are always present in relations21:59
nathwillhrm21:59
nathwillSpamapS: sounds like i should use one of those then22:00
nathwillSpamapS: will can private-address be used for internode comms?22:00
nathwills/will can/can/22:01
SpamapSnathwill: 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 service22:03
nathwillperfect. ty :)22:03
SpamapSnathwill: you might see some older charms doing weird things to get the IP because those values were added later22:07
* SpamapS thinks we should probably go back through the older charms and do some spring cleaning.22:07
nathwillSpamapS: aha. that would explain the confusion...22:07
hazmatugh22:08
_mup_juju/trunk r533 committed by kapil.thangavelu@canonical.com22:10
_mup_[merge][trivial] minimize zk logging, workaround local provider problems with restart, ie. filling disks [r=jimbaker][f=958312]22:10
hazmatjimbaker, yeah.. i totally got on a plane before i committed.. done now22:11
SpamapShazmat: I figured as much. :)22:11
nathwillanyone have time to review bug 991897 ? my first charm attempt...22:15
_mup_Bug #991897: new-charm: vsftpd <new-charm> <Juju Charms Collection:New> < https://launchpad.net/bugs/991897 >22:15
SpamapSnathwill: I'll be reviewing charms later today or early tomorrow22:18
jimbakerhazmat, 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 upon22:18
nathwillSpamapS: cool,thankee22:18
jimbakerso i would call it a trivial22:18
hazmatjimbaker, saw it, it looked good, just haven't had a time to examine it carefully22:21
hazmatjimbaker, i'll do it this evening after we wrap up the sprint22:21
jimbakerhazmat, np22:21
bkerensajcastro: I was just going to ask out of curiosity why you choose dell laptops instead of zareason or system76?22:35
SpamapSbkerensa: perhaps the dell laptops chose jcastro, not the other way around ;)22:40
=== 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

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