[01:18] <roy-feldman> I have software license question regarding charms
[01:19] <roy-feldman> Do charms automatically inherit the AGPL license by calling Juju services?
[01:20] <roy-feldman> Use case 1: I write a charm from scratch
[01:21] <roy-feldman> Use case 2: I write a charm that requires a relation to a charm that has an AGPL license
[01:24] <marcoceppi> roy-feldman: charms can be any license, though if it's to be in the charm store it needs to have an approved OSI Open license
[01:25] <roy-feldman> thanks
[01:26] <marcoceppi> roy-feldman: https://juju.ubuntu.com/Charms#Charm_Inclusion_Policy_for_Reviewers those are the criteria for inclusion
[01:27] <roy-feldman> The issue came up at Crowbar presentation I just attended.
[01:29] <roy-feldman> Do you know if adding a relation to a GPL or AGPL licensed charm trigger the copyleft clause?
[01:29] <marcoceppi> IANAL, but I don't think AGPL's service clause applies in charm relations since technically charms are communicating with the juju bootstrap and not directly to each charm, but not being a lawyer
[01:30] <roy-feldman> That make two of us ;-)
[01:30] <roy-feldman> Thanks Marco
[01:30] <marcoceppi> juju add-relation causes the juju-agent to ping each service individually, and their response is reported to the juju-agent which then passes the information to the other charm and the cycle continues
[01:31] <roy-feldman> Personally, I will publish my charms with a OSI license, but when I talk to business people the issue inevitable comes up
[01:31] <marcoceppi> right, I would check with SpamapS or one of the juju core devs, they are more knowledgeable on things of this nature
[01:32] <marcoceppi> I believe it was designed in a way that mixing charms with different licenses wouldn't be an issue
[01:32] <roy-feldman> Music to my ears
[01:33] <roy-feldman> I am talking to people who are pushing Crowbar, which is comparable to Juju + MaaS
[01:34] <roy-feldman> They jumped on the issue that Juju was AGPL, so I was put on the "backfoot."
[01:36] <roy-feldman> Short of consulting a lawyer,  can you suggest a way to confirm the licensing status of Juju charms?
[01:36] <marcoceppi> Talk to one of the devs, they're all asleep now
[01:37] <roy-feldman> Any suggestions as to which ones?
[01:38] <roy-feldman> jcastro, negronjl?
[01:39] <marcoceppi> SpamapS is knowledgeable with license stuff
[01:45] <roy-feldman> Thanks again
[01:45] <roy-feldman> Ciao
[02:49] <hazmat> charms are any license
[02:49] <hazmat> juju is agpl
[02:50] <hazmat> charms are effectively input outputs to it
[02:50] <hazmat> their is no linking
[02:50] <hazmat> in this context, there is little point to it being agpl.. its effectively gpl
[02:50] <hazmat> hmm.. two charms communicating
[02:51] <hazmat> its not really linking by any common definition.. its basically each charm writing its own file and reading different files.
[02:52] <imbrandon> yea i think of it as each charm is calling anothers public api
[02:52] <imbrandon> in that case its not bound by agpl etc
[02:53] <hazmat> http://www.gnu.org/licenses/gpl-faq.html#GPLOutput
[02:53] <hazmat> that's exactly on point to this topic
[02:55] <hazmat> well the agpl triggers on offering a network service to users
[02:55] <hazmat> in this case its the same user deploying the different charms..
[02:56] <imbrandon> hazmat / SpamapS : you know how --placement was taken but you can still use palcement: local etc etc etc , i was thinking about that , what if ( not littraly ) but as far as juju is concerned the bootstrapped zk node is a charm too so things could become a subordiate of it, like say a 3rd party api or webui or whatever
[02:58] <imbrandon> maybe show up as the juju-info interface
[02:58] <imbrandon> or i dunno , not real well thought out yet
[03:51] <SpamapS> imbrandon: thats the eventual plan.. to make "juju" a charm that is no different than the others, except it is deployed without ZK
[03:58] <SpamapS> woot, juju SRU accepted
[10:40] <vila> hi guys, trying to use juju on quantal I encountered an issue where the /var/log/syslog says 'zookeeper respawning too fast, stopped'
[10:40] <vila> does that ring any bell ?
[10:41] <vila> note that I arrived there because after 'juju bootstrap', 'juju status' couldn't connect to my instance (whereas it succeeded in the same environment with a precise image)
[12:51] <jamespage> vila: that would indicate that zookeeper keeps crashing
[12:51] <jamespage> please can you look in /var/log/zookeeper and see if there are any interesting error messages
[12:51] <vila> jamespage: yup, but if I then connect via ssh , I can 'service start zookeeper'
[12:52] <vila> jamespage: before I start it manually, there is *no* log file there
[12:52] <koolhead11> had anyone faced issue with juju creating massive log
[12:52] <jamespage> vila, you can try but that message comes from upstart trying to restart it
[12:52] <koolhead11> like in few GB
[12:52] <jamespage> koolhead11, I think there is a SRU in progress for that
[12:53] <jamespage> koolhead11,  https://bugs.launchpad.net/juju/+bug/958312
[12:53] <_mup_> Bug #958312: Change zk logging configuration <verification-needed> <juju:Fix Released by hazmat> <juju (Ubuntu):Fix Released> <juju (Ubuntu Precise):Fix Committed> < https://launchpad.net/bugs/958312 >
[12:53] <koolhead11> ooh cool. so i am not the only one who hit this bug. cool
[12:53] <koolhead11> jamespage: awesome.
[12:53] <jamespage> koolhead11, you could verify the fix in -propose if you like
[12:53] <koolhead11> jamespage: i will do that coming week :)
[12:53] <jamespage> vila: does it start OK when you do it by hand?
[12:53] <vila> jamespage: I scp'ed the log files after a juju bootstrap, install went well AFAICS
[12:54] <koolhead11> or can do right away :)
[12:54] <vila> jamespage: 'by hand' == ? (I have always use juju so far ;)
[12:54] <jamespage> gah - I have to duck out for a bit - vila - I'll be back in about 1.5 hours if you can wait...
[12:54] <vila> jamespage: sure, ping me then
[12:55] <koolhead11> jamespage: i was looking for you last week
[12:55] <koolhead11> trying to get hadoop working, ended up using source from there website
[13:39] <jcastro> niemeyer: ah excellent. So much activity that we need another list. mwahaha.
[13:39] <imbrandon> and second project :)
[13:54] <niemeyer> jcastro: Well, the list wasn't really based on activity
[13:54] <niemeyer> jcastro: The project was
[13:54] <niemeyer> jcastro: The list is a division of topics for real
[13:54]  * jcastro nods
[13:54] <niemeyer> jcastro: Most people interested in using juju would be extremely bored with the topics we've been debating around the port
[16:14] <jcastro> SpamapS: so I just saw mhall119's django generating charm
[16:14] <jcastro> thing
[16:14] <negronjl> 'morning
[16:14] <jcastro> it's basically awesome.
[16:21] <SpamapS> sweet
[16:21] <SpamapS> wait, mhall did that?
[16:21] <SpamapS> I thought somebody else did one
[16:21] <imbrandon> yea there are like 3, but mhall119 is the best so far imho
[16:24]  * mhall119 will do a writeup on it
[16:25] <mhall119> first I need to change it's name
[16:25] <mhall119> and create an LP project
[16:36] <SpamapS> mhall119: its that big?
[16:36] <SpamapS> mhall119: would you consider folding it into charm-tools?
[16:37] <mhall119> SpamapS: it adds on to Django
[16:37] <mhall119> like,  it's a django app you have to add to your project
[16:38] <jcastro> SpamapS: reminder ping on cloudopen CFP
[16:39] <SpamapS> jcastro: I submitted to cloudopen 2 days ago
[16:39] <SpamapS> jcastro: what I'm not sure about is the AWS conference
[16:39] <jcastro> <3
[16:39] <SpamapS> mhall119: can you take me through the workflow?
[16:40] <mhall119> SpamapS: sure
[16:40] <mhall119> first, you get the code: https://launchpad.net/naguine
[16:41] <mhall119> it's a django app, you can  either branch it locally into your Django project directory, or (when I build it) install it system-wide as a package
[16:41] <mhall119> then, in your django project,  you run "python manage.py charm --settings naguine"
[16:41] <mhall119> and it spits out your new charm into ./charms/precise/<project_name>/
[16:43] <mhall119> then you check it for missing dependencies, and add any custom actions you need to install, and also anything custom to do on db-relation-changed
[16:44] <imbrandon> sounds perfect for charm tools :)
[16:45] <jcastro> charm create django ./myapp ?
[16:46] <imbrandon> :)
[16:47] <imbrandon> i bet i could wrangle a php version of the same thing to spit out a skeleton symphony2 php-app , could be the basis for some of those defaults we talked about , in any case i do think mhall119's would make a great addition to charm-tools
[16:48] <imbrandon> using composer.phar  to do the dependancy stuff
[16:49] <SpamapS> mhall119: yeah, this should be in charm tools unless you are just against giving up control of it to the whole of ~charmers
[16:50] <SpamapS> mhall119: basically 'charm create --django yourapp'
[16:50] <SpamapS> mhall119: I'm worried about exploding the ecosystem with many many projects and names and such, so if you'd consider moving it into charm-tools.. I'd consider giving you a gold star sticker. ;)
[16:50] <shazzner> quick question: is there a drupal charm for precise? it seems like work was started them stopped
[16:50] <marcoceppi> +1 charm tools
[16:50] <shazzner> *then
[16:50] <SpamapS> shazzner: poke imbrandon
[16:51] <imbrandon> mhall119: the cake is a like i dident get the last gold sticker
[16:51] <SpamapS> shazzner: he's been sitting on my review comments for about a month :)
[16:51] <imbrandon> shazzner: i'm on it, actually i was gettting raely to upload it today
[16:51] <shazzner> ok cool :)
[16:51] <SpamapS> if you contribute
[16:51] <SpamapS> to charm tools
[16:51] <SpamapS> you will have cake
[16:51] <imbrandon> SpamapS: cuz i went to 7
[16:51] <SpamapS> there is cake for drupal charmers
[16:51] <imbrandon> heh cake is a lie
[16:52] <shazzner> I was thinking of creating a drupal theme sub-charm
[16:52] <imbrandon> shazzner: no, for real though , i'd welcome any help etc etc but i'm getting ready to push a big update to it later today, got a little busy post-uds
[16:52] <imbrandon> shazzner: perfect
[16:52] <shazzner> we'll see I don't know I've been slacking
[16:53] <shazzner> imbrandon: cool :)
[16:53] <imbrandon> shazzner: i can show you the interfaces, its made to accept themes and plugins from a seperate charm
[16:53] <SpamapS> imbrandon: the 6 one was *SO* close
[16:53] <shazzner> imbrandon: awesome, probably just point me to the lp directory
[16:53] <imbrandon> SpamapS: i finisied it too
[16:53] <SpamapS> so where is it?
[16:54] <imbrandon> github till i get em both done
[16:54] <imbrandon> :)

[16:54] <shazzner> haha
[16:54]  * SpamapS goes back to bug traiage
[16:54] <imbrandon> heh
[16:55] <imbrandon> shazzner: just watch the ~drupal namespace, i renamed the druapal 6 one to cs:precise/drupal6 and the 7 one will be the drupal one
[16:55] <mhall119> SpamapS: marcoceppi: I'd be happy to get it into charm-tools if you guys can help me
[16:55] <imbrandon> should be pushed here in just a few hours max, likely sooner
[16:55] <shazzner> imbrandon: ok awesome
[16:55] <mhall119> the problem is that it needs to be run by django, using the same environment as django
[16:55] <shazzner> thanks for the quick reply :)
[16:55] <mhall119> which often means inside a virtualenv somewhere
[16:56] <imbrandon> np, email me anytime if i'm not on irc
[16:56] <imbrandon> <-- @ubutnu.com
[16:56] <imbrandon> bah, but spelled right
[16:58] <imbrandon> shazzner: btw if your sub charm looks for a webroot interface on the local container relation that will give you the base drupal install
[16:58] <imbrandon> so you can dump things in say webroot/sites/all/{themes,libraries,modules/contrib,modules/custom}
[16:58] <imbrandon> etc
[16:59]  * shazzner writing this all down
[17:01] <SpamapS> mhall119: thats no problem I think
[17:02] <SpamapS> mhall119: We can make 'charm create' do anything to bootstrap the point where you pull in your django app and run the necessary bits to spit out the charm.
[17:02] <SpamapS> We should perhaps do the same thing with rails in parallel so we abstract at the right level
[17:09] <marcoceppi> SpamapS: good idea
[17:12] <SpamapS> like maybe it should be '--framework django --app /path/to/my/django/app'
[17:13] <SpamapS> and then we can have an alias for that which is 'charm create-django /path/to/my/django/app'
[17:13] <mhall119> you'll want an optional --python /path/to/executable/for/python
[17:13] <imbrandon> charm create webapp --framework djgano .....
[17:13] <SpamapS> mhall119: perhaps there should be a bootstrap.sh or virtualenv.sh in the dir that is automatically run ?
[17:14] <SpamapS> mhall119: seems like there should be a convention for that
[17:14] <mhall119> most likely they will already have a local environment setup
[17:15] <imbrandon> with php there is composer.phar that is run from the dir that has packages.json to do the same type of thing
[17:15] <mhall119> all the webapp frameworks and languages are so different, do we gain much by trying to make a single "webapp" target?
[17:16] <imbrandon> sure, i think thats what makes it perfect for abstration
[17:17] <imbrandon> take the hard bits and make it all uniform , i mean we're mostly talking about spitting out skeletons anyhow
[17:17] <imbrandon> for someone to build on, not complete apps
[17:18] <imbrandon> Pylons RoR Django Symphony2 ZF2 Drupal Wordpress ... etc
[17:18] <mhall119> pretty complete skeletons in my case
[17:18] <SpamapS> mhall119: they have different mechanics, but they all have the same concepts which can lead to a rich charm. settings, dependencies, etc.
[17:19] <imbrandon> mhall119: :)
[17:19] <SpamapS> mhall119: you don't need to worry about that though. I'm just suggesting that we should abstract properly so nobody has to duplicate the same process when we add rails, symfony, etc. etc.
[17:20] <mhall119> right well, if somebody is going to take on this task, I'll help make the Django part work, but it's more than I'm going to be able to do myself
[17:20] <SpamapS> mhall119: there is huge value for a sysadmin to be able to take their process knowledge of charming one type of app, and be able to map it to another framework entirely. HUGE value.
[17:21] <mhall119> sysadmins will be doing this? not app developers
[17:21] <mhall119> ?
[17:22] <imbrandon> devops
[17:29] <jcastro> imbrandon: SpamapS: hey you guys wanna get together later on G+ to talk debian and RPMs? Or do you prefer to head down and skate?
[17:31] <imbrandon> i'm good either way
[17:34] <SpamapS> mhall119: well I'd hope that devs and ops would take equal responsibility
[17:34] <SpamapS> mhall119: so if the dev knows juju, she does it, and if the ops knows juju, she does it.. ;)
[17:35] <SpamapS> jcastro: I'm actually downloading a Debian iso so I can test juju + local provider right now
[17:44] <_mup_> Bug #1007544 was filed: test suite assumes /etc/lsb-release will exist <patch> <juju:New> < https://launchpad.net/bugs/1007544 >
[18:15] <SpamapS> crap.. just realized.. local provider won't work on Debian
[18:15] <SpamapS> since its tied to uptstrat
[18:16] <SpamapS> upstart even
[18:16] <SpamapS> ok, so its EC2 only.. oh well
[18:17] <imbrandon> whats tied to upstart ? cloud-init ?
[18:17] <SpamapS> everything ;)
[18:17] <SpamapS> machine agent
[18:17] <SpamapS> provider agent
[18:17] <SpamapS> unit agaents
[18:17] <imbrandon> upstarts packaged for debian isnt it ?
[18:20] <SpamapS> sort of
[18:20] <SpamapS> its not really usable
[18:20] <SpamapS> nor is it allowed for packages to embed .upstart files along side .init files
[18:20] <SpamapS> pretty much useless
[18:21] <hazmat> well we don't  have it in packages
[18:21] <hazmat> we generate them and drop them on disk during initialization
[18:21] <hazmat> as long as we have cloud-init we can parameterize the startup stuff as needed
[18:21] <hazmat> oh.. local provider..
[18:22] <hazmat> SpamapS, is cloudinit in debian?
[18:22] <hazmat> yeah.. same principle there.. what's the default/recommended init sys for deb?
[18:22] <SpamapS> interesting..
[18:22] <SpamapS> debian has invalid certs
[18:22] <SpamapS> hazmat: its going into debian, at some point soon
[18:22] <hazmat> are they going down the sysd, or are they still doing the old sysv  jaunx
[18:23] <SpamapS> debian is going down the path of most insanity IMO
[18:23] <SpamapS> "we'll have ALL init daemons"
[18:23] <SpamapS> choose your own adventure, if you will
[18:23] <hazmat> SpamapS, but packages can't support more than one init sys?
[18:23] <SpamapS> hazmat: that policy is about to change
[18:24] <SpamapS> hazmat: steve langasek has been working on it for some time, and I've been promising to help him at some point too ;)
[18:25] <shazzner`> huh
[18:25] <shazzner`> erc is being weird
[18:27] <SpamapS> damn, txaws bug
[18:27] <SpamapS> this seems a bit evil
[18:28] <SpamapS> it defaults to reading *.pem from the cwd
[18:28] <SpamapS> with no warning
[18:28] <SpamapS> like "you are running from a dir owned not by you... you may be trusting an evil .pem"
[18:29] <SpamapS> ok well juju in Debian works fine for EC2
[18:29]  * SpamapS uploads
[18:33] <hazmat> SpamapS, the new txaws in trunk.. is a bit borked imo
[18:33] <SpamapS> hazmat: whats broken?
[18:34] <hazmat> its basically throwing deprecation warnings on its own internal usage.. so if you use the only available std api, you can get hit with deprecation warnings with no recourse to fix
[18:34] <SpamapS> hazmat: half-done transition?
[18:35] <hazmat> SpamapS, appears so.. i haven't really dug into it.. outside to identify the rev.... 147 afaicr
[18:35]  * hazmat disappears in a puff of busy
[22:11] <mhall119> SpamapS: marcoceppi: if you guys are interested http://mhall119.com/2012/06/charming-django-with-naguine/
[22:11] <SpamapS> mhall119: nice
[22:12]  * SpamapS skims.. likes.. reads more
[22:16]  * SpamapS fixes last lintian warning in juju package and hopefully does one final sbuild
[22:18] <hazmat> mhall119, sounds like the making of a good generic django charm ;-)
[22:20] <mhall119> hazmat: nope
[22:20] <mhall119> I was very intentionally not making a generic charm
[22:21] <hazmat> mhall119, i remember, just teasing
[22:21] <mhall119> ah :)
[22:22] <hazmat> jcastro, what do you use for doing screencasts?
[22:22] <jcastro> recordmydesktop
[22:23] <jcastro> hazmat: http://askubuntu.com/a/4433/235
[22:23] <hazmat> jcastro, danke
[22:24] <SpamapS> Alright, juju 0.5+bzr539 uploaded to Debian
[22:24] <jcastro> \o/
[22:24] <SpamapS> will sit in NEW queue for probably a week
[22:24] <SpamapS> HEY .. juju users.. there's a juju version in precise-proposed
[22:24] <SpamapS> PLEASE TEST
[22:24] <hazmat> SpamapS, did you test it? ;-)
[22:25] <SpamapS> hazmat: extensively actually
[22:25] <SpamapS> hazmat: local does not work, but ec2 does
[22:25] <hazmat> SpamapS, awesome.. i think i hit a regression somewhere
[22:25] <SpamapS> hazmat: local could be made to work if we rip out the upstart bits
[22:25] <hazmat> SpamapS, upstart bits?
[22:25] <SpamapS> yes, the machine agent running on bootstrap
[22:25] <hazmat> SpamapS, or just finish the upstartification ?
[22:26] <hazmat> SpamapS, got a minute for a g+?
[22:26] <SpamapS> If we want local to work on non-Ubuntu platforms, we're going to have to abstract upstart completely
[22:26] <SpamapS> hazmat: cerrtainly
[22:27] <hazmat> SpamapS, jcastro invites out
[22:37] <marcoceppi> mhall119: nice!
[22:56] <SpamapS> hazmat: FYI, the proposed source bootstraps ok. Deploying stuff now
[23:14] <negronjl> done for the day ... enjoy your weekend everyone.
[23:20] <hazmat> SpamapS, hmm.. cool
[23:21] <hazmat> negronjl, have a good one
[23:26] <SpamapS> hazmat: ahh, local provider is broken
[23:29] <SpamapS>     elif [ $JUJU_ORIGIN = "proposed"]; then
[23:29] <SpamapS> missing a space
[23:29]  * SpamapS wonders if shell code even cares that it just made him curse
[23:30] <SpamapS> shell code don't care. shell code don't give a F***
[23:34] <_mup_> Bug #1007657 was filed: proposed origin does not work with local provider <juju:New> < https://launchpad.net/bugs/1007657 >
[23:46] <SpamapS> alright, brain officially melted.. will have to solve that on Monday