#juju 2012-07-09
<SpamapS> imbrandon: thats fantastic news about newrelic!
<lifeless> SpamapS: what news?
<imbrandon> lifeless: http://www.brandonholtsclaw.com/blog/2012/free-newrelic-for-aws-and-azure/
<imbrandon> dude, like tons of VIPs showing up tonight at the downtown ( smaller ) airport :)
 * imbrandon forgot the All Star game is only a day away, heh
<SpamapS> lifeless: newrelic is a really nice example of a perfect subordinate charm. Just piggy backs onto PHP and/or others and makes it better
<SpamapS> well.. measures it better anyway :)
 * SpamapS is biased since they gave him a t-shirt :)
 * SpamapS is trying out install roundcube from EPEL on a CentOS 6 box just to see how much more annoying the old way is than juju deploy roundcube
<imbrandon> heh i have a t-shirt AND a book :) heh
<imbrandon> they gave away "the lean startup" too at one time
<imbrandon> ugh rpms'
<imbrandon> SpamapS: you see this ? http://cl.ly/Htjg
<imbrandon> ^^ my next blog-post will be featuring that i think
<lifeless> SpamapS: I knew what it was, didn't know it was made into a subordinate yet ;)
<imbrandon> ahh yea, that was like the firast sub i made, like the day they landed
<imbrandon> first*
<SpamapS> lifeless: both the generic system monitor and the php version are in the official list and maintained by imbrandon :)
<SpamapS> imbrandon: VERY nice on the installer
<imbrandon> :)
<lifeless> imbrandon: NICE
<lifeless> bah
<lifeless> nice.
<lifeless> ECAPSLOCK
<imbrandon> nice and tidy too, at under 100k uncompressed
<imbrandon> :)
<imbrandon> https://github.com/downloads/jujutools/jujutools.github.com/Install%20juju.zip
<SpamapS> Hrm ok why won't dovecot log my auth failures.. :-/
<lifeless> its not in authlog ?
<imbrandon> can go binarys be staticly linked ?
<imbrandon> e.g. if i was to redo that installer ( less than 100 loc ) in go, could i staticly link the binary so that i dont need to ensure the go runtime is on the osx box ?
<lifeless> wrong question
<lifeless> 'can go use shared libraries' - yes, if you try hard.
<imbrandon> hrm ok i'll bite
<imbrandon> hum not sure i follow worded like that but ok /me digs a little
<lifeless> its modelled after Google deployment requirements, which is single monolithic blob with no floating dependencies, to permit fine grained 'what rev was involved' in diagnosing failures.
<imbrandon> ahh i think i see now
<lifeless> opinions vary on whether this is a good thing or a bad thing.
<imbrandon> yea i'm thinking before i unleash it on the masses that python or go will be the way , the main reason i had waited a few days is its in umm ... php now :)
<lifeless> Its certainly very different to the general move to shared everything in the Linux space over the last 20 years ;)
<imbrandon> ya but very similar to the apple world
<imbrandon> thats how all apps are on apple, well 90% of them
<imbrandon> everything needed to run the app, even full ruby or python runtimes are in the .app
<imbrandon> they CAN use the system version but to be included in like the App store, the app must include even the runtime
<lifeless> yah
<imbrandon> even python apps etc, so its very normal there
<lifeless> the linux world has been building up the value of the distro
<lifeless> for security fixes etc
<imbrandon> yea
<lifeless> app stores push that back on the vendor, not the distributor
<imbrandon> i totaly see both sides, has ups and downs
<lifeless> I don't think any distro has really understood that yet, not at a deep level
<imbrandon> yea
<imbrandon> a .app like thing for linux would be kinda cool
<imbrandon> infact i think the .app spec its self actually can work
<imbrandon> ala gnustep
<imbrandon> iirc
<imbrandon> just not done much
<imbrandon> on apple it really shows with MacRuby, as there are alot of app store apps that use it
<imbrandon> nice thing is its lightning fast compared to the normal ruby runtime tho so its a nice target VS learning ObjectiveC + coca
<imbrandon> but its like 100+mb added to the .app
<imbrandon> heh
<imbrandon> ok, so back to the go, your saying that is the norm ?
<imbrandon> lifeless: ^
<lifeless> yes
<lifeless> but not 100mb :P
<imbrandon> ahh :) nice ok that will make it easy then
<lifeless> its a bit stronger than norm in fact
<lifeless> as far as I know there still aren't shared libraries for go components themselves.
<imbrandon> cool, i like that idea
<lifeless> but IMBW, if you use gccgo for instance
<imbrandon> yea i noticed there was a gccgo infatc the newest XCode ( preview version for 10.8 ) has support for it
<imbrandon> not looked into it tho
<imbrandon> well this might be a good dip my toe in go then, since its likely to be a) used by others so i'll get feedback and b) its less than 100 loc in PHP so its a small project
<imbrandon> i could always go hipster and write it in node :) hahaha
 * imbrandon sticks with go 
<imbrandon> so ... func add(x int, y int) int { ...
<imbrandon> the last int is the returned type ?
<imbrandon> wtf is :=
<imbrandon> oh wow, this si going to be intresting ...
<imbrandon> mmm gobomb
<imbrandon> func main() { for { }
<imbrandon> }
<imbrandon> Goose! I feel the need, the need for speed ...
<imbrandon> deb https://region-a.geo-1.objects.hpcloudsvc.com/v1.0/73450381287323/mirror quantal main restricted universe multiverse
<imbrandon> :)
<imbrandon> holly crap golang is hard to read, i thought that was one of the goals was to make the source readable
<imbrandon> jcastro: btw i'm fairly certain the disk io is crap ...
<imbrandon> # time ./mnt/scripts/mirror.sh
<imbrandon> real    95m45.364s
<imbrandon> user    0m30.710s
<imbrandon> sys     2m14.328s
<SpamapS> yaaay selinux just wasted another hour of mine
 * SpamapS wonders if its worth knowing how annoying it is to run his IMAP server on CentOS
<imbrandon> heh apt-get purge selinux && apt-get purge apparmor
<imbrandon> ?
<SpamapS> CentOS
<imbrandon> doh
<imbrandon> rm -rf /
<SpamapS> And I want to use it "as it is intended"
<imbrandon> :)
<SpamapS> more about learning than having a rocking IMAP server
<imbrandon> i hear ya
<imbrandon> still sux
<imbrandon> heh
<SpamapS> selinux is denying roundcube (apache) from connecting to port 143 on ::1 and 127.0.0.1
<imbrandon> nice, use a 192 class a on a diff interface ?
<imbrandon> oh and yea go is nogo for the installer, i started the boilerplate code and its more than the whole app is currently
<SpamapS> it has nothing to do with the IP
<SpamapS> apache is not allowed connect() at all
<imbrandon> oh nice
<SpamapS> well I take that back, its allowed 3306
<imbrandon> nothing below 1024 likely
<imbrandon> dude, btw you see the 95m real above ?
<SpamapS> or it may be dovecot protecting itself.. I can't tell yet because I don't understand selinux
<SpamapS> do people even bother leaving it on?
<imbrandon> i dont
<imbrandon> honestly
<SpamapS> AppArmor is prety straight forward
<imbrandon> i figure thats what firewals are for, if there is malicious code ON my box, i'm already hosed
<SpamapS> it squawks, you edit /etc/apparmor.d/something .. you move on
<SpamapS> imbrandon: well thats a weak security model you're talking about, but as long as you accept that its fine
<SpamapS> imbrandon: defense in depth requires that there be something beyond firewalls
<imbrandon> well yea, but i dont run un sandboxed code either
<imbrandon> there is more to it, but i find selinux more a pita than a help
<imbrandon> as long as the other bits are in place
<SpamapS> imbrandon: Yeah, PITA security is no security because it gets turned off
<SpamapS> which selinux is about to here
<imbrandon> right, esp with mail servers, should be no running of code there anyhow
<imbrandon> external that is
<SpamapS> Its a webmail server
<SpamapS> and procmail runs some gnarly stuff for me there too :)
<imbrandon> php-fpm is designed to run as a user
<imbrandon> unlike before mod_php
<imbrandon> so the web part is safe(er)
<imbrandon> now procmail hehe
<SpamapS> hrm yeah
<SpamapS> not realy tho
<SpamapS> mod_php never runs as root
<SpamapS> so that bit is equal
<imbrandon> right but it runs as www-data
<imbrandon> and alot of times thats got far more permissions that a dedicated php user
<SpamapS> thats pretty weak
<imbrandon> its the falling point of many shared php setups :)
<SpamapS> I see your point, but its really not a big deal or a reason to use fpm
<SpamapS> shared PHP is the failing point of many shared php setups
<imbrandon> hahaha true
<SpamapS> in this day and age with several container technologies available...
<imbrandon> yea, seriously :)
<imbrandon> i just learned today that you can embed perl code into the nginx.conf files ... my wheels been spining on that one
<imbrandon> suprised its not uses/abused more
<imbrandon> used*
<imbrandon> well perl or lua, but i never really _got_ lua, maybe because thats what World of Warcraft UI and addon's are coded in ( lua )
<imbrandon> SpamapS: ok if you wanted to in the simplest but fairly foolproof way to execute a shell script , wait for it to exit, then goto 10 ( e.g. loop continusly ) , what comes to mind, a small python wrapper mainloop run my upstart or ...
 * imbrandon is drawning a blank but seems like this should be fairly simple
<SpamapS> huh?
<imbrandon> i want to exe a shell script over and over
<imbrandon> but not before the last exe stops
<imbrandon> run , wait for exit, run wait for exit, etc etc etc
<SpamapS> while script ; do true ; done
<imbrandon> hrm, yea see told ya i was being dumb
<SpamapS> maybe do sleep 0.1 to keep it from going berzerk
<imbrandon> right in front of me
<imbrandon> heh yea
<SpamapS> oh man
<SpamapS> berzerk
<SpamapS> just had an atari flashbac
<imbrandon> hahaha
<imbrandon> i LOVE that game, demon attack too
<imbrandon> i can hear the little dudes lazers
<imbrandon> dont hit the walls :)
<imbrandon> dude your old ... hahaha j/k
<SpamapS> yeah I'm old and I need to go to bed
<SpamapS> but this is pissing me off
<imbrandon> :)
 * SpamapS gives up and reboots with selinux disabled
<SpamapS> well that fixes basically everything
<imbrandon> hah
<SpamapS> *arg*
<SpamapS> damn, except roundcube
<imbrandon> heh
<SpamapS> helps if you start the imap service
<imbrandon> find a rails webmail ?
<imbrandon> lol
 * imbrandon runs
<SpamapS> roundcube is great
<SpamapS> I found it a while ago
<imbrandon> yea it actually is, i used it use it pre gmail
<imbrandon> very slick ui
<SpamapS> I need webmail about once every 6 months
<imbrandon> damn google owns everything ... heh
<SpamapS> sup takes care of me otherwise
<imbrandon> yea i use Sparrow or gmail web ui , more sparrow than gmail until reciently
<imbrandon> no sparrow for Ubuntu :(
<SpamapS> Keeping email in console has kept me more focused with it
<SpamapS> less shiny things
<imbrandon> yea i tried mutt a while back, then quickly went to pine/alpine ... then back to sparrow
<imbrandon> sparrow is like iOS mail for the desktop, so its real sparce but great for multi accounts/unified inbox
<SpamapS> sup is what you'd get if you married mutt to gmail
<imbrandon> hehe :)
<imbrandon> i never got used to the keybindings, kept doing crap wrong when i just wanted to write a email
<imbrandon> heh
<imbrandon> ( in mutt )
<imbrandon> pine worked out well due to the same keybindings as pico/nano
<imbrandon> already muscle memory
<SpamapS> sup has the gmail keybindings
<SpamapS> but
<SpamapS> its author has bailed
<imbrandon> but no inline attachments and such kinda sucked for me, i get alot of screenshots and ui mockups in email
<SpamapS> and there's no fork/resurrection
<SpamapS> yeah if I didn't anything visual I'd probably go insane w/ sup
<imbrandon> its ok if there is like 1 per email, but that never works out in reality
<SpamapS> wow finally I think I can turn off my old centos 5 Xen after 6 months of procrastinating
<imbrandon> heh
<imbrandon> SpamapS: http://cl.ly/HwVE sparrow
<SpamapS> looks very busy
<SpamapS> I liked apple's regular mail client actually
<SpamapS> I feel like Thunderbird has just been driving more toward working like it for the last year
<imbrandon> its not good at multi account unified inbox, but actually apples iOS client is
<imbrandon> and sparrow takes after that
<imbrandon> also the faces and color coding is nice, but thats avail in the gmail web ui too
<imbrandon> SpamapS: yea , alot of that too is i get ALOT of email , so its hard not to be busy
<imbrandon> looking
<SpamapS> I have about 4000 unread, unkilled emails right now
<SpamapS> and I intend to 0 it all by noon tomorrow :)
<imbrandon> ouch
<imbrandon> i try to keep my inbox at 0 , the rest 0 be weeks end or they get killed
<SpamapS> Yeah I got way behind last week
<SpamapS> but sup is pretty damn efficient
<SpamapS> so I expect I'll kill 75% of those threads quickly
<imbrandon> :)
<SpamapS> ok, not sleeping now would be foolish
 * SpamapS bids the internets adue
<imbrandon> gnight
<jamespage> morning all!
<imbrandon> mornin :P
<jamespage> jcastro, video of juju talk at europython now up - http://www.youtube.com/watch?v=HlGDP92dlfY
<imbrandon> ohhh /me goes to peep it out
<jamespage> imbrandon, enjoy my accent :-)
<imbrandon> :) cant be worse than mine when excited heh
<imbrandon> jamespage: btw you may like this, looks similar to what your using http://bholtsclaw.github.com/html5slides/templates/ubuntu/index.html
<imbrandon> hahaha and i wrote the php one ( just got to that part ) :P
<jamespage> imbrandon, nice
<jamespage> I know who to blame now :-)
<imbrandon> :)
<imbrandon> jamespage: http://bazaar.launchpad.net/~imbrandon/charms/precise/nginx/trunk/view/head:/hooks/lib/install
 * jamespage shudders
<jamespage> lol
<imbrandon> heh
<imbrandon> :)
<imbrandon> is quite nice once abstrated like that heh
<jamespage> reminds me - I'm mid review on that one
<jamespage> must complete this week
<imbrandon> :) i just merged the only other thing that was in the queue
<imbrandon> a few minutes ago
<imbrandon> jamespage: btw if you did not see http://www.brandonholtsclaw.com/blog/2012/free-newrelic-for-aws-and-azure/
<jamespage> imbrandon, just ready
<imbrandon> cool, okies foooooood brb :)
<jcastro> adam_g: whoa cool, new incoming charm, RIAK!
<jcastro> adam_g: it's your week this week btw.
<SpamapS> Mmmmm Riak
<jimbaker> the riak charm looks nice; curiously in the juju tests, riak is the standard peer service we use there (all dummy of course)
<SpamapS> I'd be willing to bet that juju's peer relations are not sufficient to do it fully automatic
<SpamapS> without some kind of "leader" election ability, it just doesn't work.
<jimbaker> SpamapS, agreed, really need to add that functionality
<SpamapS> ceph suffers from this too
<jimbaker> almost having it is sadly not sufficient
<hazmat> hmm.. not sure if riak needs that
<SpamapS> the only answer is to deploy the first node as one service, and then a second service for all the rest
<hazmat> i ended up using riak in the tests for all peers, because its nice
<jcastro> hazmat: you're back at work this week?
<hazmat> jcastro, i am
<SpamapS> hazmat: does it have its own ability to sort out which of the known nodes bootstraps the data store?
<jcastro> hazmat: excellent ... hey so .... openstack provider ... *whistles*
<jimbaker> hazmat, riak does its own leader election (or otherwise just works)?
<hazmat> jcastro, its also our first upstream nosql charming
<jcastro> yep, I noticed that too
<jcastro> hopefully the review goes smooth and I can send them shirts soon. :)
<jcastro> looks like they don't have an https source either. :-/
<hazmat> SpamapS, as long as they all agree on the ring name and know each others addresses
<hazmat> SpamapS, dunno
<jimbaker> jcastro, my only concern when i looked at the codebase is that the readme.md was really just a stub
<jimbaker> but i didn't do a full review
<SpamapS> hazmat: the problem I've run into with a few of the services is that they need a few bootstrap things to happen only one time...
<SpamapS> hazmat: the only answer has been to just not add-unit until that is done.
<jimbaker> SpamapS, which is not a very good answer
<SpamapS> agreed
<SpamapS> with the MPI charm I tried to make, I just have a 'master' service and 'slave' service.
<SpamapS> and I think I'll do the same w/ ceph
<SpamapS> it works, but it sucks because it makes that one special
<jcastro> hazmat: hey so ... openstack provider. :)
<hazmat> jcastro, virtual sprint atm
<hazmat> jcastro, but noted
<jcastro> hazmat: ah ok, no worries then
<bkerensa> jimbaker: looking forward to your talk next week :)
<jimbaker> bkerensa, thanks :)
<jimbaker> are you a jython user by chance? or simply curious about the capabilities of the jvm?
<bkerensa> jimbaker: simply curious :)
<jimbaker> bkerensa, sounds good to me!
<negronjl> 'morning all
<jimbaker> negronjl, good morning!
<negronjl> jimbaker: 'morning
<jcastro> hey so is the verbosity of the ec2 and s3 api calls being not authenticated necessary?
<jcastro> jamespage: etherpad-lite works great, thanks for the look.
<jcastro> I think I'm going to demo this one
<benji> Hey all.  I found the "ubuntu" charm very helpful for a project I'm working on, but not having it available in the charm store is a bummer.  Any chance of getting it back in there?
<jcastro> benji: it's a problem with the store, someone is investigating, but yeah, I find that I would love to use it more and more
<SpamapS> jcastro: its a bit more verbose than it should be. There's an open bug to resolve that..
<jcastro> benji: it's like a great "I need an ubuntu server now" command
<benji> jcastro: exactly; we're using it to run integration tests for some software that wants to make system changes and it is great to be able to conjure up a fresh box to run them on
<SpamapS> jcastro: bug 1012497
<_mup_> Bug #1012497: Juju should only give security warnings on bootstrap <security> <juju:Confirmed> < https://launchpad.net/bugs/1012497 >
<jcastro> SpamapS: taa
<jcastro> SpamapS: yeah I am just concerned during demos it spams the console
<SpamapS> jcastro: it only does that when you're doing things unsafely
<jcastro> I am doing things default-y
<SpamapS> jcastro: and I hope in the Go version we'll change the default of ssl-hostname-verification from false to true.
<jcastro> unless I am missing something in my config?
<SpamapS> perhaps even in pyju since we're moving toward "0.6"
<SpamapS> jcastro: if you create a new environments.yaml, it adds 'ssl-hostname-verification: true'
<SpamapS> jcastro: and yes you have forgotten to specify ssl-hostname-verification. :)
<jcastro> wow, you sent the mail in april
<jcastro> I've been bad
<SpamapS> jcastro: it should have been accompanied by a docs update. I don't know that the docs even have ssl-hostname-verification mentioned
<jcastro> nope
<jcastro> it does not according to a google search
<jimbaker> and not in docs source
<jimbaker> yes, that definitely would be a good thing to add
<SpamapS> jcastro: done. r53 :)
<SpamapS> and fixed formatting, r54 ;)
<jcastro> ok so I made a new juju video
<jcastro> that is easy and explains what we are
<jcastro> chopping it up now and editing it ....
<SpamapS> we
<SpamapS> are
<SpamapS> SPARTA!!!!!!!
<jimbaker> that's quite the image i now have for the new juju video ;)
<cereal_bars> hi all, am I the only one with issues with the css on juju.ubuntu.com?
<cereal_bars> http://d.pr/i/B4zv http://d.pr/i/iove
<SpamapS> no
<SpamapS> its under investigation
<SpamapS> cereal_bars: ^
<cereal_bars> aok, great :)
<robbiew> SpamapS: hazmat: so with jitsu+juju+maas, is it possible to deploy a service to the bootstrap node...or does that cause a paradox thrusting me back in time
<SpamapS> robbiew: I think the deploy-to command hazmat wrote can do that
<robbiew> SpamapS: yeah, I mean I used it already...just wasn't sure if the bootstrap node was "special"
<robbiew> guess there's one good way to find out! :P
<SpamapS> its only special because zookeeper runs there
<robbiew> yeah
<SpamapS> so just don't deploy zookeeper to it ;)
<robbiew> lol
<hazmat> robbiew, its not
<hazmat> er. 'local' or deploy-to works for that case
<robbiew> coolio
<imbrandon> SpamapS: how did the nginx-proxy relations look ? had a chance ?
<SpamapS> imbrandon: I did not. Looking now.
<imbrandon> cool cool
<SpamapS> imbrandon: they look simple enough. What is http-proxy though?
<SpamapS> imbrandon: shouldn't that also just be http ?
<imbrandon> well i guess, thats kinda what was messing me up
<imbrandon> so the website relation should only fire when new lets say wordpress to make this easy
<SpamapS> imbrandon: proxies will almost always require/provide the same thing unless they are a translating proxy
<imbrandon> get related
<imbrandon> so my upstream loop will add wordpresses pub ip's the way its setup and ignore other nginx-proxies
<imbrandon> right
<imbrandon> ?
<SpamapS> imbrandon: yeah, you probably want to use just changed/departed/broken there btw, joined is a bit irrelevant since you're not doing any relation-set's
<imbrandon> yea gonan symlink them
<imbrandon> gonna*
<SpamapS> imbrandon: also broken is tricky because relation-get doesn't work anymore
<imbrandon> oh
<SpamapS> imbrandon: the trick is to name any state files using $JUJU_RELATION_ID
<SpamapS> so you can rm -f /etc/nginx/conf.d/$JUJU_RELATION_ID* on broken
<imbrandon> well relation id is  set in common
<imbrandon> and service name
<SpamapS> relation-list also doesn't work in broken
<SpamapS> and broken is what is called when somebody does 'remove-relation' or 'destroy-service'
<imbrandon> doh, so much for symlinking then
<SpamapS> imbrandon: you can do the symlink thing if you do a full-regen every time, which you appear to do
<imbrandon> yea
<imbrandon> based on the template
<SpamapS> imbrandon: you just need to loop over all the relation-ids too
<SpamapS> since in theory you might want to proxy to multiple backends
<imbrandon> right, well thats what the units do
<imbrandon> i thought
<SpamapS> (this is where we need some new fields in the http interface so you can identify a frontend hostname, btw)
<imbrandon> or did i miss something
<SpamapS> you can have multiple collections of units related to one relation
<imbrandon> ohh
<imbrandon> well not really
<imbrandon> they would serve diffrent content
<imbrandon> that cant happen
<SpamapS> for relation in `relation-ids` ; do for unit in `relation-list -r $relation` ; do relation-get -r $relation - unit ; done ; done
<SpamapS> They might serve different content..
<SpamapS> but how would you select it without knowing the Host: header to choose?
<SpamapS> hence my point.. http needs a new field
<imbrandon> roght thats why there is only one block
<SpamapS> right, so you can just say "behavior is undefined with multiple relations to website"
<imbrandon> it needs to assume that they all serv same
<imbrandon> right
<imbrandon> well that was my thinking , adding something like that to the readme
<imbrandon> that all relations need to serve the same content
<imbrandon> so you could stick say 4 instances of summit behind it
<imbrandon> or whatever
<SpamapS> So yeah, in that case, since you're writing everything to the default site, you need to regen all relations, not just all units
<SpamapS> I do think at some point relations will need a 'max relationships' spec of some kind so you can say 1 or many.
<imbrandon> not sure i see what you mean then
<SpamapS> since it makes no sense to give wordpress two dbs
<imbrandon> what does all relations give me vvs all unity
<imbrandon> right but thats handeled by the wpcharm
<imbrandon> this isnt a sub
<imbrandon> err
<SpamapS> imbrandon: juju deploy nginx-proxy ; juju deploy wordpress --constraints mem=8g fat-wordpress ; juju deploy wordpress --constraints=2g skinny-wordpress ; juju add-relation skinny-wordpress nginx-proxy ; juju add-relation fat-wordpress nginx-proxy
<SpamapS> imbrandon: what would you expect that to do?
<imbrandon> add both public ips to the backend {} block
<imbrandon> of skinny and fat
<SpamapS> in your example, it would not
<imbrandon> ahh ok
<SpamapS> it would be a race
<SpamapS> whoever changed last
<imbrandon> ahh ok thats wheve i messed up then
<SpamapS> hence needing to loop over `relation-ids` *or* use $JUJU_RELATION_ID in a file and concat them together.
<imbrandon> $units = split(trim(`relation-list`),' ');
<imbrandon> ^^ ??
<SpamapS> thats fine
<imbrandon> ?
<SpamapS> you need one more loop
<SpamapS> $relationships = split(trim(`relation-ids`),' ');
<SpamapS> and you need to pass -r $relid to relation-list and relation-get inside your loop
<imbrandon> ok, i'm stull not really sure on why tho is the twister
<SpamapS> see my example above
<SpamapS> because "relations" can have multiple "relationships"
<imbrandon> ohhh ohhh ohh
<imbrandon> ok clicked*
<SpamapS> which are confusingly identified by "JUJU_RELATION_ID" .. should have been "JUJU_RELATIONSHIP_ID" imo
<imbrandon> ok crap
<imbrandon> hrm yea i see exactly what ya mean now
<SpamapS> imbrandon: to be fair, I'm pretty sure 99% of charms do this wrong because relation-ids only landed in March. :)
<imbrandon> wow that is a mess
<imbrandon> heh
<imbrandon> ok so i need to loop relations , relation get all the units inside of THAT loop then write out with the combined results
<imbrandon> to do how i said i wanted
<SpamapS> imbrandon: I really do want to add an 'endpoint-host' field to http, or something like that, so backend servers can inform the frontend of their intended endpoint, and vice-versa,
<imbrandon> yea that would make this much easier
<SpamapS> imbrandon: right makes it a bit more tricky but you got it. :)
<imbrandon> maybe it can be the posterboy for testing that later
<SpamapS> I'm trying to focus on this generic monitoring solution right now
<SpamapS> I got it sort of working but in too complex of a way last week, so I'm starting over with a simpler design.
<imbrandon> rockin, i'm gonna change that up and toss this up for full review
<imbrandon> nice
<imbrandon> yea that will be very nice
<SpamapS> imbrandon: sweet (also remember to change that http-proxy interface to 'http', and relation-set hostname/port on it)
<SpamapS> imbrandon: that way you could put something else in front of this proxy.. and chain them
<imbrandon> ahh ok
<imbrandon> good call
<SpamapS> like say a mod_security proxy
<imbrandon> yea or that nginx firewall thing
<SpamapS> (tho I'd guess that mod_security would go behind nginx.. not the other way around. :)
<SpamapS> ok time to go afk for a bit
<imbrandon> kk ty ty
<jimbaker> looks good re relation ids
<imbrandon> there we go, once i understood that was simple enoguh to add
<imbrandon> SpamapS: http://paste.ubuntu.com/1083617/
<imbrandon> :)
<imbrandon> no for the other bits
<imbrandon> now*
<imbrandon> wow whats up with juju.ubuntu.com ?
#juju 2012-07-10
<imbrandon> black on black gives me a heart attack, and the silence makes it deadly ...
<lifeless> broken theme
<lifeless> lets see
<imbrandon> heya lifeless
<imbrandon> lifeless: ahh u figured it out, someone trip over the wrong cat5 cable ? heh
<imbrandon> lifeless: i got to looking at the structure of the .app and it occured to me that the same .app could in theory be used for Mac and Linux e.g. the file system layout/api is Whatever.app/Contents/{Resources,MacOS,Linux} etc
<imbrandon> and the binary actually lived in the OS named subdir
<imbrandon> i guess there could be a gnustep/nextstep api writen ( or already written for win as well )
<lifeless> imbrandon: dunno what was up, I just asked IS who fixed ;)
<imbrandon> ugh wtf, so unattended upgrades decided to update the fileserver while i'm midst rsyncing 100gb+ of crap to it and sshd decided it was done for the evening and wasent going to return for the remainder of the show
 * imbrandon is glad said fileserver is 2 rooms away
<imbrandon> mmm smell of a fresh ubuntu install on my main machine bright and early on a tuesday morning ... gonna be a good week ( i hope )
<imbrandon> now just the matter of to upgrade to quantal or stay on precise
<imbrandon> heh
 * imbrandon just found out an old buddy of his quit his ( rather high paying ) job to form a startup and is the infrastructure is managed ( mostly ) with juju on aws, think its time i had a beer with him and see what he's upto :)
<imbrandon> jamespage: got through all of the video too btw, apart from some audio glitches ( that obviously you had no control over and arent terrible anyhow ) it was an outstanding overview i think, in fact the best "here is juju" all in one place i've seen of the admiditly few juju vids i've watched ( mostly just jcastro at oscon and the UDS ones )
<imbrandon> :)
<jamespage> imbrandon, thanks for the feedback!
<imbrandon> you know what ...
<imbrandon> we need to marry one ( more than one eventually ) one of the configuration management tools into juju as a first class citizan ...
<imbrandon> we keep saying we're not chef etc etc and they can be used inside juju ... so lets do it ...
<imbrandon> SpamapS m_3 ^
<imbrandon> ( even cloud-init has puppet and capistrano baked in )
<imbrandon> i mean think about it, what can we do that shows juju can orchstrate not just wordpress but , deployment automation ( cloud-init , preseed , cobbler ) ; config managements tools ( puppet , chef , bcfg2 ) ; and Build Automation ( jenkins/hudson , ant, maven ) as well as make them scale-out , until now we've shown nicely how we can make largely default apt-get software scale out, but what about all these custom tools people use now individually and 
<imbrandon> make them first class citizens $somehow and _show_ we're not replacing them we marrying them. I mean we are right ? We would be crazy to reinvent the wheel on some of this stuff
 * imbrandon waits for the world to wakeup and get told he's nuts
<imbrandon> ( or "show me the code" )
<imbrandon> heh
<imbrandon> heya SpamapS here is a few targets for the generic monitoring interface: http://paste.ubuntu.com/1084350/
 * imbrandon quickly raises his hand and says "1 ... 2 ... 3 ... not it !"
<imbrandon> default: sample; environment: ; sample: ;     type: openstack
<imbrandon> config: chef-solo
<hazmat> mgz, just noticed you pushed some revs to the ostack branch, could you lbox propose -cr on it again to update the code review
<imbrandon> new rpms's up https://github.com/jujutools/rpm-juju/blob/master/juju-0.5.1-1.noarch.rpm?raw=true
<imbrandon> morning hazmat
<hazmat> imbrandon, greetings
<mgz> hazmat: will do, need to land one more thing first
<imbrandon> hazmat / SpamapS  or someone willing to laugh at my python got a moment to tell my why this function does not do what i want
<imbrandon> http://paste.ubuntu.com/1084504/
<imbrandon> i get 0.0
<hazmat> imbrandon, lack of paths
<imbrandon> ahh kk
<hazmat> maybe
<imbrandon> well i exe the same thing in the the dir as the py file and it does as expected
<imbrandon> so the commands them selfs are ok, did not think about paths
<mgz> well, it's a little hillarious using os.system('cat ...') rather than open('...').read()
<imbrandon> mgz: heh give me php, js, ruby, or a hand full of other things i'm ok , python == total newb :)
<imbrandon> so very very likely
<imbrandon> i'm sure there are bzr modules i could import as well
<imbrandon> :)
<_mup_> Bug #1015207 was filed: juju setup fails, ERROR Invalid SSH key - 12.04 LTS <juju:New> <MAAS:New> <juju (Ubuntu):Confirmed> < https://launchpad.net/bugs/1015207 >
<dpb___> what should i be looking for if I don't see anymore juju debug-log after 2012-07-10 10:43:36,009 Machine:0: unit.deploy INFO: Started service unit lds-quickstart/2
<dpb___> for lxc/local ^^
<dpb___> found logs in my local directory... should be enough to go on for now
<imbrandon> 07/03/2012 Amazon Web Services charges $2.24
<imbrandon> man i love bills that small , wish they all were :) heh
<tncardoso> are all files in the charm directory uploaded to the server being deployed? I want to send along with the charm some auxiliary files (like a default configuration file).
<imbrandon> yes
<imbrandon> tncardoso: thats pretty common case, like in my charms i create a /templates directory at the top level
<imbrandon> then the hooks can read in that file, edit values, and write it back out to where it needs to go
<imbrandon> etc
<tncardoso> imbrandon: ok, thanks :)
<dpb___> anyone seen this one: (in unit.log): Failure: txzookeeper.client.ConnectionTimeoutException: could not connect before timeout
<dpb___> basically, my instances sits in *pending* forever.
<dpb___> this is on a lxc environment
<SpamapS> dpb___: is zookeeper running?
<SpamapS> dpb___: and do you have any local firewalls that might be blocking connecting to it?
<imbrandon> quad core 2.7ghz with 8gb ram and ruby STILL takes forever to compile ...
<benji> imbrandon: SSD?
<dpb___> hmm
<imbrandon> benji: no :(
<dpb___> SpamapS: yes, zookeeper appears to be running
<benji> imbrandon: you have my condolences
<SpamapS> dpb___: and no firewalls?
<SpamapS> dpb___: like, can you type 'telnet 192.168.122.1 <whatever-port-zk-listens-on>' ?
<dpb___> this machine does have a public and private interface.  I'm not sure about any firewalls, is there a way I could empirically test?
<imbrandon> heh, benji its about the only thing i ever wait on it seems, everything else is nice and quick
<imbrandon> :)
<dpb___> ok.. let me see.
<dpb___> clientPortAddress=192.168.122.1
<dpb___>  clientPort=60457
<SpamapS> dpb___: does teh lxc container actually boot up? You can try ssh'ing to it (you can get the IP from /var/log/syslog as dnsmasq will log it)
<dpb___> SpamapS: seems I can  telnet 192.168.122.1 60457
<benji> yeah, you probably get a lot of benefit from disk caching
<SpamapS> imbrandon: try compiling with eatmydata
<imbrandon> i'm due for an upgrade anyhow, def making sure i double the ram and have the ssd primary drive option this time
<SpamapS> imbrandon: I don't *think* compilers fsync() .. but its worth a try ;)
<imbrandon> SpamapS: eatmydata ?
<SpamapS> imbrandon: yes, turns off fsync()
<imbrandon> ahh
<imbrandon> nice
<SpamapS> replaces it with a noop
<SpamapS> CC="eatmydata gcc"
<imbrandon> :)
<SpamapS> dpb___: from your machine, or from the container that was booted?
<imbrandon> ruby-1.9.2-p320 - #extracting ruby-1.9.2-p320 to /usr/share/ruby-rvm/src/ruby-1.9.2-p320
<imbrandon> ruby-1.9.2-p320 - #extracted to /usr/share/ruby-rvm/src/ruby-1.9.2-p320
<imbrandon> shit sorry
<imbrandon> ruby-1.9.2-p320 - #configuring
<imbrandon> ruby-1.9.2-p320 - #compiling
<dpb___> SpamapS: I don't know that there is a container.  This is from my machine.
<dpb___> SpamapS: I do lxc-list and i only see things that are "Stopped"
<dpb___> SpamapS: ok, I am seeing some dhcp stuff in syslog... let me see If I can get the iP
<dpb___> SpamapS: So, telnet 192.168.122.1 60561 is not working on the created instance
<dpb___> SpamapS: I can ping that IP
<SpamapS> dpb___: check iptables
<SpamapS> dpb___: ufw does cause problems
<dpb___> SpamapS: that was it.  Thanks!!
<SpamapS> dpb___: no problem...
<SpamapS> jcastro: ^^ perhaps we should add a note to the local provider docs about ufw
<jcastro> sure
<jcastro> hrmph, I haven't had a ufw problem with 12.04 and the local provider
<jcastro> is there a ufw step somewhere that I am missing?
<SpamapS> not sure
<SpamapS> jcastro: I would actually expect ufw to always cause an issue
<SpamapS> because its a remote host hitting an unaccounted for port
<jcastro> https://juju.ubuntu.com/docs/getting-started.html
<jcastro> ok so in which step are we turning off ufw?
<jcastro> also, is it just turning it off or allowing the local stuff?
<SpamapS> jcastro: I think ideally we'd provide some kind of ufw command to allow the lxc network to access us
<SpamapS> I don't know ufw well enough to know that, but something like "hey ufw, let 192.168.122.0/24 access us"
<jcastro> SpamapS: indeed
<tncardoso> is it common to lock on: 2012-07-10 16:33:06,852 Machine:0: unit.deploy INFO: Started service unit serv/0 - what this mean? Where can I find more about the deploy lifecycle?
<imbrandon> its not locked there, thats means its started
<imbrandon> no much more to output at that point until another event happens
<tncardoso> imbrandon: humm, but the debug hook didnt show anything
<tncardoso> imbrandon: for example, trying to ssh gives the following info:   Waiting for unit to come up
<imbrandon> how long ? i've seen it take nearly an hour and half on local provider for the first instance
<tncardoso> imbrandon: 30 minutes
<tncardoso> imbrandon: in this step it is downloading the server image?
<tncardoso> imbrandon: *is it
<imbrandon> yes
<imbrandon> among other things, the first instance to be fired up takes a *long* time sometimes
<imbrandon> grabbing about 300mb+ of data
<imbrandon> etc
<imbrandon> after that it should be fast
<imbrandon> even if you destroy env etc
<tncardoso> imbrandon: got it.. thanks a lot
<tncardoso> :)
<imbrandon> np
<jcastro> http://engineering.twitter.com/2012/07/caching-with-twemcache.html
<jcastro> this could be a cool charm, I've filed a bug on it
<jcastro> if someone is looking for something to do
<negronjl> SpamapS: ping
<jimbaker> SpamapS, just want to double check that i can merge the reuse-security-groups branch into trunk, now that it's been approved
<imbrandon> I some opinions / expertise here so i dont go looking like an idiot with this post, as i'm sure its going to draw some attn, what would be the "best" way i can show that juju could be used to orchrastrate db replication ... over wan ... across providers.
<imbrandon> ( this is only a part of the post but still ... )
<imbrandon> SpamapS: your a DB guy right ? ^^ opinon ?
 * imbrandon has a blog post 3/4 written about using juju to create your own PaaS-like envrionment instead of ending up like Pentrest and others on AWS or Heroku  
<imbrandon> all the goodies from a PaaS , none of the black box :)
#juju 2012-07-11
<imbrandon> http://www.brandonholtsclaw.com/blog/2012/how-not-to-fail-at-the-cloud/
<ajmitch> imbrandon: you're not allowed to just leave it hanging like that :)
<imbrandon> hahaha
<imbrandon> dude that alone took like 2 days to write
<imbrandon> heh
<imbrandon> wow, my blogs starting to get a little traffic too, went to go check the numbers for last month ... 17,391 pageviews
<imbrandon> ( that cant all be me hitting refresh hahahaha )
<jk-> hi all
<jk-> I'm messing around with juju using a local environment, is there any way I can specify which apt mirror to use?
<lifeless> no
<lifeless> the local provider brings up an apt-cacher-ng automatically
<lifeless> and there is AFAIK no knob to tweak this.
<lifeless> there is an experimental patch to let you set an explicit proxy, but it only affects the first node spawned, last I checked.
<lifeless> hazmat would know more, but hazmat should be sleeping right now ;)
 * hazmat should be sleeping :-)
<jk-> lifeless: so i see smoser has done this: https://bugs.launchpad.net/cloud-init/+bug/897688
<_mup_> Bug #897688: cloud-init should support apt-proxy and hostname based mirror selection <cloud-init:Fix Released by smoser> < https://launchpad.net/bugs/897688 >
<jk-> but I have no idea where cloud-init fits in here
<hazmat> jk-, cloud-init is how juju initializes machines, but it doesn't directly expose all of cloud-inits config to the user
<hazmat> at the moment its not supported re mirror selection
<jk-> hazmat: ok, cool
<jk-> hm, what *is* cloud-init? I don't have any executable with that name.
<lifeless> it runs in cloud images only
<jk-> oh, right.
<lifeless> the cloud provider invokes it automatically right after the image comes up
<jk-> gotchya, thanks.
<lifeless> in principle, depending on the cloud it either calls back to get data from an instance metadata API, or has data injected into it via the filesystem
<lifeless> I think pragmatically they all use the same instance metadata API call though.
<lifeless> as doing heterogeneous file system injection is just messy
<lifeless> its responsible for things like setting the ubuntu users ssh key etc etc
<SpamapS> jimbaker: sorry I was afk way longer than I expected to be. Yes trunk has been open since 0.5.1 released
<SpamapS> imbrandon: the way mysql sets up replication is a bit naive, and not suitable for use on an insecure network (need to transfer the db snapshot via https) but the general idea is, I think, sound.
<imbrandon> could someone fix the charmstore ( specificly charmload ) or at least be bothered to confirm the bug report that is reporduceable every single time ( even in the official store as we're missing charms )
<imbrandon> its been reported over 3 weeks now and not even a "ok we'll get to it ... once someone else learns how to program in go" or anything ... kinda anoying the store has been broken all this time
 * imbrandon goes to piss-off time doing something else ... 
<wrtp> imbrandon: which bug are you talking about?
<imbrandon> https://bugs.launchpad.net/juju-core/+bug/1015700
<wrtp> imbrandon: how are you running it?
<imbrandon> there is only one way iirc "charmload 127.0.0.1"
<wrtp> imbrandon: the version of charmload i have here expects a config path as its first argument
<imbrandon> hrm ...
<imbrandon> i am using charmstore from ppa:juju/pkgs
<imbrandon> is there another ?
<wrtp> imbrandon: i'm just looking at it. there's a config file in the package dir which i'll try using
<imbrandon> kk
<imbrandon> root@server-1339205906-az-1-region-a-geo-1:~# charmload
<imbrandon> usage: charmload <mongo addr>
<imbrandon> wrtp: i can give you ssh to that box if it helps
<wrtp> imbrandon: i'm interested to see if i can reproduce your behaviour here. just need to work out how to run mongodb :-)
<imbrandon> heheh, kk , just run "mongod &" is simplest
<wrtp> imbrandon: is 60017 the default port number?
<imbrandon> yup
<imbrandon> err
<imbrandon> 27017
<imbrandon> lemme look
<wrtp> imbrandon: ah, looks like i need to give it a data directory
<imbrandon> Wed Jul 11 11:29:42 [initandlisten] MongoDB starting : pid=7948 port=27017 dbpath=/data/db/ 64-bit host=server-1339205906-az-1-region-a-geo-1
<wrtp> imbrandon: ok, seems to be running ok now.
<wrtp> imbrandon: i'll see if i see your issue
<imbrandon> cool kk, yea after that , the first charmload will finish
<imbrandon> and every attemot after will fail
<imbrandon> at that same place
<imbrandon> or should
<imbrandon> i has on 2 diff boxes here
<imbrandon> reliably
<imbrandon> btw the first charmload will take a good little while, so make some tea or get lunch
<imbrandon> hehe
<imbrandon> wrtp: btw thanks for poking at this :)
<imbrandon> it has been very very anoying
<wrtp> imbrandon: by "a good little while" do you mean an hour or 8 hours?
<imbrandon> like 2
<imbrandon> just under 2 iirc
<wrtp> imbrandon: by "every attempt after", do you mean when you run charmload again?
<imbrandon> it downloading every charm and putting them into gridfs
<imbrandon> and yup
<imbrandon> when you rerun it its supose to update the charms with new ones if there are any
<imbrandon> when you re-run it , it only takes like 2 minutes
<imbrandon> only this first run takes a long time
<imbrandon> its using lp api to getBranchTips iirc
<imbrandon> and checks for new ones against that json return from what i understand
<wrtp> imbrandon: feels to me like it could be doing more stuff concurrently. but maybe it *is* maxing out my network.
<imbrandon> heh, no i agree
<imbrandon> i think its all serial
<imbrandon> not 100% certain tho
<imbrandon> when i run it , i run it on a HPCloud server with a fat pipe
<imbrandon> so i dont hink its network that makes it slow
<imbrandon> i think it just processes one at a time, for all 160ish of them
<imbrandon> wrtp: brb gotta run for like 1 hour, but i'll be round after that all day, should u need something else from me
<wrtp> imbrandon: k
 * imbrandon returns
<wrtp> imbrandon: ok, i've seen the bug.
<wrtp> imbrandon: i didn't need to run charmload twice
<wrtp> imbrandon: i will have a look into it
<wrtp> imbrandon: looks like it's something to do with the terracotta charm in particular
<imbrandon> wrtp: rockin
<imbrandon> thanks a ton
<wrtp> imbrandon: np. BTW i've now got a 15 line standalone program that reproduces the bug: http://paste.ubuntu.com/1086121/
<imbrandon> oh cool
<imbrandon> that might help me learn a bit of go :)
<wrtp> imbrandon: it's not a hard language
<imbrandon> yea i've been poking at it the last 2 days or so
<imbrandon> just picking up the ultra basics so far, but most new langugues are just learning the packages
<imbrandon> synatax is syntax
<imbrandon> :)
<wrtp> imbrandon: yeah. actually the idioms are a bit different too - the lack of subtyping and the way packages are structured makes a significant difference
<wrtp> imbrandon: but, yeah, as always, the packages are the main thing
<wrtp> s/packages/standard packages/
<imbrandon> hehe yea
<wrtp> imbrandon: ok, i've got a fix. will add a test and propose it soon.
<imbrandon> wrtp: wow, urock
<imbrandon> ty
<wrtp> imbrandon: np
<jml>  juju deploy ubuntu
<jml> 2012-07-11 14:27:31,259 INFO Searching for charm cs:precise/ubuntu in charm store
<jml> 2012-07-11 14:27:31,942 ERROR Error processing 'cs:precise/ubuntu': entry not found
<jml> http://jujucharms.com/charms/precise/ubuntu
<jml> what am I doing wrong?
<imbrandon> jml: nothing
<imbrandon> its broken, you need to grab a local copy of the charm, that is part of the bug that wrtp just got a fix for
<jml> imbrandon: ok, thanks.
<imbrandon> in the charmstore and will be fixed $sometime but still needs code review etc
<wrtp> imbrandon, jml: proposal to fix the bug: https://codereview.appspot.com/6344105
<imbrandon> wrtp: looks like already taped it too , i def owe ya a beer in copenhagen :)
 * wrtp is always willing to accept a beer :-) are you in copenhagen?
<imbrandon> nope, but thats likely the next time i'll get to meetup with ya
<imbrandon> 12.10 uds
<wrtp> imbrandon: ok, the fix is in. i guess it'll take a while to propagate to the ppa. i haven't actually tested charmload again yet :-)
<imbrandon> np, i'm actually compiling it local how to try
<wrtp> imbrandon: cool, i didn't know the location had been confirmed
<imbrandon> well trying to if i can find glang-tip
<imbrandon> wrtp: ahh i'm not 100% for sure, thats what the consensus was last i heard tho
<wrtp> imbrandon: if you've got golang installed, you should be able to do: go get launchpad.net/juju-core/store/charmload
<imbrandon> ahh cool,i was trying to rebuild the package
<imbrandon> yup i do
<wrtp> imbrandon: or possibly: go get -u ... if you've already installed the juju stuff under Go.
<wrtp> imbrandon: (get -u goes to the web site even if there's already a local version)
<imbrandon> oh now thats cool
 * imbrandon forgives some of golangs verbosness :)
<imbrandon> brb grabbing a soda, but i assume its compiling now
<imbrandon> brb
<imbrandon> wrtp: where did it put the binary
<imbrandon> heh
<SpamapS> "where'd WHO go!?"
<wrtp> imbrandon: if you've got $GOPATH set then it's in $GOPATH/bin
<wrtp> imbrandon: otherwise it's in $GOROOT/bin
<imbrandon> k
<wrtp> imbrandon: unless you've got $GOBIN set
<imbrandon> no likely
<imbrandon> not*
<wrtp> imbrandon: what does go list -f '{{.Dir}}' launchpad.net/juju-core/store/charmload
<wrtp> print?
<imbrandon> root@server-1339205906-az-1-region-a-geo-1:~# go list -f '{{.Dir}}' launchpad.net/juju-core/store/charmload
<imbrandon> /usr/lib/go/src/pkg/launchpad.net/juju-core/store/charmload
<imbrandon> ahh ok
<imbrandon> yea i have no $GO* env set
<imbrandon> heh
<imbrandon> heya SpamapS :)
<imbrandon> wrtp: ok thats a dir
<imbrandon> with the src
<imbrandon> ahh got it
<wrtp> imbrandon: yeah. if you want stuff to be installed in your home, then set GOPATH to e.g. $HOME/src/go
 * imbrandon headdesks
<wrtp> imbrandon: in your case, you can run /usr/lib/go/bin/charmload
<wrtp> imbrandon: i think
<imbrandon> ahh cool , yea i should set all that up today , zomg all my ram will be taken by env vars, you should see my "# env" printout
<imbrandon> heh
<wrtp> :-)
<imbrandon> yup, now i got to find that config
<wrtp> imbrandon: there's one in the charmload directory
<imbrandon> ahh rockin
<imbrandon> ok loaded up, looks good so far
<imbrandon> no idea why it dosent use the default 27017 port
<imbrandon> silly store
<imbrandon> wrtp: woot works perfect
<wrtp> imbrandon: cool.
<wrtp> imbrandon: i've been chugging charmload along too, and it hasn't encountered any further problems...
 * wrtp checks
<imbrandon> next question is SpamapS once that lands in the PPA how do get store.juju.ubuntu.com updated ? or whatever the url is
<wrtp> imbrandon: nope, still working
<imbrandon> sweet
<wrtp> imbrandon: no idea, sorry :-)
<imbrandon> no worries, liky its automatic OR justa  simple IS ticket
<imbrandon> SpamapS: woot, looks like most if not all the ones on the MIA list are now loading
<imbrandon> i've seen a few come by already
<SpamapS> imbrandon: you made some fixes?
<imbrandon> not me, wrtp did
<SpamapS> ahh
<imbrandon> i just helped debug
<SpamapS> It needs to get merged into juju and then we have to get our IS people to deploy the new version
<SpamapS> wrtp: any chance you added HTTPS ? ;)
<imbrandon> yea its merged , already revied by gustavo
<imbrandon> reviewed
<SpamapS> ah ok we just have to bump IS then
<imbrandon> and should be in PPA soonish
<niemeyer> SpamapS: Btw, I apologize for being behind on the API to get errors
<wrtp> SpamapS: i just did the fix. no new features...
<niemeyer> SpamapS: I'll sort that out
<niemeyer> SpamapS: It's really me being lazy.. the errors are even in the database already
<imbrandon> oh speak of the devil 0/
<imbrandon> SpamapS: but i did get a little peek into the go code world , so maybe that will nudge me to hunker down on it this week :)
<niemeyer> imbrandon: Oh, neat
<niemeyer> imbrandon: What's your take on it?
<imbrandon> niemeyer: much more verbose than i'm used to , but def something cool, i'm really looking forward into getting deep enough to play with some concurency
<niemeyer> imbrandon: Oh, interesting.  Verbose in which sense?
<imbrandon> just than lang its self, i've been doing ruby,js,php far too long :)
<imbrandon> actually its seems alot like backwards js, but thats just a feeling, dont really know how to explain myself there
<imbrandon> not in a bad way tho :)
<imbrandon> as in the loops in logic seems reversed , much more like c
<niemeyer> imbrandon: Ah, yeah, one of the loop forms is close to C indeed
<niemeyer> imbrandon: Anyway, happy to see you poking with that.. please ping if you need anything
<imbrandon> sure thing :)
<SpamapS> niemeyer: no worries. We're all behind on everything. If you could work on that thing to make the world turn slower so we get 25 hours a day that would help. ;)
<niemeyer> SpamapS: :-)
<jimbaker> SpamapS, doublechecking: is it ok to merge in branches into juju trunk at this time?
<SpamapS> jimbaker: lp:juju has been open since 0.5.1 released
<SpamapS> jimbaker: and there's no plan currently for honolulu's release
<jimbaker> SpamapS, ok
<SpamapS> jimbaker: still broken on natty and oneiric :(
<imbrandon> we care about natty and oneiric ?
<SpamapS> imbrandon: I don't know for sure. I think we probably should since AFAIK OMG is still on oneiric, isn't it?
<imbrandon> nah
<imbrandon> its on precise
<imbrandon> last major redo
<imbrandon> err redeploy
<SpamapS> I'd be happy to let go of natty.. but oneiric we still have an active charm series for
<imbrandon> yea i dont mind much either way. but just seems kinda odd as there isnt any uptodate charms for natty iirc
<SpamapS> natty is only about the client
<SpamapS> 0.5.1 works on oneiric..
<SpamapS> and natty actually
<SpamapS> so we can just say those are the last supported releases on natty/oneiric
<imbrandon> but yea i moved it to precise a month or so ago when the last big redeploy in hopes there would be a stable php 5.4 i could toss on there at some point
<imbrandon> for precise
<SpamapS> imbrandon: there is..
<imbrandon> but not moved to 5.4 yet, just was planning
<imbrandon> yea at the time there wanent tho
<SpamapS> https://launchpad.net/~ondrej/+archive/php5
<imbrandon> that had no apc
<imbrandon> a month ago
<SpamapS> imbrandon: tho that may be somewhat experimental
<jimbaker> SpamapS, do you have the buildd log for natty/oneiric?
<imbrandon> yea apc segfaulted on that untill like 2 weesk ago
<SpamapS> jimbaker: https://launchpadlibrarian.net/109247690/buildlog_ubuntu-oneiric-i386.juju_0.5.1%2Bbzr555-0juju1~oneiric1_FAILEDTOBUILD.txt.gz
<SpamapS> jimbaker: https://launchpadlibrarian.net/109247508/buildlog_ubuntu-natty-i386.juju_0.5.1%2Bbzr555-0juju1~natty1_FAILEDTOBUILD.txt.gz
<SpamapS> imbrandon: you might consider a no-change rebuild of quantal's packages too
<imbrandon> yea thats exactly what i was planning once you told me you uploaded it
<marcoceppi> Is there any way to indicate a charm requires a subordinate?
<jimbaker> SpamapS, so the common failure is this one, juju.unit.tests.test_lifecycle.UnitLifecycleTest.test_remembers_relation_removes
<SpamapS> looks like we need to merge w/ Debian actually. hm
<imbrandon> heya marcoceppi 0/
<jimbaker> ok, that's a useful place to start
<marcoceppi> o/ imbrandon et al
<imbrandon> marcoceppi: umm would requires: charmname scope: container
<imbrandon> not work ?
<marcoceppi> not sure
<SpamapS> jimbaker: install ubuntu-dev-tools, use 'mk-sbuild oneiric' to create a buildd-like chroot. Use 'schroot -c oneiric-amd64 -u root' to enter the chroot and you can install build-deps, try the test suite, etc. etc.
<imbrandon> i dont think its enforced but i think that would be the way
<marcoceppi> haven't tried, wasn't sure if there was a way to indicate that a "main charm" required a sub-ordinate
<jimbaker> it looks like the problem with natty is that the yaml format is slightly different (presumably libyaml difference)
<SpamapS> marcoceppi: ahoy!
<marcoceppi> or at least make that more obvious aside from descriptions
<imbrandon> right
<SpamapS> marcoceppi: there are no required subordinates.
<negronjl> 'morning all
<imbrandon> yea i'm not sure either, but that seems like it right off the top of my head
<marcoceppi> SpamapS: Okay, so if a charm requires a suboridnate you're doing it wrong?
<SpamapS> marcoceppi: part of the way it figures out which side is primary/sub is the provides (primary) and requires (subordinate)
<marcoceppi> SpamapS: ah, that makes a lot more sense
<SpamapS> marcoceppi: possibly, but subordinates are a little clunky for anything except their intended use case (container-aware monitoring/management).. can you provide more details?
<marcoceppi> Multi-site wordpress via subordinates
<imbrandon> SpamapS: so like     requires: loggin interface: blah scope: container ? is not right
<SpamapS> marcoceppi: I'm starting to think we should think about "building" charms using my splice tool for inheritance.
<SpamapS> oh hm
<SpamapS> no thats different
<imbrandon> marcoceppi: ahh i ran into the same issue with nginx and sub sites
<jimbaker> SpamapS, oddly, i cannot run  juju.unit.tests.test_lifecycle.UnitLifecycleTest.test_remembers_relation_removes by itself on precise
<SpamapS> imbrandon: right, I don't know what that would do, but probably not what you think. :)
<jimbaker> so that's a pretty good sign something is wrong with that test
<imbrandon> not found a good DRY solution
<SpamapS> jimbaker: very interesting
<SpamapS> imbrandon: the only (poor) DRY solution is to stuff everything in a package in a PPA
<marcoceppi> SpamapS: what I was thinking, if there's no subordinate then just roll-out with wordpress, but the problem is preserving that "one instance" when you start adding more subordintaes of wordpress sites
<marcoceppi> which leads me to believe I should be doing a wordpress and wordpress-mu charm
<SpamapS> imbrandon: and even then you still have to RY on the metadata
<imbrandon> yea
<jimbaker> SpamapS, when i tried the juju.lib.format tests, i was doing this on oneiric. i wasn't even thinking of natty! :) so i will revisit with natty, but the buildd log basically tells me what i need to know, there's a slight incompatibility there
<SpamapS> marcoceppi: another way to go is to just have the charm morph itself from single -> multi on attachment to the mu relation
<imbrandon> marcoceppi:oh yea, thats right its not like drupal where yoy can just drop a new site in the config dir
<imbrandon> SpamapS: no, wordpress its self
<marcoceppi> SpamapS: right, but then the problem is preserving that one first install. Then how do you update the themes and plugins for it, it's not in a charm repo anywhere
<SpamapS> marcoceppi: I have the same problem with ceph actually. Its hard to know what something is intended to be until after all the hooks (relations, et.all) have fired at least once
<marcoceppi> I think I'm going to skip multi-site for now
<marcoceppi> It was a cool idea, but it's really starting to cause logic circles for me
<SpamapS> jimbaker: if we need to just run a subset of tests on natty thats fine
<SpamapS> jimbaker: Ideally the test would detect the incompatibility and skip itself tho
<SpamapS> marcoceppi: probably a good idea
<marcoceppi> cool, I'll strip that out in to a new branch
<jimbaker> SpamapS, yeah, let's just fix the test
<jimbaker> or better yet fix the code
<jimbaker> i'm sure i can workaround this minor incompatibility
<SpamapS> jimbaker: the idea is not to spend too much time fixing server-only code for natty
<SpamapS> jimbaker: we only want natty users to be able to use juju as a client.. :)
<SpamapS> in lucid I don't even run the test suite
<SpamapS> the client "might" work ;)
<SpamapS> but juju is basically python 2.7 only
<jimbaker> SpamapS, this possibly can impact client-level code
<jimbaker> since they can observe the yaml formatting being used
<SpamapS> jimbaker: ok, let me be more clear. Priority == low
<jimbaker> SpamapS, but on the other hand it does seem unlikely since it only fails here, not in similar tests that actually ensure what the client sees
<jimbaker> SpamapS, so given that those tests are robust and cover this case at the client level, i think we can skip this test on natty
<jimbaker> in any event, i'm more concerned about the lifecycle test, since that seems to be broken across the board, but in a weird way
<jimbaker> most likely it's impacted by a data race
<SpamapS> jimbaker: thanks for looking
<jimbaker> SpamapS, np, sorry it took so long to coordinate on the specifics here
<imbrandon> wrtp: charmload completes 100%
<imbrandon> woot
<imbrandon> when did you say it would hit the ppa ( so i know when to bug SpamapS to bug IS ) heh
<wrtp> imbrandon: yeah, it completed for me too
<imbrandon> rockin
<wrtp> imbrandon: niemeyer would be a better person to ask about the ppa
<imbrandon> kk, but its in the trunk now so if ppa were to build it would go ?
<imbrandon> niemeyer: ^^ ?
<SpamapS> I suspect this recipe needs to be run: https://code.launchpad.net/~niemeyer/+recipe/charmstore
<SpamapS> Built on request
<SpamapS> niemeyer: ^^
<imbrandon> ahh cool, please :)
<SpamapS> oh wtf google.. [tab] on results page should not take me to nav bar.. 1st result *please*
<imbrandon> heh
<imbrandon> SpamapS: i suspect IS will need more than a bump too, as before ( as in the current package ) runs with "charmload <mongo ip>" and the new one runs with "charmload <config path>" config = yaml with mongo ip:port
<SpamapS> imbrandon: *DOH*
<marcoceppi> What's charmload?
<imbrandon> marcoceppi: the charmstore
<imbrandon> well what loads the charms from LP into the charmstore
<niemeyer> SpamapS, imbrandon: Will do
<dpb___> Can juju associate reserved ips to instances?
<SpamapS> dpb___: no it hasn't abstracted that yet
<SpamapS> dpb___: but you can use the API to do that
<SpamapS> dpb___: this does cause some issue if 'public-address' is used in the charms. but that is actually fairly rare
<dpb___> SpamapS: oh?  Is there a pointer for how to do that?
<SpamapS> dpb___: euca-associate-address (or ec2-associate-address if you prefer big slow tools ;)
<dpb___> SpamapS: ooh, I see what you mean, ok
<jcastro> adam_g: http://askubuntu.com/questions/161731/using-juju-with-private-openstack-cloud-deployment
<jcastro> or anybody?
<adam_g> jcastro: answering.. i think the IP address issue should be resolved once he's attached a floating IP, but the ability to insert user defined config into juju nodes' cloud-config would solve his second issue
<jcastro> cool
<tncardoso> Is there a way to increase the virtual machine HD size when running with -e local?
<bkerensa> adam_g: I guess Ill be seeing you next week ;)
<jcastro> negronjl: hey does drawbridge use mongo or mysql in the backend?
<MarkDude> Is there a wiki page for Juju on Fedora?
 * MarkDude is heading to OSCON and CLS-
<MarkDude> you gonna be there jcastro ?
<jcastro> yeah
<MarkDude> Cool
<adam_g> bkerensa: ya, for sure
<SpamapS> tncardoso: local is not a VM, its a container..
<SpamapS> tncardoso: you can mount /var/lib/lxc somewhere larger if you want
<MarkDude> Lets get a photo op for it, I want to go next step and get publicity, and maybe have Nixie Pixel put sumthin' about it in one of her videos she is making there :)
 * SpamapS would love to be at OSCON.. one of the best confs
<bkerensa> MarkDude: I'm trying to find someone to take over the Ubuntu Booth for me 90% of the time ;)
<MarkDude> Get you in front of Fedora booth,
<MarkDude> Phil will be there, he is sleeping on the floor of our Fedora room
<bkerensa> lol
<MarkDude> We could also just have some Fedorans in front of Ubuntu Oregon booth
<bkerensa> your water and towels will be gone
<bkerensa> :)
<MarkDude> Whatever
<bkerensa> MarkDude: Finn is coming to and Nathwill
<bkerensa> so it should not be a problem
<MarkDude> He will be our *token Ubuntu guy*
<tncardoso> SpamapS: If I log in the container and run 'df' I get 20Mb filesystem, this is making it harder to test my charms
<MarkDude> We will order him extra towels and water- remember we are NOT staying at Motel6
<MarkDude> :D
<MarkDude> Despite your urging during funding meeting- which was pretty EPIC trolling on your part.
<MarkDude> Good stuff, people were amused
 * MarkDude too
<MarkDude> If you do prank the Fedora booth, make sure we get a good photo op
<MarkDude> We are planning to sorta troll you by offering you a bit of our table space to put some Ubuntu SWAG
<MarkDude> Since we have some space that is
<MarkDude> :D
<SpamapS> tncardoso: that means /var/lib/lxc is on a 20Mb filesystem
<SpamapS> tncardoso: mount -o bind /mnt/somewhere/big /var/lib/lxc
<tncardoso> SpamapS: Ok, I will try that, thanks
<jcastro> MarkDude: there's no wiki page for it, there's a page for it we point to on github tho
<MarkDude> Fair enough, ty
<MarkDude> Looking forward to seeing you there- CLS also?
<jcastro> I'm in the middle of planning a booth so I can't do CLS, really wanted to though
<jcastro> er, a move.
<jcastro> MarkDude: hey those RPMs look fresh, anyone test these lately?
<jcastro> other than brandon I mean
<MarkDude> Well no
<MarkDude> thats the part of publicity
<MarkDude> Honest answer is F17 sorta sucks right now
<MarkDude> So many are still on F16- or even F14
<MarkDude> :)
<MarkDude> True story.
<jcastro> ok so we just keep pushing these and when you guys are set you'll let us know?
<MarkDude> Yep
<jcastro> or are you basically doomed until F18?
<MarkDude> Thats WHY I want to get some publicity
<MarkDude> Or maybe F19
<MarkDude> We are in the process of killing Gnome 3
<MarkDude> That will take a while ago
<bkerensa> SpamapS: You know about LP Team running into issues with charm-tools? https://code.launchpad.net/~yellow/charm-tools/trunk/+merge/101554
<SpamapS> bkerensa: yeah, I really need to just sit down and do this. Perhaps today
<bkerensa> SpamapS: yeah I think they thought I was the guy for that
<bkerensa> ;)
<bkerensa> which is clearly not the case
<dpb___> I'm trying to do some hook debugging.  https://juju.ubuntu.com/docs/write-charm.html  But when I run something like config-get, I'm not in a juju context (no environment vars set).  How do I load all that correctly?
<dpb___> i.e., I ran juju debug-hook, I'm in the remote byobu session in terminal 0, and I don't have any environment set.
<SpamapS> dpb___: 0 is not really useful
<SpamapS> dpb___: you need to change a config setting
<SpamapS> dpb___: so config-change is executed
<SpamapS> config-changed rather
<dpb___> oh I see, and then I will get in real time something.
 * SpamapS thinks we should print that out in window 0 actually
<dpb___> let me try
<dpb___> SpamapS: ok, and this leads me to wonder how I debug the initial install attempt?
<imbrandon> SpamapS: i think we should just setup an environment there
<SpamapS> dpb___: juju deploy foo ; juju debug-hooks foo/0
<SpamapS> dpb___: there's a need, IMO, to have a juju deploy --debug-hooks foo
<SpamapS> imbrandon: there's context missing in the agent tho
<dpb___> SpamaS: got it.  makes sense. thanks much.
<SpamapS> imbrandon: its possible that config-get and unit-get can be made to work w/o context
<imbrandon> refire the config-changed, or make a special context for it
<imbrandon> yea
<SpamapS> imbrandon: the env being up for things that make sense would be useful tho
<imbrandon> right
<imbrandon> really there could be a "dead" hook
<imbrandon> or something
<imbrandon> or hell a hook/debug
 * imbrandon waits for another gold star. or a green one
<SpamapS> actually I do think we should be able to know when debug is set somewhere so we can increase charm log verbosity
<SpamapS> but juju-log is supposed to help w/ that
<imbrandon> it does a little, but like the case i always find myself in ...
<imbrandon> i want to work on a charm, everything is deployed nice
<imbrandon> i run debug-hooks
<imbrandon> i cange a config
<imbrandon> thats about useless
<imbrandon> then i give up and just put the hook i'm
<imbrandon> working on at the bottom of upgrade charm
<imbrandon> and run upgrade charm over and over tuill i get what i want
<imbrandon> pain in the A** but it does the trick
<imbrandon> not really found a better workflow
<imbrandon> would be super cool if i could run debug hooks as now
<imbrandon> but THEN
<imbrandon> maually fire any hook i wanted
<imbrandon> from juju
<imbrandon> so juju --retry install
<imbrandon> or whatever
<imbrandon> from another console
<SpamapS> imbrandon: the upgrade-charm loop isn't all that awful. I put myself in it all the time. ;)
<SpamapS> imbrandon: you can at least juju resolved --retry to get a failed hook to try again
<imbrandon> it is as there is no context
<SpamapS> imbrandon: thats ok, because you can then write your relation hooks to use relation-ids and be more useful :)
<imbrandon> right, but i want to fire specific hooks
<imbrandon> hahah yea NOW i can
<SpamapS> imbrandon: but yeah, I think window 0 should be able to force fire a hook
<SpamapS> run-hook foo
<imbrandon> yea
 * SpamapS opens a wishlist bug for that
<imbrandon> i would kiss whom coded that ( its a threat )
<imbrandon> hahah
<imbrandon> SpamapS: think we could rangle jitsu into doing it ?
<SpamapS> imbrandon: no
<imbrandon> k
<_mup_> Bug #1023565 was filed: debug-hooks window 0 should be able to force hooks to execute <juju:New> < https://launchpad.net/bugs/1023565 >
<SpamapS> imbrandon: perhaps, but I don't think we should get too fond of having jitsu poke zk to do things
<negronjl> SpamapS: why not?
<imbrandon> hahah but its the crazy ground
<SpamapS> because ZK will be hidden from us
<imbrandon> :)
<SpamapS> and may change layout
<SpamapS> or even turn into something else.. like mongodb ;)
<imbrandon> thats the case with anything , the api may change too
<negronjl> SpamapS: lol
<imbrandon> i youd rather not see jitsu do it i'm good with that but yea thats kinda the point i was told jitsu was for , crazy stuff that shouldent be done :)
<imbrandon> heya negronjl 0/
<negronjl> imbrandon: o/
<SpamapS> imbrandon: no, the API will not change once it is set
<SpamapS> imbrandon: its about time investment tho
<SpamapS> imbrandon: investing time in that is investing in something that will die soon
<jcastro> hey SpamapS
<jcastro> SpamapS: http://omttd.blogspot.com/2012/07/configuring-nfs-on-ubuntu-in-amazon-ec2.html
<imbrandon> well ok , was kinda joking till now, but here is my take, good or bad or whatever, no matter what ppl say Go is not ready, its not even in an alpha state to be used by nuts-o-ppl and so time investment imho isnt an issue
<imbrandon> not from this side of the fence
<jcastro> SpamapS: this would be a nice thing to blog about, doing it the juju way, what do you think?
<SpamapS> imbrandon: its your time, do what you want with it :)
<SpamapS> I, however, am not on my own time.. ;)
<imbrandon> SpamapS: right :)
<SpamapS> jcastro: thats short enough... there's no real win for juju there
<jcastro> booo subordinates ftw.
<imbrandon> there already is a juju nfs suborinate and honestly the juju way would be longer:)
<imbrandon> maybe better in the long run for them but longer
<jcastro> it wouldn't be longer, just the first time, after that if there's a relationship in place, automatic
<imbrandon> right, thus long run better
<jcastro> but I see what clint is saying, find something more complicated to care about than NFS.
<SpamapS> the juju way is only better for everything *after* that blog post
<imbrandon> yea, see the bottom of my last blogpost
<imbrandon> wanna help ?
<SpamapS> like after that you probably want to use it to store uploads
<SpamapS> but you also probably want HA
<SpamapS> so juju could help setup drbd
<SpamapS> and help add proper exports for each client you associate
<SpamapS> jcastro: NFS is ripe for juju help.. but the bits this person blogged about are.. frankly.. the obvious things
<imbrandon> oh i'm going to a special place in hell ....
<imbrandon> http://api.websitedevops.com/bin/hello.go
<jcastro> SpamapS: well with juju I don't need the first 4 steps at all
<imbrandon> #!/usr/lib/go/bin/gorun
<imbrandon> package main
<imbrandon> func main() { println("Content-Type: text/html") println("") println("<h1>Hello from GO!</h1>")
<imbrandon> }
<imbrandon> ^^ seat right next to satans daughter at the dinner table
<imbrandon> jcastro: yea you replace those 4 steps with http://juju.ubuntu.com/docs/getting-started.html
<imbrandon> jcastro: to paraphrase SpamapS "deployment is *boring*" and in this case it shows, now "juju set memcache engine=twememcache" for a runing environment is sexy
<jcastro> hey so what do they change
<jcastro> like, do people need to change their apps and stuff
<jcastro> they don't really say "drop in replacement", probably on purpose
<imbrandon> so far nothing , its the infrstucture that is changed
<imbrandon> not the front end
<imbrandon> and the infra changes is what juju is good at :)
<imbrandon> jcastro: yea and one thing about twitter they are good about using standard open source stuff , no embrace extend extenguish, so it makes sense its a dropin
<imbrandon> and they wouldve changed the name more like Riak2 or something :)
 * SpamapS feels like he missed some context
 * SpamapS goes to ponder that at lunch
<jcastro> SpamapS: twitter has a new memcached fork
<imbrandon> SpamapS: you did , i'll fill you in when you get back
<jcastro> http://engineering.twitter.com/2012/07/caching-with-twemcache.html
<jcastro> so the idea is, wouldn't it be cool if you could play with it right now with juju
<imbrandon> SpamapS: and i'm attempting at making the "juju set memcache engine=twememcache"  "just work(tm)"
<jcastro> but it looks like a drop in replacement so I figure a config option on the memcached charm
<imbrandon> there is also a new memcache proxy that sits infront , or can sit infront of memcache/twememcache
<imbrandon> and let it scale in the same way my nginx-proxy does or mysql-proxy does
<imbrandon> guess its name ? heh twememproxy iirc or something similar
<imbrandon> heh
<imbrandon> jcastro: have you looked at all the kick ass projects that twitter pops out tho ? hold on there is a slick list ....
<jcastro> I know, they do release a ton of stuff
<imbrandon> http://twitter.github.com/
<imbrandon> color coded by prog lang even :)
<imbrandon> 30 public repos
<imbrandon> oh wow, you know that blogger dude is a ex-canonical employee
<imbrandon> jcastro: ^
<jcastro> yeah he is
<imbrandon> so he should know of juju
<imbrandon> I'm a Linux geek.  I previously worked for Canonical, which is the corporate sponsor of Ubuntu.  (It's an incredible place to work, and they're always hiring!  Despite the fact that I'm not there any longer, I have nothing but good things to say about them.  They rock.)
<imbrandon> jcastro: btw the NFS isnt a good story, but he is obviously on aws, obviously uses ubuntu, lets see if we can talk to him about the whole Libboo env
<jcastro> true dat
<imbrandon> if its a one man show, or close to it, it may fly
<imbrandon> When Libboo migrated from hosting everything ourselves to using Amazon's Elastic Compute Cloud (EC2), we decided to do a bit of rearchitecting at the same time to make scaling easier in the future.
<imbrandon> ohhh yea
<imbrandon> we need to have a chat with him :)
<imbrandon> you wanna email him ? your better at that kinda stuff than me, but o
<imbrandon> i'll defiately take the torch from there if he bites
<imbrandon> and show him the ropes etc
<jcastro> Yeah I'm on it. :)
<imbrandon> rockin i'm messing with twememcache, i dont think it will be that hard at all
<imbrandon> doing it now, well and a bit of playing with go
<imbrandon> jcastro: when is your next "showoff" day
<jcastro> this tuesday
<jcastro> 7 days from now
<imbrandon> oh yea, we're golden then
<imbrandon> i'll have this tongiht or tomarrow mroning if i hit snaggs
<jcastro> imbrandon: if not depending on our time, etc. we can just blog it when it's ready, I think it's cool enough on it's own to begin with
<jcastro> imbrandon: do you happen to have anything using memcached anywhere?
<jcastro> it'd be cool to see someone putting it through it's paces, etc.
<SpamapS> interesting
<SpamapS> dormando, the current memcached maintainer, is an ex-twitter employee
<SpamapS> I wonder if they disagreed
<imbrandon> heh
<imbrandon> maybe, memcache powsers ALL of twitter
<imbrandon> they use it like most use RDBMS
<imbrandon> as in persistant and for everything
<SpamapS> weird, I know upstream memcached has the slab reallocation
<imbrandon> like user info, tweets etc
<SpamapS> so surprising that they forked that
<imbrandon> yea, i have a feeling it may have been proior or a diff implmentation
<SpamapS> Lock-less Stats Collection
<SpamapS> Why aren't they just feeding this back into memcached?
<SpamapS> this is all t3h awesome
<imbrandon> but the one thing that can be said is its battle tested
<imbrandon> SpamapS: i think they offered
<imbrandon> but upsream was moving to slow or something
<SpamapS> Ah
<imbrandon> i'm thinking its similar to the situation of the new shiney lands in ubuntu first sometimes when really debian should get it first
<imbrandon> same type of vibe
<SpamapS> Yeah I would bet Alan incorporates it rapidly
<SpamapS> Heh, dormando in #memcached already responding to some of it....
<SpamapS> 09:42 <@dormando> dsal: no... they benched something that moves at most one slab per 30 seconds vs somethign that  moves slabs triggered by out of memory events
<SpamapS> 09:42 <@dormando> if they'd bothered to read the documentation I'm not sure why they did that
<SpamapS> reading docs is way less fun than coding
<imbrandon> hehe nice /me joins
<imbrandon> so really the real memcache will be better once a few hotness is incorperated ?
<imbrandon> niemeyer: is there a way ( short of chagning the code ) that I can have the compile dir for gorun use something other than /tmp or $TEMP , like can it use $GOTEMP ?
<imbrandon> i'm trying to get a date with the devils daughter by #!gorun as a cgi script , but apache/nginx want the actual binary to live in the ExecCGI dir so i'd like to set it to like /var/www/cgi-bin/.temp but not the $TEMP evn var as other apache temp files would then live there as well
<SpamapS> imbrandon: I have to think go has a fastcgi library by now
<imbrandon> SpamapS: it does
<SpamapS> imbrandon: or even just a light weight http service
<imbrandon> i like the ability to drop any exec in my /bin dir tho
<imbrandon> its how i run python
<SpamapS> ah
<imbrandon> SpamapS: http://api.websitedevops.com/bin/json.py?callback=cb
<imbrandon> stuff like that, but /bin is setup so anything that output correctly will work
<imbrandon> that way i dont need like a whole django env or ruby env etc, i setup the main server as php, and then /bin as all the "misc" stuff
<imbrandon> that i may want to use like a json.py in that case there etc
<imbrandon> and i have a hello.go that works from the cli "./hello.go" but niemeyer wrote gorun in a way that it compiles the .go with #!gorun on the fly and then replaces the process ( not fork ) with the compiled bin from $TMP/$hostname-$username/binary
<imbrandon> or something similar
<imbrandon> so it almost works except /tmp is not +ExecCGI and i'm thinking that might be a bad call
<imbrandon> :)
<imbrandon> so yea i'm turning a .go into a 1995 .pl script thus the special place in hell
<imbrandon> SpamapS: http://golang.org/pkg/net/http/cgi/ yup :)
<imbrandon> SpamapS: and for completeness hello.go src http://paste.ubuntu.com/1086796/
<imbrandon> heh
<imbrandon> SpamapS: can i tell LP that i want to build the DSC from quantal without downlaoding and dputing it
<imbrandon> for php 5.4
<imbrandon> hrm i guess that would be a recipe , /me looks how those are made on LP
<niemeyer> imbrandon: Hmm
<niemeyer> imbrandon: What are you trying to do there?
<imbrandon> niemeyer: http://paste.ubuntu.com/1086796/
<imbrandon> works great from cli, but i want to use it as a poor mans cgi
<niemeyer> imbrandon: hah :)
<imbrandon> thus the TMP where the gorun bin is compiled needs to live under the same dir :)
<niemeyer> imbrandon: I suggest compiling it in that case
<imbrandon> :)
<niemeyer> imbrandon: Btw, http://golang.org/pkg/net/http/cgi
<imbrandon> yup, ok yea, it was/is more of a excercise than pratical
<niemeyer> imbrandon: It's really not difficult to compile it..
<niemeyer> imbrandon: export GOPATH=$HOME
<niemeyer> imbrandon: mkdir -p $GOPATH/src/mycgi
<niemeyer> imbrandon: cd $GOPATH/src/mycgi; vi main.go; <hack hack>; go build
<niemeyer> imbrandon: You have a binary
<imbrandon> cool , yea that is probably the way to go than try and recreate 1995 anyhow :)
<imbrandon> then makes using external packages much easier too
<niemeyer> imbrandon: Right
<niemeyer> imbrandon: This is a huge plus I appreciate too.. I just copy s3up around, for example, and it Just Works
<niemeyer> (labix.org/s3up)
<imbrandon> yea , lifeless and me were just talking about that aspect of go the other night
<imbrandon> i was going to use it for the OSX juju installer just for that reason
<imbrandon> niemeyer: you might like http://cl.ly/Htjg ^^ mentioned installer
<SpamapS> imbrandon: btw, yes you can. The recipe would just be 'lp:ubuntu/php5' as the branch.. should "just work"
<SpamapS> imbrandon: of course.. if there are build-deps that need backporting.. you are in for more recipes :)
<imbrandon> sweet, i like simple
<SpamapS> I'm wondering if we should have a repo for charms to backport things they need into it
<SpamapS> My nagios charm needs 'pynag' which doesn't exist yet even in quantal..
<imbrandon> yea i think we mentioned that the other day
<SpamapS> ppa:charmers/backports or something like that
<imbrandon> yea
<SpamapS> I wonder if we can be that general though
<SpamapS> Like I don't want to accidentally pull crazy-crack into a nice conservative charm that just wants a few python modules
<imbrandon> sure anything that isnt general enough for the package if its shard can be edited in the chatrm
<imbrandon> charm*
<imbrandon> hrm
<imbrandon> true
<SpamapS> I think its a PPA per backport focus
<imbrandon> i like the idea of a repo per charm but not tied to a person, so others could update it same as the charm
<SpamapS> like, we can have one for PHP54
<SpamapS> and one for nagios
<SpamapS> yeah
<SpamapS> repo per set of charms tho
<SpamapS> repo per interface maybe?!
<imbrandon> yea  ppa:charmers/nginx ppa:charmers/nginx-proxy
<SpamapS> ok I really should have eaten back when I said I was going to eat
<imbrandon> i like per charm, it keeps the namespace nice and clean
<imbrandon> and identifiable
<SpamapS> indeed
<imbrandon> thing about how many things use the http interface
<SpamapS> tho with arch: all stuff we can just embed debs in the charms for that use case
<imbrandon> i'm likeing files in the debs less and less
<SpamapS> which may be what I do just to get this nagios stuff out and done
<imbrandon> other than config templates
<imbrandon> these huge downloads and uploads on deploy kinda suck
<SpamapS> but they're predictible
<SpamapS> far more predictible than ppa.launchpad.net or archive mirrors.
<SpamapS> reliable.. not sure
<imbrandon> they are just as prdictable if they check out from git /bzr
<SpamapS> but they either work, or they don't
<SpamapS> no way, this is a zip file in your s3
<SpamapS> if s3 goes down, the whole world goes down
<SpamapS> on add-unit.. if github is hiccuping.. some charms will fail
<SpamapS> others won't
<SpamapS> but those with embedded files will always work or not work.
<imbrandon> erm
<SpamapS> we actually identified the appropriate way to do this a long time ago
<SpamapS> caching really is what we need
<SpamapS> file-get http://... would cache said file in s3 for the next add-unit
<imbrandon> yea because a pile of files in my charm is so a step back from vcs
<SpamapS> and upgrade-charm would poke that cache for a refresh
<SpamapS> anyway, food
<imbrandon> or just a call to refresh caceh
<imbrandon> ok yea me too
<imbrandon> bbiab
<tncardoso> Is it possible to run multiple machines of the same service? When I try deploying the same charm twice I get the following error: ERROR Service name 'crawler' is already in use
<tncardoso> add-unit
<SpamapS> tncardoso: not quite
<SpamapS> tncardoso: add-unit is multiple machines of the same "service"
<SpamapS> tncardoso: note that they will share configs entirely (so relationships will be established to all machines of a service)
<SpamapS> tncardoso: there's an optional "service name" parameter for deploy.. so 'juju deploy mycharm mycharm-service-id-1' works too
<tncardoso> SpamapS: Ok, so relations are shared
<tncardoso> SpamapS:  In my case it will be ok
<tncardoso> SpamapS: Thanks
<adam_g> jimbaker: ping
<jimbaker> adam_g, hi
<adam_g> jimbaker: hey, was finally messing around with trying to isolate juju usage to a foreign $HOME. i was running into trouble, but it looks like an ssh client issue more than anything juju related.
<jimbaker> adam_g, you do need to have a .ssh directory in this $HOME dir
<jimbaker> otherwise my experience was that it worked well
<adam_g> jimbaker: bootstrapping works, its the ssh client connection to ZK that keeps checking the original $HOME/.ssh
<jimbaker> adam_g, hmmm
<adam_g> i haven't yet looked too deeply into it, but it seems reassigning $HOME isn't enough to change ssh's default
<jimbaker> adam_g, right, not juju, but ssh itself. certainly looking at juju.state.sshforward, looks like os.path.expanduser, etc are used properly
<jimbaker> adam_g, although ssh's docs definitely seem to be clear that it uses $HOME as would be expected
<jimbaker> adam_g, i'll retry on my end
#juju 2012-07-12
<jimbaker> adam_g, ok, if i hide my real ~/.ssh directory, i am running into problems. it's not clear to me this is really necessary to do however
<jimbaker> (juju will report ERROR Invalid SSH key repeatedly)
<adam_g> jimbaker: what i did: cp -r $HOME/.ssh /tmp/new/.ssh ; export HOME=/tmp/new ; juju bootstrap and verified the correct ssh public key was injected to the instance (ssh -i /tmp/new/.ssh/id_rsa.pub ubuntu@host worked)
<adam_g> jimbaker: after bootstrap, 'juju status' ends up launching an ssh session. $OLD_HOME/.ssh/known_hosts is updated and AFAICS $OLD_HOME/.ssh/id_rsa consulted instead of $HOME
<adam_g> so yeah, ends in invalid key
<jimbaker> adam_g, ok this looks like i was able to duplicate what you're seeing
<jimbaker> adam_g, i wonder if this is poorly interacting with ssh-agent
<SpamapS> Ugh, handling departed/broken gracefully really is tedious sometimes. :-P
 * SpamapS decides to see if a good solution bubbles up whilst staring into the abyss
<jimbaker> :)
<jimbaker> adam_g, so far all i can determine is that the real .ssh is certainly sticky
<jimbaker> i tried playing around with starting new instances of ssh-agent, but this didn't solve the problem for me
<jimbaker> adam_g, it seems to me that ssh insists on the real user home directory, likely for security reasons. there are certainly options for controlling this. for example, maybe we could use ~/.ssh/config and the Host directive to better control what's going on
<jimbaker> adam_g, another possibility is to allow for juju to use a specific known hosts file per environment. i had a branch that did that, but it was much more involved in terms of ssh key mgmt. maybe if it just did the known_hosts stuff, that could be reasonable
<adam_g> jimbaker: yeah, i think its a feature of the ssh client more than anything. im able to work around it by tweaking my schroots
<jimbaker> adam_g, sounds reasonable
<jtv> I'm dealing with a user question where I'm not sure the problem they're having is really related to the question.  Could anyone here shed some light on the connection failure here?  http://askubuntu.com/questions/162255/does-juju-really-need-two-nodes
<jtv> It looks similar to this one, but lacks the notice about a deadline being exceeded: http://askubuntu.com/questions/141687/juju-error-server-refused-to-accept-client?rq=1
<jtv> jcastro, are you still here?
<SpamapS> jtv: those are pretty tough questions :-P
<SpamapS> jtv: #maas might have more helpful people
<jtv> Thanks.  My problem though is that it's all a bit too far removed from maas.
<SpamapS> jtv: the questions you pasted are maas specific
<jtv> Juju bootstrapâ¦ it might not even be talking to maas yet for all I know!
<SpamapS> it is
<SpamapS> bootstrap is the only step that talks to maas
<SpamapS> except destroy-environment, which does the inverse :)
<jtv> So any idea what connection it is that is failing?
<SpamapS> jtv: if you ssh into that machine, do you see zookeeper running? Also do you see juju processes running?
<jtv> I don't have access to any of these machines, but when you say âthat machine,â which one do you mean?
<jtv> I'm not very familiar with juju.
<SpamapS> jtv: the second question, juju was able to ssh in
<SpamapS> jtv: it just failed on the ZK connection
<SpamapS> have to go afk for a bit.. but you should be able to ssh to that machine
<jtv> Juju was able to ssh into the system it created, but not to connect to ZK?
<SpamapS> IQinIT-node01 I think
<jtv> It may be helpful to talk about which machine roles are involved.  But go afk first!
<bloodearnest> morning
<hazmat> g'monring
<hazmat> jamespage, just watched your presentation, re q/a unexpected removal of a node is detected, but a new unit or machine is not automatically launched.
<imbrandon> hazmat: re: detailed google storage info, man that kicks absolute arse
<imbrandon> :)
<imbrandon> i already have a google storage account too, just never used it much, might start now :)
<hazmat> imbrandon, me too
<jcastro> hazmat: imbrandon: I wonder if adding cloudflare on top of my stuff being served on the google stuff would actually make it perform worse
<jcastro> after reading hazmat's link it seems they have a bunch of that stuff built in
<imbrandon> jcastro: it does, i actually turned cloudflare off on omg
<imbrandon> jcastro: it keeps the site up if its on rinky-dink hardware but otherwise it throttles as well
<hazmat> interesting
<imbrandon> jcastro: so its actually slower if you have a robust site
<jcastro> imbrandon: yeah I was wondering if 2 CDN things would just end up clobbering
<imbrandon> in other words if you dont have to worry about your shit falling over face first if you get slash-dotted cuz you have google storeage backing or juju nginx scaling ,your better off without  cloudflare
<jcastro> I was kind of hoping their static server config would give me automagic spdy but it's just normal http
<imbrandon> yea the 2 cdn dont really hurt, but their throttleing does, it keeps connections alive so they dont fail but at some point arround ~100 connections the are serialized
<imbrandon> ~100 concurent*
<imbrandon> so like connections 100 to 150 ( 50 connections ) sit and wait for the first 100 to finish
<imbrandon> but are kept alive tcp so they dont fail
<imbrandon> etc
<imbrandon> very cool setup but if you got the backing to do better its best not to have it on
<jamespage> hazmat, hrm - is it not? OK - I must have seen a different behaviour then
<hazmat> jamespage, hmm.. i take it back, it will relaunch the machine
<hazmat> but not as a new unit
<hazmat> which feels a bit questionable...
<gary_poster> hi everyone.  We're interested in using juju as part of an entirely automated process--part of an integration test for a script that configures a machine, fwiw.  Juju is nice as an abstraction that can be pointed to a variety of backends for the test.  This works very well mostly, because juju ssh and juju scp accept all arguments to their wrapped commands, so we can use -o to pass ssh config values to turn off interactive p
<gary_poster> rompts.  However, juju deploy won't let us pass these -o options for when it is trying to connect to the 0 machine initially.  Is there a command-line workaround for this (that is, other than modifying your .ssh/config)?  Alternatively, if I filed a juju bug for this feature would it have a chance of actually being accepted?
<jamespage> hazmat, I used this when I had issues starting instances on an openstack deployment
<hazmat> gary_poster, yes re bug, its inconsistent behavior.. for the other machiens your passing it via  unit name identifiers or via machine id?
<jamespage> anything that went to failed state on build out got deleted by my instance reaper
<jamespage> and juju just started up a new instance for the unit
<jamespage> I think
<jamespage> ...
<jamespage> I'll have to check again
<gary_poster> hazmat, cool, will file the bug then.  we are using machine id
<hazmat> gary_poster, so its only machine 0 that it has an issue, but you can reference other machines by id and it works?
<imbrandon> hazmat: only on deploy it looks like
<hazmat> jamespage, yeah.. i just walked through the code it does appear to restart if the instance id is not present in the provider (which filters out some states)
<hazmat> imbrandon, ?
<gary_poster> hazmat, well, it is only in juju deploy, which under the covers connects via ssh.  when you then use juju ssh or juju scp, even on machine 0, it works fine
<imbrandon> he said "juju ssh -o" works "juju deploy -o" does not
<hazmat> oh.. i misunderstood
<hazmat> that's expected behavior
<gary_poster> hazmat, so no workaround except modifying .ssh/config, and feature bug would not be interesting?
<hazmat> gary_poster, sorry that's not a bug
<hazmat> imbrandon, thanks
<imbrandon> :)
<imbrandon> afk-ish, brb
<gary_poster> hazmat, I didn't expect it was; it was a "hey would this feature/use case (where the use case is full automation of deploy) be something that juju would be willing to support)
<hazmat> gary_poster, just use juju ssh prior to deploy
<hazmat> gary_poster, no
<hazmat> gary_poster, its not something juju would be willing to support
<gary_poster> hazmat, I'm making a mess of this.  :-( Oy
<gary_poster> It is juju bootstrap
<gary_poster> that has the problem
<gary_poster> so juju ssh won't help
<hazmat> gary_poster, even better install a subordinate for your config, ie puppet or saltstack
<hazmat> gary_poster, i don't really understand what the end goal is here.. "part of an integration test for a script that configures a machine"
<gary_poster> hazmat, we want to be able to fully atomate juju
<hazmat> okay
<hazmat> gary_poster, and that means?
<jamespage> hazmat, rest of my answers sound OK?
<hazmat> jamespage, definitely, nicely done
<gary_poster> as part of that we need to call bootstrap (and later destroy-environment) as part of the automation.  bootstrap requires manual ssh accepting of new key in ec2 case (non-lxc generally I think).
<jamespage> hazmat, thanks!
<gary_poster> bootstrap cannot currently be automated, therefore, unless you modify .ssh/config
<imbrandon> gary_poster: thats best handled in the .ssh/config
<hazmat> gary_poster, and the problem with that modifying .ssh/config is?
<hazmat> gary_poster, we do automated tests of charms on multiple providers across ec2, local, etc via juju automation.
<gary_poster> hazmat, imbrandon, the problem is that we'd rather not modify a user's .ssh/config just to run our tests--especially when you are making a blanket statement like "all aws instances for all purposes will have this behavior" which afaik is the only way to do it
<gary_poster> (then you also have to make those statements for other providers)
<gary_poster> (but that's not a practical issue for us right now)
<imbrandon> gary_poster: if users running it != automated
<imbrandon> unless i missed something here
<imbrandon> editing the ci servers $HOME/.ssh/config is much diffrent
<gary_poster> imbrandon, fair enough.  We want the automation to run it, but we want devs to be able to run it too.  charm test example: you want automated tests, but you want people to be able to run the tests locally
<hazmat> gary_poster, so what's automated about this?
<hazmat> a user is running it.. so they have their own ~/.ssh and their own ~/.juju environments.yaml
<imbrandon> gary_poster: sure let them kick it off manuly from the ci server, thats easy in jenkins
<gary_poster> agreed that ci .ssh/config is fine, which is what we are doing
<hazmat> gary_poster, so your delivering what to people to run the tests?
<hazmat> its also unclear why you want the ssh to the bootstrap node on deploy,  in this case.. it sounds like a regular environment, and an automation script to launch the test env and run the tests.
<hazmat> and then possibly a separate front end script for the jenkins runner, that setups the keys and environments.yaml as needed
<gary_poster> hazmat, python callable.  Nice easy story is "set up your .juju config with a special environment named foo, configured to run tests whereever makes sense for you".  Another nice part of that would be "configure that environment to not ask questions when you bootstrap".  A less nice story is "and also modify your .ssh/config to ignore keys from AWS"
<hazmat> so your saying its okay to modify ~/.juju for a user but not okay to modify ~/.ssh ?
<hazmat> just have the script set $HOME
<mgz> gary_poster: what exactly are you wanting to pass? just suppression of the known_hosts prompt or other bits too?
<gary_poster> hazmat, ok to modify .juju and not .ssh: yes, because in .juju you can constrain everything to a specially named environment.  .ssh is blanket for (for instance) AWS.
<mgz> because juju should probably just integrate smoser's cloud-init method of verifying host keys
<gary_poster> mgz: yes, just -o 'StrictHostKeyChecking=no' -o 'UserKnownHostsFile=/dev/null' or similar
<hazmat> gary_poster, this is confusing in terms of the original question.. but the delivery script/callable can set $HOME and setup a private .ssh and .juju as needed
<mgz> okay, so there's a better way of doing that, +/- the amazon delay on supplying console output
<mgz> which is to acutally verify the key reported by the cloud-init during instance boot and insert it in ~/.ssh/known_hosts
<gary_poster> hazmat, ack.  Yes, confusing, I said deploy initially and meant bootstrap and took everything down the wrong rabbit hole, I'm sorry.
<gary_poster> mgz, that sounds very nice
<mgz> I use this for fully automated deployment of launchpad on canonistack
<hazmat> mgz,  so console output scraping for the host fingerprint?
<gary_poster> hazmat, ack that $HOME would work.  I'll propose it.  mgz, that would have to happen in juju though, right?  We, as juju clients, can't do that?
<mgz> hazmat: yup, works really nicely with openstack, may be less good against aws
<hazmat> kees also suggested it at uds.. the only issue with that on ec2 is the delay can be a bit atrocious..
<gary_poster> (The $HOME is not as easy to do as what I proposed, so as a user I'd still prefer the kind of automation mgz suggests)
<mgz> so I heard 4 minute intervals on output update? and I guess sshd is generally up and waiting before the first 4 minutes
<gary_poster> well before, often
<hazmat> mgz, it can take longer, its quite variable
<mgz> so adding wait time after boot wouldn't be great
<hazmat> mgz, re output availability, i've hit 10m b4
<mgz> can poll at 5s intervals with openstack and get nearly live reporting :)
<mgz> hazmat: I guess the alternative is a juju config option, to 1) prompt/die as currently 2) accept any host key blndly per gary's args 3) use smoser's trick
<mgz> and leave which one up to the user
<mgz> the current behaviour when connecting to a new host on an ip you've seen before is obnoxious
<gary_poster> agreed
<smoser> mgz, regarding ssh keys. one thing that would be completely possible for juju is what kirkland's cloud-sandbox does.
<smoser> it generates ssh public/private key on the local system. passes those through user-data to cloud-init.
<gary_poster> I think I'd be ok with waiting for this use case, fwiw
<smoser> connects to the host expecting those credentials, and then destroys them and creates new ones.
<smoser> so the ones that were sent insecurely via user-data are usable for less than a minute.
<mgz> right, was going to say, putting the private key in user-data isn't ideal
<smoser> but its fine if you destroy it right away.
<smoser> and for everything but the bootstrap node, they can then post the public keys to the bootstrap node.
<smoser> and your client can aske the bootstrap node for the new nodes public keys.
<smoser> so you only need the dance once.
<gary_poster> by which I mean, for this use case, I'd be ok with what you'd need to do for mgz's solution: waiting longer than usual for a trustable machine without having user interaction.  For other usecases, less so.
<jml> is it possible to tell juju to look at a different environments.yaml file?
<hazmat> jml, not without $HOME manipulation.. juju does respect JUJU_ENV for named env usage
<jml> hazmat: thanks.
<jml> fwiw, we're experimenting with using juju to fire up our services for integration tests
<jml> how can I tell if a local environment is bootstrapped?
<jml> never mind. destroyed the wrong one :(
<james_w> if you deploy a charm as serviceA, and then deploy it as serviceB, does it does the same copy of the charm?
<james_w> i.e. if you modify the charm between the two deploys, would the second need -u to use the changes?
<jml> is there a valid charm name regex?
<mgz> what's the juju equivalent of:
<mgz> trace.warning("some message to the user about something breaking")
<mgz> trace.log_exception_quietly()
<mgz> basically giving a nice clean error without traceback for common failures, but preserves the traceback in log/verbose mode
<jml> can you use jitsu to watch for destroy-service to complete?
<imbrandon> http://i.imgur.com/x7zO0.jpg  , that is all ...
<hazmat> mgz log.warning, log.debug
<hazmat> mgz with traceback module formatted exception
<hazmat> into the debug
<imbrandon> SpamapS: btw https://launchpad.net/~webstack/+archive/php/+packages
<SpamapS> imbrandon: cool
<imbrandon> i still like the idea of a charmers ppa, but thats for now
<imbrandon> 386 built, amd64 still in queue
<SpamapS> hrm
<SpamapS> there's something very broken with debug-hooks
<SpamapS> sometimes debug-hooks just sits there, and no more hooks execute
<imbrandon> yea and if you exit go luck ever running it again
<imbrandon> on that environment
<SpamapS> exactly
<SpamapS> hazmat: ^^ debug-hooks seems to have something wrong.. flags not cleared or something
<SpamapS> ugh, and restarting the unit agent made it worse
<SpamapS> now no hooks run
<SpamapS> even when debug-hooks isn't running
<SpamapS> 2012-07-12 13:09:45,743 INFO Waiting for unit to come up.
<SpamapS> ah.. you can't relaly restart the unit agent
<imbrandon> man where is the creat project page
<imbrandon> grrr
<SpamapS> front page
<SpamapS> first thing
<imbrandon> oh the one place i no look
<SpamapS> "Register a project"
<_mup_> Bug #966617 was filed: supply high level design documents <juju:New> <juju (Ubuntu):Triaged> <juju (Ubuntu Precise):Triaged> <juju (Ubuntu Quantal):Triaged> < https://launchpad.net/bugs/966617 >
#juju 2012-07-13
<hazmat> SpamapS, knock, knock
<hazmat> SpamapS, re debug hooks, wtf
 * hazmat has been doing travel and presentations
<hazmat> SpamapS, can give you me a recipe to reproduce
<hazmat> debug hooks only effects a single unit
<hazmat> and if your disconnected when the hooks are enabled, the user still need to connect back to end the session
<SpamapS> hazmat: yes I have a recipe, been working on it
<SpamapS> hazmat: juju deploy wordpress ; juju deploy mysql ; juju debug-hooks mysql/0 ; juju add-relation wordpress mysql ; [manually do all the hooks then disconnect] ; juju remove-relation wordpress mysql ; juju add-relation wordpress mysql
<SpamapS> hazmat: when I did it, mysql/0 no longer fired joined/changed hooks (broken still went)
<SpamapS> but I may have the steps wrong
<SpamapS> I'm in the middle of something else entirely
 * SpamapS is *so* close with nagios+nrpe+generic interface
<_mup_> Bug #1024447 was filed: Local provider should provide options for bind mounting as a charm delivery method <juju:Confirmed> < https://launchpad.net/bugs/1024447 >
<negronjl> 'morning all
<imbrandon> heya negronjl
<negronjl> imbrandon: o/
<hazmat> imbrandon, thanks btw for pushing that out :-)
 * imbrandon hoped you would not be mad ... 
<hazmat> imbrandon, i'm hoping that will be enough of a push that i can push the code out for jujucharms.com, and i needed the knudge myself to start that process
<hazmat> imbrandon, not mad at all
<hazmat> happy even
<imbrandon> sweet :)
<imbrandon> yea i actually set it up so that even though yours is python and this is php that the mongo select logic and the views *might* be able to be shared
<SpamapS> set based design ftw
<hazmat> imbrandon, i'm doubtful of that, but maybe, the mongo structure for jujucharms predates charmload stuff
<imbrandon> ahh
<hazmat> they happen to match up though in db and collection names
<imbrandon> heh yea , they are pretty generic "juju" and "charms"
<imbrandon> collisoins are sure to ahppen
<imbrandon> the views are just like django templates tho, like litrally
<imbrandon> http://bazaar.launchpad.net/~imbrandon/jujube/trunk/view/head:/includes/templates/base.html
<imbrandon> http://bazaar.launchpad.net/~imbrandon/jujube/trunk/view/head:/includes/templates/index.html
<hazmat> imbrandon, that's cool, but fwiw jujucharms.com isn't django based, its pyramid based and uses chameleon/zopepagetemplates.
<imbrandon> ahhh, never seen those :)
<imbrandon> might have to check into them later
<hazmat> imbrandon, its a slightly different template style that emphasizes valid html for templates
<imbrandon> yea these are "Twig" templates, i love em
<hazmat> ah.. i was wondering
<imbrandon> Twig for the templates and Slim for the routing
<imbrandon> everything else is home grown
<imbrandon> well and bootstrap for the css :)
<bgupta> hazmat: hello!
<bkerensa> jcastro: yo so nathwill did two charms and I guess didnt get a mug/shirt because it was during UDS? is that still going? he live here in pdx and hopes to meet ya at OSCON
<hazmat> bgupta, greetings
<bgupta> SO was gonn aplay on my mac (I know).  and saw the instructions require brew, but I use macports. Are there install instructions somewhere that don't require brew?
<hazmat> bgupta, how late did you guys stay at the bar?
<imbrandon> bgupta: yup
<imbrandon> bgupta: yup one sec, just not got them put up yet, give me a moment
<bgupta> hazmat: pretty late.. guessing 11:30ish..
<imbrandon> bgupta: https://github.com/downloads/jujutools/jujutools.github.com/Install%20juju.zip
<imbrandon> that should give you http://cl.ly/Htjg
<hazmat> bgupta, its pretty much straightforward to just use virtualenv, once you get python-zookeeper installed.... outside of that its just twisted, yaml, txaws, and bzr branch lp:juju && python setup.py develop
<imbrandon> bgupta: the only pre-req is XCode ( gcc )
<imbrandon> hazmat: there is a static zkpython module i use on the mac , makes it MUCH easier
<imbrandon> specially since ZK really isnt needed on the client for mac ( no lxc )
<hazmat> imbrandon, yeah.. zc-static-zookeeper does the magic
<imbrandon> yup yup
<hazmat> the mozilla services folks are maintaining it
<imbrandon> bgupta: https://github.com/downloads/jujutools/jujutools.github.com/Install%20juju.zip
<imbrandon> doh
<m_3> new release of jitsu otw now... lemme know if there's anything else pending
<hazmat> m_3, thanks.. that should help folks asking about deploy-to/import/export
 * imbrandon waves to m_3 
<imbrandon> yea i havent got to try any of that yet, /me should do that today
<imbrandon> i'm way way behind on my jitsu foo
<m_3> I think I might be more excited about import/export.. some cool ramifications there
<m_3> but we'll see
 * m_3 waves back
<hazmat> m_3, imbrandon i think it would be nice if import could also bootstrap the new env if its not already bootstrapped, atm it requires the new env to already be running/bootstrapped.
<m_3> hazmat: agree
<hazmat> but even then its nice to be able to jitsu export -e dev | jitsu import -e stage
<m_3> yup... that's the magic sauce
<m_3> I'll be trying out variations of that this weekend
<imbrandon> ohhh yea
<imbrandon> good call
<negronjl> m_3, hazmat: ... and both of those features sailed through the review process with absolutely no drama either :)
<m_3> unhuh
<imbrandon> well it is jitsu
<imbrandon> :)
<SpamapS> what review process? ;)
<imbrandon> heh
<m_3> hey... very careful review process... "Is it cool?"  "Is it twisted?"
<imbrandon> bgupta: feedback on that installer is more than welcomed too, only about 2 oth ppl have used it so far
<imbrandon> i havent really "announced" it yet
<imbrandon> :)
<bgupta> sure..
<imbrandon> oh and i have NO idea if it work on 10.5 or lower, i only tested on 10.6 .7 and .8
<imbrandon> fyi
<bgupta> first feedback is that it "seems" to install in the same directory structure that Macports uses
<imbrandon> it should use the system dirs, as it realy only runs "sudo python setup.py install" once it verifies prereqs
<imbrandon> you can see the exact commands its running after words in /tmp/juju-installer.sh
<imbrandon> or similar ( sorry not on OSX atm to check )
<imbrandon> but the meat of it is just a gui on that shell script
<imbrandon> but yea if you have python from macports or fink etc it will use those etc
<imbrandon> mmmm .... XCode 4.4 GM Seed is on the Apple Developer downloads now , that means OS X 10.8 GM Seed is also there somewhere burried , and that means only a few days Until 10.8 is officialy released
<bgupta> imbrandon: mmm.. thinking that we should add to macports repo, for macports user. (It's picking up easy_install from system python, but then using macports python for the actual juju install
<imbrandon> bgupta: sure, but that means your PYTHONPATH or python in general is not setup corectly on your system
<hazmat> m_3, looks like the upload failed.. https://launchpadlibrarian.net/110044309/upload_3949379_log.txt
<imbrandon> bgupta: as its using whats in the $PATH and python and easy_install should both be from the same python install in the $PATH or you have lots of small errors
<bgupta> probably not. Python isn't a language I work in and is probably only pulled in macports wise to satisfy deps for other macports packages
<imbrandon> bgupta: ahh yea after you install python from macports or fink or brew you need to do some $PATH magic manually that is normally only in the Readme burried
<imbrandon> in /etc/profile , to make everything happy
<m_3> hazmat: yeah, I'm trying to figure out what happened
<imbrandon> bgupta: short awnser for the moment to fix you up is ...
<imbrandon> bgupta: edit the /tmp/juju-installer.sh by hand and where it calls easy_install , make it use the full path for the one you want /opt/bin/... etc
<imbrandon> that will fix you up for now, but i would look into fixing your python correctly for the long run
<imbrandon> oh once you edit the shell script , run the shell script, as if you run the GUI again it will overite it
<imbrandon> heh
<imbrandon> but really a macport formula would just be the contents of that file as well :)
 * imbrandon stoped using macports about 2 years ago when it stoped getting updated tho
<m_3> hazmat: I think it's good... looks like there were two builds triggered in a row.  first passed, second failed.  the ppa appears to have it
<hazmat> m_3, cool, thanks again for taking care of that
<m_3> SpamapS: any clue why the uploaders are different in juju-jitsu on https://launchpad.net/~juju/+archive/pkgs?field.series_filter=
<imbrandon> once kicked off by recipy and one manually ?
<imbrandon> hazmat: btw http://jujube.websitedevops.com/raw <-- the charmload schema
<hazmat> imbrandon, yeah.. i check it out, its pretty similiar
<imbrandon> cool cool
<SpamapS> m_3: the uploader is the owner of the recipe in most cases
<SpamapS> m_3: so perhaps you accidentlaly tok over the recipe?
<m_3> SpamapS: but it's different between series in the same build request
<m_3> recipe ownership still looks like juju-hackers
<m_3> afaict it looks like it built twice, the first passed for all (O,P,Q) but failed the second time (unsurprisingly b/c of orig tarballs)
<SpamapS> ahh
<SpamapS> yeah I just saw the failed ot upload
<SpamapS> m_3: not sure, but I don't sense any disturbance in the force.. ok I think you are
<m_3> I must've kicked it off twice accidentally
<m_3> yeah, it looks like the ppa is good (tested it for precise)
<sn_bsg> so we don't really know what we're doing, but we are trying to set up openstack using juju, and the nova-volume charm seems to be missing (the juju charms page agrees). so, um, what does that mean, and should we expect it to come back?
<m_3> sn_bsg: I'm not sure what's going on there... the charmstore seems to not be happy with that one.  I'd recommend grabbing it directly from http://jujucharms.com/charms/precise/nova-volume (or https://bazaar.launchpad.net/~charmers/charms/precise/nova-volume/trunk/files)
<m_3> sn_bsg: your deploy for that one will need to change to specify a local repository... i.e., `juju deploy --repository ~/charms local:nova-volume`
<m_3> (assumes it's in ~/charms/precise/nova-volume)
<marcoceppi> imbrandon: does Jujube have an API endpoint for the charm data?
<negronjl> Who's reviewing today ?
<SpamapS> negronjl: not sure but I'm looking at your haproxy MP
<negronjl> SpamapS: nice ...
<negronjl> SpamapS: let me know what we broke :)
<SpamapS> negronjl: next official reviewer is m_3 next Tuesday
<SpamapS> but I bet he'll be busy w/ oscon stuff
<negronjl> SpamapS: I was hoping for a charitable soul to review the haproxy MP :)
<SpamapS> negronjl: lots of new knobs :)
<negronjl> I don't think it would be appropriate for me to review my own code :D
<SpamapS> negronjl: not sure I see the value of setting the user/group
<negronjl> SpamapS: But it is also backwards compatible
<negronjl> SpamapS: All the switches are there to satisfy ( among other things ) Canonical/IS
<negronjl> SpamapS: Trying to make it so they can use it
<negronjl> SpamapS: plus, I figured since, I am making so many switches ... mind as well go switch crazy :)
<SpamapS> ah
<SpamapS> I like most of the others
<SpamapS> very glad you have monitoring ability
<SpamapS> thats huge
<SpamapS> to be able to toggle it on/off
<negronjl> ...and with ssh proxy, you can monitor the thing ( it also creates a random password if you leave it as changeme )
<SpamapS> I'm a little puzzled by services
<negronjl> it's a bit overwhelming but, the thing on it is the ability to create multiple services
<negronjl> ie:  my_service:80 my_other_service:443
<negronjl> I take that argument as a string and then parse ( in code ) as yaml....
<negronjl> that gives me a list of services
<SpamapS> but how do you then assign backends to those?
<SpamapS> negronjl: the python in hooks.py reads really nicely btw
<negronjl> SpamapS: thx ... PITA to make it PEP8 compliant
<SpamapS> I'm about to unleash some nagios stuff that I think will horrify people with its pythonic insanity
<negronjl> too bad pylint still thinks it's crap though ... lol
<SpamapS> tempted to rewrite a lot of it for a *third* time just so its readable
<negronjl> oooh...nagios ... was thinking that we could use a nagios sub for this haproxy thing
<SpamapS> negronjl: a lot of this would be really handy as charm helpers btw
<negronjl> SpamapS: working on a python charm helpers already too :)
<SpamapS> negronjl: nagios sub?
<negronjl> SpamapS: I thought so too
<SpamapS> negronjl: note that there are already some python charm helpers in progress
<negronjl> SpamapS: nagios subordinate to attach to haproxy so it can be monitored
<SpamapS> stalled on my insistance that they package their python modules :)
<negronjl> SpamapS: Who's working on them
<SpamapS> negronjl: I have an NRPE sub right now
<SpamapS> negronjl: and I'm developing a generic monitoring interface so charms can just declare the things they want monitored
<negronjl> SpamapS: re: NRPE cool ... I'll check it out ... re: python charm helper .. who's working on that .. woudl like to contribute
<negronjl> SpamapS: nice
<SpamapS> negronjl: yellow squad did it I think
<negronjl> SpamapS: I'll wait for that before doing any monitoring thing
<negronjl> SpamapS: ok...thx
<negronjl> SpamapS: wrote thos "covenience" functions with the intention of putting them in a helper somewhere
<negronjl> s/thos/those
<negronjl> SpamapS: the services option in config.yaml could be used like this: http://pastebin.ubuntu.com/1090650/
<SpamapS> negronjl: honestly, the ones you have here are great.. I think they may have abstracted too much
<negronjl> SpamapS: The idea on that was to not to have much code duplication so if ( or when ) I had to change logic, I wouldn't have to change it in multiple places.
<negronjl> SpamapS: It just makes things easier for me ...
<negronjl> SpamapS: plus ... it's easier for my simple brain to deal with smaller chunks of code :)
<SpamapS> https://code.launchpad.net/~gmb/charm-tools/add-charm-helpers/+merge/96204
<SpamapS> negronjl: the issue is that they made shelltoolbox its own thing.. and I think it would be better to just get rid of that and call subprocess directly in private methods
<SpamapS> because I keep failing to find the time to package shelltoolbox
<SpamapS> negronjl: these are actually different entirely.. so they'd mesh well with your stuff
<negronjl> SpamapS: I just read the code ... interesting ...  I'll see about using that in the future and providing some of my functions as well
<SpamapS> negronjl: hrm.. this service_name thing.. Hrm..
<negronjl> SpamapS: err... which one ?
<SpamapS> negronjl: the thing you added to http as an optional field
<SpamapS> I think thats abusing the interface a bit
<negronjl> SpamapS: Are you in the hook or config.yaml ?
<SpamapS> negronjl: hooks.py
<negronjl> SpamapS: checking
<SpamapS> negronjl: I get now how services works..
<SpamapS> and why its done that way
<SpamapS> just not sure if I like how thats being used
<SpamapS> I'd rather see services created dynamically
<SpamapS> perhaps there's a reason you don't want to do that?
<negronjl> well ...
<negronjl> the services are being created dynamically
<negronjl> the service bits ( the listen stanza ) for each service is written as a separate chunk as there is no way for config-changed to know about the relation information
<SpamapS> well thats not entirely true. :)
<negronjl> so, to work around that, I have the services being written to disk and the read ( from config-changed )
<SpamapS> config-changed can be deferred until relations are established
<negronjl> in config-changed, i was getting a trace about not having relation information
<SpamapS> or rather, relation data is always available
<SpamapS> did you not use 'relation-ids' ?
<SpamapS> thats the key
<SpamapS> its new..
<SpamapS> but its really powerful
<negronjl> didn't use relation-id ..
<negronjl> I guess I'm outdated ... tell me how relation-id would have helped ?
<SpamapS> you can access relation info from any hook
<SpamapS> as long as you pass in the relation id
<negronjl> there is no relation information on first run of config-changed
<SpamapS> right
<SpamapS> so in that case, you just exit 0
<SpamapS> then after each relation hook, you run it again
<negronjl> I'm doing something somewhat similar....
<negronjl> I wrapped it around try/except
<negronjl> and pass
<negronjl> .... and then move it along
<SpamapS> yeah I think I see how that works
<SpamapS> this is sort of the old way, but its quite reliable. You're just writing what you have to disk, and then generating configs from that
<SpamapS> I'm not questioning that.. but rather why the 'services' thing is needed
<mthaddon> SpamapS: do you mean why we're specifying it in the config.yaml rather than on the command line to add new services as needed?
<SpamapS> negronjl: what I'm trying to understand (please bear with me my head is pounding from lack of caffeine.. ) is why you can't just generate a service that isn't around...
<SpamapS> hooks.py line 457
<negronjl> SpamapS: checking
<SpamapS> also I wouldn't call it service_name
<SpamapS> but 'http_host'
<SpamapS> or 'endpoint_host'
<SpamapS> and I would generate a service per unique endpoint_host
<SpamapS> but maybe you have a good reason not to do that
<negronjl> SpamapS: service_name is different than the host-name
<negronjl> SpamapS: service_name is just an arbitrary name
<negronjl> SpamapS: listen <service_name> <endoint/host/ip>:<port>
<negronjl> SpamapS: just making sure we are talking about the same thing
<SpamapS> right, I'm saying that it should be on the *backends* not defined by the config.yaml option
<negronjl> SpamapS: If I do it on the backends ( which was our initial thought ) I would brake backwards compatibility with the existing haproxy and that would be bad
<negronjl> SpamapS: also, having control of what services are managed in the service is something that seems to be valuable
<SpamapS> like, 'juju deploy wordpress --constraints='mem=500M' wpskinny ; juju deploy wordpress --constraints='mem=2G' wpfat ; juju set wpskinny endpoint-host='www.mywebsite.com' ; juju set wpfat endpoint-host='www.mywebsite.com'
<SpamapS> Then any load balancer that I relate those two services to will listen on www.mywebsite.com
<SpamapS> Now, if I leave it off.. we can talk about ways to split those out...
<SpamapS> negronjl: it can stay optional can't it?
<SpamapS> negronjl: like if its not provided it just goes in the "default" server
<SpamapS> negronjl: I guess my point is that service_name seems a bit arbitrary
<negronjl> SpamapS: give me a sec... let me catch up :)
<negronjl> SpamapS: ok ... re:service_name it is arbitrary
<negronjl> SpamapS: the service_host could be specified or "deduced"
<mthaddon> SpamapS: sorry, how is it arbitrary? you're using that as a way of grouping a service, and then the backend just has to specify which service_name it wants to connect to
<SpamapS> I don't like arbitrary in this case because it means now every loadbalancer charm has to map it. Hostname is more natural... don't you think?
<negronjl> SpamapS: the service ( read listen stanza ) parameters are something that seems to be good to know before deployment
<SpamapS> I'm just wondering if there's ever a time when that is not the desired listen hostname
<SpamapS> I actually have to run in a minute
<negronjl> SpamapS: ok ...
<negronjl> SpamapS: service_name is arbitrary in the sense that it can be whatever service name you want ...
<negronjl> SpamapS: service_name is not being used as an endpoint ....
<negronjl> SpamapS: I do get the endpoint angle but, I haven't seen haproxy used in such a manner before so I didn't think of attaching a hostname to the service name
<negronjl> SpamapS: because it could collide
<SpamapS> mthaddon: indeed, its a good concept. I'm just worried about using arbitrary things in the very generic "http" interface... lets consider the non loadbalancer case.. like, a security proxy... I haven't thought through what it would do or whether or not it would be useful
<negronjl> SpamapS: if you have www.mysite.com for both 80 and 443
<SpamapS> negronjl: haproxy can do "name based" virtual hosts in http mode
<negronjl> SpamapS: but, those would be specified in the options
<negronjl> SpamapS: which would also be different from the service_name
<SpamapS> negronjl: I'm going to think a lot about this over the weekend, and I may even try to add it to something like mod_security or squid... just to see if it makes sense and doesn't cause problems to implement/not implement
<mthaddon> yep, that's my understanding too
<negronjl> SpamapS: by having service_names decoupled from hostnames, we provide more flexibility .
<SpamapS> yeah thats exactly what I'm worried about
<negronjl> SpamapS: ack ... it's a big and hairy change so, more time to play with it will be needed ...
<SpamapS> flexibility means more things to break
<SpamapS> negronjl: the rest of it thus far looks fantastic
<SpamapS> anyway, I'm late.. ttyl
<negronjl> SpamapS: ... the only thing that could break with arbitrary service_names would be collissions on the services ( two services with the same names )
<negronjl> SpamapS: ttyl ..
<mthaddon> negronjl: oh, good point - I'm not sure we'd deal with that too well currently
<mthaddon> we are kind of relying on people not to shoot themselves in the foot... I'm not sure how far we would want to go in protecting from that
<negronjl> mthaddon: service_name collisions ?
<mthaddon> yeah
<mthaddon> but we do do a config check and bail out if it fails, so that might guard against service_name collisions
<negronjl> mthaddon: we really can't do much about it....if you declare two services with the same name...the second entry will corrupt services_dict and bail
<mthaddon> yep
<negronjl> mthaddon: or .. the second service will override the first
<negronjl> mthaddon: leaving you with just one service as opposed to the desired two
<mthaddon> yeah, I think you're right - it'll just overwrite the first as we loop through creating the dict
<negronjl> mthaddon: yup ... when we read the services ( the yaml thing from config.yaml ), it comes as a list
<negronjl> mthaddon: once we parse that out to services_dict ... we'll override the first with the second
<negronjl> mthaddon: indeed bad things could happen ( all your servers in the same service ).
 * mthaddon nods
<negronjl> have a good weekend all
<mthaddon> o/
#juju 2012-07-14
<hazmat> bcsaller, any progress on bug 1006553
<_mup_> Bug #1006553: local provider machine agent uses 100% CPU after host reboot <juju:In Progress by bcsaller> < https://launchpad.net/bugs/1006553 >
<bcsaller> hazmat: I linked the branch to the bug, minus some additional testing  it does deploy on local w/o upstart. I've been seeing if there was anything I could do to improve the overall experience though
<hazmat> wow.. going through the commits, its like everything but the bug
<bcsaller> hazmat: huh? the service class handles the no restart
<hazmat> bcsaller, just looking at the tmp dir and mount checks and the desktop notification stuff in there as well
<bcsaller> there were other areas we wanted to improve before that bug was entered
<imbrandon> marcoceppi: sorry for the late reply, was afk alot longer than i thought I would be, anyhow there is no API for the data as of yet but I had planed on reserving the /api/* routes for such an API if nothing else just so jujube could make ajax calls back to its self
<imbrandon> marcoceppi: i had also thought about using Twigs conditional layouts feature to just provied any of the views in json too
<imbrandon> marcoceppi: like ...
<imbrandon> {% extends request.ajax ? "base_ajax.html" : "base.html" %}
<imbrandon> or similar
<imbrandon> so if your too school for cool, and your treated like a fool, you can choose to let it go, we can always party on our own ... so raise your glass if you are wrong, in all the right ways ...
<dorefiend> hello, I've had no luck running the "mysql/wordpress" example on 12.04 using lxc.  After updating my firewall, and libvirt group stuff, I'm currently stuck at "pending" on mysql.  I found the following in the logs: unit.py: error: unrecognized arguments: --nodaemon --session-file /var/run/juju/unit-mysql-0-agent.zksession
<SpamapS> dorefiend: ah
<SpamapS> dorefiend: are you, by any chance, using oneiric instead of precise, as your default-series
<SpamapS> ?
<dorefiend> SpamapS: Yes
<dorefiend> Sorry for the long delay in responding, was afk
<dorefiend> I've updated my configuration and I'm cleaning up/restarting
<hazmat> dorefiend, that needs a destroy-environment && bootstrap post changing default series
 * hazmat updates default series in the docs
<dorefiend> yeah, I figured
<dorefiend> looks like the template is almost built
<dorefiend> it got past the unit failing
<dorefiend> woot!  mysql is running
<dorefiend> thanks for the help!  I'm officially dangerous
<SpamapS> hazmat: perhaps we should actually refuse to bootstrap with default-series == oneiric and juju-origin == distro, since we know for sure it will not work.
<imbrandon> SpamapS: maybe generalize it a bit and use the --version somehow so it could possibly be aplied to other know incompatable environment configs ( as even a deploy later of cs:oneiric/blah with juju-origin==distro i asume would fail as well ? )
<imbrandon> dunno just thinking out loud a bit
#juju 2012-07-15
<hazmat> SpamapS, ? know it won't work?
<hazmat> SpamapS, it won't if the host is precise true
<hazmat> and origin == distro.. that sounds reasonable
<koolheadd17> SpamapS, good morning
#juju 2013-07-08
<jamespage> mgz, do you happen to know if a change/assignment of a public-address/floating-ip get notified to a charm in some way in the context of the openstack provider?
<yolanda> hi, i need to trigger some change when i assign a public ip to an instance. Is there any hook i could use for that, or can you give advice on some workaround? I've only thought in setting a config var with that ip, to trigger a config-changed , but i don't see it very usable
<henninge> Hi!
<henninge> What's with the "use of closed network connection error" when doing "juju bootstrap"?
<henninge> juju 1.11.2
<henninge> It all was working fine on Saturday ...
<mgz> jamespage: juju is completely ignorant of ip changes currently, it's one of the things I'm working on fixing this cycle
<jamespage> mgz, urgh
<jamespage> ok
<mgz> it's also not easy to work around at a charm level, though I think is may have a few magical bits they've done previously
<henninge> Ah the error is gone now. I played around with deleting the control bucket which did not help at first but seems to do now.
<melmoth> when  a unit is added to a service, wich hooks are supposed to be run ? i think i onluy see a relation-changed, i was expecting to see a unit-added hook of some sort
<marcoceppi> melmoth: you mean when you juju add-unit?
<melmoth> yes.
<melmoth> i want soemthing to be trigged in the other units when a unit is added.
<melmoth> marcoceppi, looks like config-changed is all that is triggered...thats all right... as long as i can get a list of all the units associate with the current service
<marcoceppi> melmoth: you can use a peer relation, which is fired when a new peer (unit) is added/removed from a service
<melmoth> i dont see any attempt to fire soemthing in the first unit of the service charm.log
<marcoceppi> melmoth: juju-core?
<melmoth> nope. pyjuju
<marcoceppi> melmoth: Speculating, as I know the peer relation works on both, but if there's no peer relation listed in the metadata.yml file juju might not even attempt to describe looking for one in the logs
<melmoth> marcoceppi, indeed, i added a peer definition in the yaml, now when a new unit is fired it try to call peer-relation-joined. Thanks
<marcoceppi> melmoth: excellent!
<melmoth> how can i list all unit belonging to a service ? i try related_units() from charmhelpers without success: Calling relation related method without relation context: <class 'juju.state.hook.HookContext'>
<rick_h_> jcastro: thanks, mysql showing up in the category now.
<ahasenack> melmoth: you need to call relation-list in the end. That takes a relation-id argument
<yolanda> hi, i'm writing a charm and i need some event to detect when a public ip has been associated, because some config files depend on it. Is there any hook i could use?
<ahasenack> melmoth: the relation-id is between services
<ahasenack> melmoth: so to grab all relation-ids for a relation name you call relation-ids first
<marcoceppi> melmoth: you can't call it from just "any" hook without providing some context either
<ahasenack> melmoth: so, call relation-ids <relation-name>, then loop over the result calling relation-list -r <rid> for each one
<marcoceppi> yolanda: currently there's no way to trap this event in Juju (from my understanding)
<marcoceppi> yolanda: what you can do instead is create a configuration parameter in config.yaml, say `public-ip` that people can set
<yolanda> marcoceppi, that's what i thought but i didn't find it very usable... i mean, this can be automatic
<yolanda> you assign a public ip, and you have to remember to set the config var
<marcoceppi> yolanda: It can be, if it's not already a bug should be opened in juju-core. The problem is each provider's public ip assignment mechanism varies greatly and not all providers even expose public ip to it's units
<yolanda> i see
<yolanda> marcoceppi, so should i open a bug to request it?
<marcoceppi> yolanda: certainly!
<yolanda> and in the meantime do the config workaround
<marcoceppi> yolanda: exactly. The config parameter will "just work" for all providers, but it might be more trivial to incorporate public ip address.
<marcoceppi> yolanda: there is a `unit-get public-address`, but I don't think that gets updated if you assign it a permenant IP, only gets the ip/address you were provisioned with
<yolanda> marcoceppi, i did a try, and it's updated. But the problem i have, is i don't get any event to detect when the change has been done
<marcoceppi> yolanda: Oh, I see your problem
<yolanda> if i trigger a config-changed for example,with some other var, unit-get public-address is ok
<yolanda> but i need to process the event on time
<marcoceppi> There's a bigger bug at play, some kind of provider-state-changed hook
<marcoceppi> Where you can trap events outside of juju, like getting a new ip address
<yolanda> marcoceppi, great, and it's on progress then?
<marcoceppi> This might be an iteresting discussion for the juju mailing list instead, to see what people think of a feature like this
<marcoceppi> yolanda: not that I know of
<marcoceppi> I mispoke, there's a bigger topic of discussion other than just getting the public ip
<marcoceppi> not that there's already a bug for this
<yolanda> oh, i misunderstood :)
<marcoceppi> I think it could probably exist as a hook, however I'm not sure if everyone would share that opinion. If you mail the idea to juju@lists.ubuntu.com it'll probably spur some good discussion on how to handle events of this nature
<yolanda> sound like a good idea
<yolanda> i already filed a bug anyway
<marcoceppi> excellent
<melmoth> related=[u'ntpmaster/2', u'ntpmaster/1'] \o/
<jamespage> yolanda, mgz said earlier they are looking to improve this in juju-core this cycle
<jamespage> so I think the public ip approach via config is best for the time being - even if it sucks badly
<jamespage> melmoth, nice one!
<yolanda> jamespage, ok, i'll do that workaround, isn't that bad :)
<MarkDude> jcastro: some good news on my side- I had to doublecheck Juju license would work with Fedora's limitations
<MarkDude> It will. For us to get access to code do we have to sign the Canonical CLA? My guess is no.
 * MarkDude was made aware that the license COULD be changed in the future- and at that point we would have to fork
<MarkDude> But we are good, and can see about working on this and getting it INTO the Fedora repos
<jcastro> the CLA is for contributing, not using
<MarkDude> Yep, that was my guess
<MarkDude> http://www.uncuartotech.com/ we plan on trying to use it with these cooll folks
 * MarkDude is wondering if we would actually make any code you folks could use- most of what we do would be centered on getting it to work with Fedora
<MarkDude> But, if we create sumthin' you might want, we would of course make it available in the spirit of FOSS
<MarkDude> And we are cleared on doing that too :)
<MarkDude> The legal thing appears to be a hassle - but I got a response to my question from legal- in less than 5 minutes, sometimes it may even take an hour :)
 * MarkDude is a bit sad to be missing OSCON for the 1st time in 8 years or so. I was looking forward to seeing the newest Charm school
<MarkDude> What is the most recent video or walkthru for creating charms? Im not sure some of my people UNDERSTAND how awesome Juju is in function AND to lower the entrance to getting folks into the concept of being a dev :)
<marcoceppi> adam_g: Do you have any plans to package juju-deployer anytime soon?
<marcoceppi> I'm trying to figure out if it's best to just wait, or to just embed juju-deployer in what I'm working on now
<yolanda> hi, having this problem suddenly when deploying my charm, without any code changes from the last working version: http://paste.ubuntu.com/5855747/
<yolanda> any idea?
<marcoceppi> yolanda: what's the first three lines of hooks/install look like?
<marcoceppi> Just out of curiosity
<yolanda> #!/usr/bin/python
<yolanda> import os
<marcoceppi> huh, I'm not sure why you're getting that error
<yolanda> i'll redeploy
<JoseeAntonioR> hey guys, who's reviewing charms today?
<marcoceppi> JoseeAntonioR: Mims and I. I've got your charm on my list for reviewing today since I didn't get to it last week
<marcoceppi> (Though officially mims is on review)
<JoseeAntonioR> marcoceppi: great, thanks :)
<JoseeAntonioR> wanted to know as I'm willing to push another charm that's dependant of postfix being approved
<marcoceppi> JoseeAntonioR: go ahead and throw it in the queue!
<marcoceppi> just make sure you mention it depends on postfix
 * JoseeAntonioR goes for it
<JoseeAntonioR> done :)
 * MarkDude <3 cooperation and sharing of code and ideas. 
<melmoth> can i get the up of the hostname of a machine if i know its unit name ? (and nope, it s not the current machine the charm runs on)
<melmoth> grmblblb, keyboard, ifingres... i meant can i get the IP OR the hostname
<marcoceppi> melmoth: only if it's called upon in a relation
<melmoth> then i need to store somewhere the name of all peers in a unit.
<melmoth> i need to get the list of all the peers each time i need to rewrite a conf file
<marcoceppi> melmoth: you'll probably want to record them to a file then
<melmoth> wich can be when a a unit join in, or out, but also if the config change.
<melmoth> in a file...
<melmoth> bouhou
<roaksoax> y
<michaelb> I am attempting to upgrade charms I have installed and keep running into the following exception: ERROR 'ServiceRelationState' object has no attribute 'role'
<michaelb> I found bug filing #1185198, but nothing else.
<_mup_> Bug #1185198: ERROR 'ServiceRelationState' object has no attribute 'role' <juju:New> <https://launchpad.net/bugs/1185198>
<ahasenack> michaelb: I don't know, but that looks like a py-juju error, not juju-core, which is the current focus of development
#juju 2013-07-09
<mpae> hello
<mpae> is anyone using juju with openstack?
<mpae> by that I mean using openstack as the environment...
<hloeung> mpae: yes, I am
<mpae> hloeung: question, if you don't mind...  I'm getting a "could not find AWS_ACCESS_KEY_ID" error when I try to bootstrap, where did you find this?
<mpae> or do you already have amazon credentials...
<hloeung> mpae: from the sound of it, it sounds like you're using the Go version of juju?
<mpae> hloeung: actually I'm not...  I had that problem even when trying to use maas with the Go version
<mpae> so I switched to the non Go version early on
<mpae> err the python version :)
<hloeung> mpae: hmm interesting. What does 'juju --version' return?
<mpae> juju 0.7
<jose> hey marcoceppi, did you get to take a look at my charm/
<jose> ?
<mpae> hloeung: I'm also getting a warning about OpenStack identity service not using secure transport, I don't know if that's significant to this
<hloeung> mpae: hmm, so looking at one of the environments we've deployed using the Python version. AWS_ACCESS_KEY_ID isn't set
<mpae> hloeung: juju -v bootstrap shows that it's using "auth-mode 'userpass'"
<mpae> hloeung: I followed the instructions provided here https://juju.ubuntu.com/docs/config-openstack.html to configure the environments.yaml
<mpae> hloeung: is there a different guide I should be following for the python version?
<hloeung> mpae: I'd try remove auth-mode
<mpae> hloeung: but I don't have that anywhere in my environments.yaml
<marcoceppi> jose: not yet
<mpae> hloeung: do you have the same options specified in your environment as what's specified in https://juju.ubuntu.com/docs/config-openstack.html ?
<jose> ok :)
<mpae> hloeung: and are you using https or http for the keystone url?
<hloeung> mpae: here's an example of my juju environment - http://pastebin.ubuntu.com/5857107/
<hloeung> mpae: HTTPS for keystone
<mpae> hloeung: thanks for that, I see you're using openstack type rather than openstack_s3
<mpae> hloeung: you also don't have the keystone url, is that a copy paste ommission?
<hloeung> mpae: the environment variable OS_AUTH_URL sets my keystone URL
<mpae> hloeung: I see, I have that set as well, so I guess I don't need it
<mpae> hloeung: I mean I don't need it in environments.yaml
<hloeung> mpae: right
<hloeung> mpae: let me know how you go
<mpae> well, different error now :)
<mpae> hloeung: different error now but progress :)  I'm going to try digging in to this a bit, thank you
<hloeung> mpae: heh cool :)
<mpae> hloeung: what version of openstack are you using?  the examples on the juju website say use openstack_s3 for and openstack deployment
<mpae> this would be so much easier of the juju credentials download in horizon was working :'(
<mpae> dang...  all I had to do is download the ec2 credentials and add the ec2rc.sh to my profile
<mpae> now it no longer complains about AWS credentials
<mpae> and I can use openstack_s3 provider type just fine
<_mup_> Bug #1199205 was filed: juju boostrap does not work if keystone url does not have trailing / <juju:New> <https://launchpad.net/bugs/1199205>
 * davecheney facepalm
<AskUbuntu> simple MAAS setup in ubuntu 13.04 and virtual box | http://askubuntu.com/q/318032
<melmoth> I need a way to get a list of all units peers. I can get info about new one in peer-relation-joined all right.
<melmoth> but i need this information anytime, so i have to store those peers somewhere.
<melmoth> how can i "lock" this somewhere for both reading and writing so i m sure i change thing atomically there ?
<melmoth> if i dont use any locking mechanism i loose data because when i add n unit, i end up with n hooks changing the data there without tacking care of each others.
<melmoth> is there a way to get either a write _and_ read lock in python ? (i only manage to make a write lock with fcntl but i dont undertsdant how to block reading too)
<melmoth> or a thread like semaphore within a hook  code ?
<henninge> melmoth: You have the "relation-list" inside a relation hook. That will give you the names of all the peers (minus the one the hook is running on).
<melmoth> henninge, only when this hook is fired up by a "relation hook"
<melmoth> and i need the data at another stage, so i need to store it when i have access to it.
<henninge> AFAIK, yes.
<melmoth> getting the data is not a problem, it s storing it in a safe way.
<henninge> You can store the data in the charm directory.
<henninge> I think that is ok to do.
<henninge> or some other place.
<henninge> Maybe some other place is better. ;-)
<melmoth> henninge, the problem is concurent acces. When i have n unit added at the same time, i need a way to synchronise access to wherever the data is store
<melmoth> i think i ll juts use a simple lock file. if it s there, let s wait. if its not, lets put it and do the job
<henninge> melmoth: All hooks on one machine run in one thread.
<henninge> So I don't think there is concurrency.
<henninge> (I assume they run in one thread, actually)
<melmoth> there is.
<henninge> ok
<melmoth> yesterday i added like 5 unit, saw in the log that all the unit where viewed, but in the resulting file i wrote, some were missing
<melmoth> the only way i can explain that is a race condition between the moment the file was read by one hook, and the moment it was written again wit the new data
<melmoth> i bet between those two moments,  an other unit did the same stuff and i lost 1 info
<jamespage> mgz, how are we with regards 1.11.2 release of juju-core? I'd like to get something uploaded to saucy and I just resolved the golang 1.1.1 issue in the interim
<mgz> jamespage: I'll poke dave, I don't feel we're blocked on anything now
* jcastro changed the topic of #juju to: Share your infrastructure, win a prize: https://juju.ubuntu.com/charm-championship/ || Review Calendar: http://goo.gl/uK9HD || Review Queue: http://jujucharms.com/review-queue
* jcastro changed the topic of #juju to: Share your infrastructure, win a prize: https://juju.ubuntu.com/charm-championship/ || Review Calendar: http://goo.gl/uK9HD || Review Queue: http://jujucharms.com/review-queue || http://jujucharms.com || Reviewer: m_3
<marcoceppi> quiet today
<henninge> exit
<henninge> ;-)
<arosales> any one have any ideas on https://lists.ubuntu.com/archives/juju/2013-July/002657.html
<jose> marcoceppi: hey, wht did you mean by 'change configuration'?
<jose> also, do I need to design my own icon?
<marcoceppi> jose: if a user runs `juju set postfix hostname="something else"`
<marcoceppi> right now nothing happens, this triggers the hooks/config-changed hook in the charm though
<marcoceppi> Basically you'd just put the bulk of the hooks/install in to hooks/config-changed
<marcoceppi> jose: not your own, but you should try to find the logo for postfix and put it on the charm icon template
<sarnold> haha, http://www.postfix.org/mysza.gif
<marcoceppi> Yup :) that should make for an interesting charm icon
<sarnold> perhaps a touch less professional looking than exim or sendmail
<sarnold> ah but still better than qmail :)  http://www.qmail.org/Q.6.01.Logo.lg.jpg
<marcoceppi> Well, not much we can do a out that
<marcoceppi> about*
#juju 2013-07-10
<adam_g> hazmat, is the websocket module used by python-jujuclient available anywhere in the ubuntu archive?
<hazmat> adam_g, no
<adam_g> didnt think so. darn.
<hazmat> adam_g, andreas has a package/ppa for python-jujuclient
<hazmat> adam_g, https://launchpad.net/~ahasenack/+archive/python-jujuclient
<adam_g> hazmat, ah, thanks
<jose> hey marcoceppi or anyone around, is there a link to the charm design template?
<jose> s/design/icon/
<marcoceppi> jose: yeah I just uploaded it for the docs, http://marcanonical.com/icon.svg
<marcoceppi> that section of the charm author docs should be landing soonish
<jose> great, thanks! :)
<jose> marcoceppi: how should I do the copyright? to Canonical Ltd.?
<marcoceppi> jose: no! You're the copyright holder :D
<jose> ok!
<marcoceppi> We jsut ask that, in order to be in the store, the charms are licensed under a free license
<jose> great
 * jose continues working
<alok_> hi there
<alok_> i cant find installation for juju local
<alok_> *guide
<davecheney> aaaand, he's gone
<pavel> hello, guys
<pavel> can somebody help me with this error?
<pavel> error: cannot start bootstrap instance: no "precise" images in us-west-2 with arches [amd64 i386]
<pavel> juju version:1.11.2-precise-amd64
<pavel> ok, I switched to backported 1.10 and it works
<jamespage> pavel, where are you pulling 1.11.2 from to get that issue?
<jamespage> pavel, there are some problems with earlier golang versions - I think we should have that fixed today...
<pavel> jamespage, from devel ppa
<jamespage> pavel, yeah - looks like the amd64 builds are still waiting to go through
<jamespage> ~1hr - if that does not happen I'll go see if we can get the priority bumped
<pavel> don't worry, 1.10 is ok for me
<pavel> when I run bootstrap from amd64 it looks for amd64 machine in ec2?
<pavel> or it runs amd64 by default?
<mgz> pavel: I think this is an issue with the cloud images format having been changed, which breaks deploying on ec2 with 1.11
<mgz> wallyworld: ^is that the symptom?
<wallyworld> yes
<melmoth> jamespage, looks like it s working now....i ll play with it a bit, adding master and stuff, just to see what happen.
<jamespage> melmoth, great
<jamespage> I'll propose that for merge
<jamespage> adam_g, merged both of your updated charm-helpers branches - thanks!
<jamespage> wallyworld, when you have some simplestreams juju-tools avaliable happy to test that for you
<wallyworld> jamespage: awesome thanks. i'm waiting on some sample data to test with myself. will let you know when we are at the stage where it can be consumed
 * jamespage thinks that is a real enabler
 * wallyworld does too
<wallyworld> for most cases, it will be configless for the user
<pavel> hm... was the 'debug-hooks' command removed from 1.10?
<mgz> as in, was it in juju-core and removed? no.
<mgz> it hasn't been implemented in the rewrite.
<mgz> see bug 1027876
<_mup_> Bug #1027876: cmdline: Support debug-hooks <cmdline> <juju-core:Triaged> <https://launchpad.net/bugs/1027876>
<pavel> I see...
<pavel> is there any guide to upgrade charms that was written for 0.7 to 1.10 ?
<pavel> for example I see that structure of config.yaml changed a bit
<mgz> pavel: no doc on charm relevent changes from pyjuju to gojuju that I'm aware of
<mgz> evilnickveitch: ^is there anything along those lines?
<mgz> pavel: that said, the aim was for charms to basically be compatible
<pavel> I still didn't figure out why, but my overrides in custom config for service deployment doesn't override default value
<pavel> now I changed format of config.yaml and trying again
<mgz> well, that sounds familar
<evilnickveitch> mgz, pavel there isn't anything on rewriting charms for 1.x as yet. But I would be happy to hear of any issues with that so I could include something
<mgz> fwereade: ^what's the answer to default values not getting overridden?
<fwereade> pavel, mgz, I'm not familiar with that... any more detail? are you using a yaml file with --config?
<mgz> evilnickveitch: I think several of the issues should just be bugs for us, but we have made several deliberate changes that we really should get recorded somewhere, I'll do some poking
<evilnickveitch> mgz thanks
<pavel> fwereade, yes it's yaml file, but named with .yml
<pavel> maybe it's my fault, I have to try several options more
<fwereade> pavel, that shouldn't be a problem; but there was a format change there, we released accepting a format that didn't match python
<fwereade> pavel, the python format is `servicename: {...}`
<pavel> yes, I found new format in the docs
<fwereade> pavel, huh, the docs included the new format? bah
<pavel> new format for default values
<pavel> charm: mediawiki service: mediawiki settings: {}
<fwereade> pavel, I am not familiar with that format at all, would you link me where it came from please?
<pavel> ah
<pavel> sorry
<pavel> my mistake
<fwereade> phew :)
<pavel> I looked at ' juju get mediawiki'
<fwereade> pavel, just one note: inside the charm, the name "config.yaml" is special, and configs with different filenames will not be picked up; so far as we are aware we have not changed how that works
<pavel> yes, this is clear
<fwereade> pavel, but when you're specifying service config settings, the format of the file you pass to --config has changed back to how it was in python, after a regrettable period of incompatibility
<pavel> for 1.10 it's service: {}
<pavel> ?
<fwereade> pavel, however the file name there should not make any difference
<fwereade> pavel, for 1.10 it's just a naked map without the service name
<pavel> gotcha!
<fwereade> pavel, sorry about that one :(
<pavel> no problem, thanks a lot for your help
<pavel> in the official docs it's service: {} now, thought the recommended installation is 1.10
<mgz> we may need a note there, though we can probably get 1.11 out to everywhere when it's release
<mgz> d
<pavel> is there a date for 1.11 release?
<mgz> this week!
<pavel> awesome
<teknico> I'm also getting the same error as pavel with juju trunk: error: cannot start bootstrap instance: no "precise" images in us-east-1 with arches [amd64 i386]
<mgz> teknico: ec2 is borked right now as the cloud images data changed
<fwereade> teknico, *that* I am afraid to say is because the image metadata format on cloud-images.ubuntu.com changed unexpectedly
<mgz> you can either use 1.10, or --upload-tools if you build locally
<teknico> fwereade, mgz, thanks, I have i386 locally, can I still use --upload-tools?
<pavel> fwereade, juju deploy ... --upload-tools ?
<pavel> sorry, juju bootstrap --upload-tools ?
<mgz> teknico: good question, not sure.
<fwereade> teknico, pavel: sorry, it's the ubuntu image metadata we've lost
<fwereade> teknico, pavel: so far as I'm aware the tools are all still around
<mgz> pavel: yeah, bootstrap, but it's uploading your own builds (so, you need all the deps and so on locally)
<pavel> crap, I'll wait for fix :)
<mgz> ah, yeah, pants, probably not the right work around
<teknico> ok, I'll downgrade too :-)
<fwereade> pavel, we are just waiting for someone to get in so we can figure out exactly what happened
<pavel> fwereade, hope it will be an easy fix
<fwereade> pavel, it really should be but we want clarity and certainty so we actually unbreak it, rather than just breaking it differently
<teknico> pavel: how did you switch back to 1.10? I can't come up with the right command
<pavel> what ubuntu distro do you use?
<teknico> pavel: I'm on raring
<pavel> ok, then
<pavel> sudo apt-get autoremove juju juju-core
<pavel> sudo add-apt-repository -r ppa:juju/devel
<pavel> sudo apt-get update
<pavel> sudo apt-get install juju-core
<teknico> pavel: thanks, but the devel ppa has 1.11.2, hasn't it? https://launchpad.net/~juju/+archive/devel
<pavel> there is '-r' there
<pavel> it's for removing
<teknico> aah, right
<teknico> pavel: it worked, thanks
<pavel> np
<fwereade> pavel, teknico, others: smoser has resolved the image metadata issue and I am able to bootstrap again
<pavel> fwereade, yes, it's working!
<fwereade> pavel, great, sorry for the problem in the first place
<pavel> fwereade, thanks for such quick fix
<jcastro> m_3_: new charm in the queue, mailman!
<m_3_> jcastro: ack
<fwereade> pavel, direct all praise toward smoser please :)
<pavel> smoser, thank you so much :)
<jamespage> jam: any chance you will get to bug 1189507?
<jamespage> https://bugs.launchpad.net/juju-core/+bug/1189507
<_mup_> Bug #1189507: juju-core duplicates quantum security groups <serverstack> <juju-core:Triaged by jameinel> <https://launchpad.net/bugs/1189507>
<jamespage> jam: soonish anways
<marcoceppi> Well be starting charm meeting soon!
<marcoceppi> http://ubuntuonair.com/
<marcoceppi> http://pad.ubuntu.com/7mf2jvKXNa
<arosales> kirkland, pad with notes is @ http://pad.ubuntu.com/7mf2jvKXNa
<pavel> can you grant me an access?
<arosales> pavel, to the google hangout?
<kirkland> arosales: thanks!
<pavel> to the pad? or I don't need it?
<arosales> you shouldn't need access, are you getting an error
<pavel> Yes, I'm getting an error
<pavel> is this correct hangout url? https://plus.google.com/hangouts/_/calendar/ajVxODVtbWk2dWp2anRpaTVzMW4zbGk1aW9AZ3JvdXAuY2FsZW5kYXIuZ29vZ2xlLmNvbQ.p11le79ijn643h9hl7bmc36hbg
<pavel> it's empty at the moment
<arosales> pavel, try: https://plus.google.com/hangouts/_/b32ae1008a86dcde437cb82a07c95aa5edb9c329?authuser=0&hl=en
<arosales> for the hangout
<arosales> pavel, http://pad.ubuntu.com/7mf2jvKXNa for the pad with notes
<arosales> pavel welcome, we see you now :-)
<arosales> pavel, thanks for joining
<arosales> jamespage, sorry we were just ending
<jamespage> arosales, yeah - I missed the time
<jamespage> np
<jamespage> arosales, was busy raising bugs on juju-core :-)
<arosales> jamespage, well thats time well spent then :-)
<jamespage> marcoceppi, are you reserving the tests top-level directory for charm tests?
<pavel> arosale, I'm not able to access pad
<pavel> arosales, "Either you have not been granted access to this resource or your entitlement has timed out. Please try again."
<arosales> pavel, hmm .. .
<pavel> arosales, maybe smth is wrong with my ubuntu one account )
<arosales> pavel, let me check another lp account and see if they can access the pad
<pavel> arosales, looks like it's issue with my account
<arosales> pavel, ok ping me if you continue to have issues
<pavel> arosales, I'll create a brand new account and try again
<arosales> pavel, ugh. ok
<pavel> arosales, still getting this error
<arosales> pavel,  "Either you have not been granted access to this resource or your entitlement has timed out. Please try again." is that the error
<pavel> yes
<Daviey> mgz, jamespage: How are we looking for a saucy upload?
<mgz> Daviey: we really need a release first, which... is proving annoying, with several breakages, not all juju-releated
<mgz> (eg, today, 1.11 hasn't been working on ec2, because the cloud images data got changed)
<Daviey> mgz: Honestly, i'd be happy if we got something nonfunctional into saucy right now.
<Daviey> There is always one more bug, delaying it.
<mgz> this is true.
<Daviey> mgz / jamespage: Is there any reason we can't just upload the daily from the PPA?
<Daviey> (I know it's not quite reproducible source that i'd like)
<ahasenack> Daviey: I don't think the ppa has "dailies"
<ahasenack> it does have a recent build, though
<Daviey> ahasenack: https://code.launchpad.net/~dave-cheney/+recipe/juju-core ?
<ahasenack> Daviey: nice, that's news to me
<ahasenack> Daviey: so just the tools story isn't handled by that, meaning, if you push this into saucy, people will have to remember to bootstrap with --upload-tools
<Daviey> Ugh
<ahasenack> and, hm, that also won't work. They need a full development environment
<ahasenack> in which case they already have juju-core installed by source
<adam_g> jamespage, where can i find the  nvp-transport-node subordinate?
<wedgwood> adam_g: jamespage: looks like charm-helpers tests are broken on revno 46 for systems without python-dnspython installed
<adam_g> wedgwood, gah, ok. ill take a look now
<wedgwood> adam_g: jamespage http://pastebin.ubuntu.com/5862461/
<wedgwood> cool, thanks
<adam_g> wedgwood, actually, im working on cleaning up other stuff in that area. ill fix that as part of that
<wedgwood> perfect
<jamespage> adam_g, lp:~james-page/charms/precise/nvp-transport-node/trunk
<jamespage> adam_g, you need access to NVP bits and pieces to make it work
<adam_g> jamespage, thanks
<adam_g> jamespage, cool. was trying to get the full picture when looking at the nova-c-c merge. im wondering if it might be a good idea to encapsulate all of the additional nvp config in an nvp subordinate, to keep nova-c-c's config.yaml minimal
<adam_g> dunno if that + the transport subordinate would be awkward
<jamespage> adam_g, maybe
<jamespage> the transport sub gets used on nova-compute and quantum-gateway nodes
<jamespage> not nova-cc
<jamespage> me thinks
<adam_g> jamespage, thinking out loud... would it be possible to use a single subordinate that can be related to all 3 services?  if its related to nova-c-c, it just exports its nvp-related config. if its related to q-gateway + nova-c, it goes thru the installation
<jamespage> adam_g, that might work; however I'm concerned re the bits and pieces that configure quantum networking in ncc
<jamespage> what we are really talling about is a redux on the way we integrated quantum into nova
<adam_g> jamespage, hmm, i think a lot of that is going to change heavily anyway as soon as it moves to templating
<jamespage> adam_g, agreed - that might be the right point in time to make this happen
<jamespage> the pattern is similar to the cinder backends stuff we discussed a while back
<jamespage> adam_g,  I think the nvp-transport-node sub stands as it is
<jamespage> adam_g, the other bits are less than ideal but I don't want to waste to much time pushing them in to charms which are going to be re-written anyway.
<adam_g> jamespage, im just thinking about when/if we have an NVP subordinate for  nova-c-c, we'll have an aditional NVP subordinate for q-gateway and nova-compute. other quantum plugins would require the same, probaby. might be better to have 1 subordinate with multiple interfaces
<jamespage> adam_g, I don't disagree
<jamespage> so actually maybe a nvp suboridinate that does different things to different charms determined by relationship is a good idea
<jamespage> adam_g, how about we park the charms for the next few weeks while we figure this stuff out
<jamespage> (the NVP updates that is)
<adam_g> sounds good
<adam_g> https://code.launchpad.net/~gandelman-a/charm-helpers/ha_os_cleanup/+merge/174028
<adam_g> wedgwood, that should fix the tests
<adam_g> jamespage, ^ theres some cleanup we talked about yesterday, gonna propose the context + templating next then start on the nova-c-c charm so we can figure out how we want to do the subordinates
<wedgwood> adam_g: I'll defer to jamespage for landing. I see some lint issues - I know he'll mention them.
<adam_g> wedgwood, oh thanks for reminding me. :)
<wedgwood> ;)
<adam_g> done
<BeatsMusic> Can someone pls help with this error
<BeatsMusic> 2013-07-10 23:18:06,519 ERROR SSH forwarding error: bind: Cannot assign requested address
<BeatsMusic> Is it trying to connect to a bind server ?
<sarnold> BeatsMusic: no, 'bind' in this case means bind(2) system call, to request a specific address
<BeatsMusic> Just got that
<BeatsMusic> thx
<BeatsMusic> looks like juju can't connect to zookeeper
<BeatsMusic> 2013-07-10 23:29:10,123 DEBUG Spawning SSH process with remote_user="ubuntu" remote_host="m03.ops.nyc1.beats" remote_port="2181" local_port="45778". 2013-07-10 23:29:10,239 ERROR SSH forwarding error: bind: Cannot assign requested address
<BeatsMusic> After juju bootstrap
<BeatsMusic> all i get is this
<BeatsMusic> server refused to accept the client
<BeatsMusic> 2013-07-10 23:48:55,504:19440(0x7f489e5c3700):ZOO_ERROR@handle_socket_error_msg@1579: Socket [127.0.0.1:46485] zk retcode=-4, errno=111(Connection refused): server refused to accept the client 2013-07-10 23:48:55,522:19440(0x7f489fdc6700):ZOO_ERROR@handle_socket_error_msg@1579: Socket [127.0.0.1:50187] zk retcode=-4, errno=111(Connection refused): server refused to accept the client
<BeatsMusic> The host is up,  should i wait it out ?
#juju 2013-07-11
<jose> hey marcoceppi, is this the right place to report a bug in jujucharms.com?
<sarnold> jose: a bug with jujucharms.com itself, or a bug in a charm?
<jose> sarnold: with the webpage itself
<sarnold> jose: try this, https://launchpad.net/charmworld
<jose> sarnold: will do now, thanks! :)
<jose> sarnold: hey, think you can give me a hand with my charm? I don't know how should I write my config-changed hook
<sarnold> jose: I can try, but I'm pretty new here too :)
<jose> ok, let's try then :)
<jose> so I have http://jujucharms.com/~jose/precise/postfix/hooks/install as my install hook, and would like to have a way for users to run 'juju postfix config-changed domain abc.com' to change the domain, for example, that's on line 28
<jose> and line 13 too
<jose> I have 3 of those variables
<jose> sarnold: any idea on how to do that? :)
<sarnold> jose: oh, wow, this is cool :)
<sarnold> jose: some of these pieces are going to be needed only at install time, apt-get install -y ...
<jose> yep
<jose> so I can't run the whole thing again
<sarnold> jose: some of these will probably need to be re-run on every configuration change -- debconf-set-selections, postconf ..
<jose> oh wait
<sarnold> jose: can you push the debconf-set-selections and postconf commands to the config-changed hook?
<jose> yeah, I just thought that
<jose> only that part, right?
<sarnold> jose: probably just the parts that depend upon variables that the user might set
<sarnold> jose: _but_, it might _feel_ cleaner to move all the configuration things to the config-changed hook
<jose> right, I'll do that now, that just gave me the general idea
<jose> thanks a lot! :)
<sarnold> you'll have to guess which one feels easier to maintain over the long run -- one with all the configuration in one hook, or one with just the user-data-dependent configuration in the hook
<jose> I think the first option should be best thinking on a user-end
<sarnold> jose: oh, hey, is that a bug on line 76? "apt-get -y libsasl2-2" ... does it need the 'install' there?
<jose> oh, that's totally right!
 * jose goes and fixes it
<sarnold> jose: line 79 appears to be missing a close " as well.
<jose> yep!
<sarnold> jose: actually, consider using printf(1) for all those echos, I think they are a bit tough to read as-is, and some of them might not work perfectly..
<jose> printf?
<jose> oh, but is that working with the >> after it?
<sarnold> jose: yeah, printf can redirect with >>
<sarnold> jose: I think you'd re-write 81 like printf "PARAMS=-m%s\n" ${PWDIR} >> /etc/default/saslauthd   -- I suggest it because the " are awkward there..
<sarnold> .. so you might want to use single qoutes '' around the double-quotes "" .. but that'll make variable interpolation difficult... hence printf, which will use %s and arguments.
<sarnold> it's up to you, you might not like it at all :) but I think it'll lead to easier results than trying to figure out the proper escaping of embedded " quotes
<jose> blargh, I don't get that one :(
<jose> I'm just starting with bash and python
<sarnold> jose: ah, well, feel free to ignore it for now :)
<jose> thanks a lot for your help
<sarnold> jose: just don't be surprised if you have change some of those echo "foo="".."" things to echo "foo=\"" ...\""
<jose> sure :)
<jose> I'll take that in consideration
<sarnold> once you get there :D
<sarnold> have fun! :)
<jose> thanks!
<jose> hey marcoceppi, just resubmmitted postfix for review. please, take a look once you have some time :)
<jcastro> anyone have the tldr on debug-hooks for goju?
<AskUbuntu> How to change charm service IP from default 10.0.0.X if running juju on local? | http://askubuntu.com/q/318960
<AskUbuntu> How do I get juju 1.11 to bootstrap on a private OpenStack cloud? | http://askubuntu.com/q/318970
<avoine> with the lastest release I keep having error like: error: cannot start bootstrap instance: no "saucy" images in RegionOne with arches [i386]
<avoine> what are the properties that I must add to my images to make them valide for juju?
<avoine> on openstack
<avoine> I've tried  arch=i386 release=saucy version=13.10
<koolhead17> marcoceppi, jcastro Juju deployment has become 100 times easier
<koolhead17> kudos to you guys
 * koolhead17 watching juju demo live in polish openstack meetup
<koolhead17> http://www.youtube.com/watch?v=h4HVEG3lo-g&feature=youtu.be
<jcastro> \o/
<arosales> niemeyer, opened bug https://bugs.launchpad.net/juju-core/+bug/1200285
<_mup_> Bug #1200285: Fix/Update Charm Author Formatting <docs> <juju-core:Triaged by evilnick> <juju-core docs:Triaged by evilnick> <https://launchpad.net/bugs/1200285>
<jcastro> hey m_3_
<jcastro> around?
<jcastro> arosales: got time to fire up your mac today?
<jcastro> mramm: also ^^^
<mramm> jcastro: sure probably have time this afternoon
<arosales> mramm beat me to it :-) and way better and juju-core acking than me :-)
<jcastro> https://github.com/juju/juju-core/releases/tag/1.11.2
<jcastro> LOOK!
<arosales> oh, you mean to test, not compile
<arosales> nice :-)
<jcastro> arosales: if you could give that a shot this afternoon and either +1 or -1 I can announce it on the mailing list
<jcastro> yeah
<arosales> jcastro cool thanks. mramm fyi ^
<jcastro> m_3_: so this releases thing in github is sweet, once we mirror the core in there it should just be easy for users to find it
<marcoceppi> jcastro: wonder if we could use travis-ci for free unit testing
<jcastro> is that the hosted thing?
<m_3_> jcastro: did it get decided we should go ahead and put that mirror in place?
<marcoceppi> yeah. free to use for open source projects on github
<m_3_> jcastro: kinda thought it got the kaibash(sp?)
<jcastro> m_3_: I say why not!
<jcastro> gives us a nice place to put OSX binaries too
<jcastro> m_3_: I don't suppose you have OSX handy to help test this client?
<m_3_> k
<m_3_> jcastro: nope on OSX
<m_3_> jcastro: oh, maybe an old snow leopard laptop of tay's
<jcastro> nah, queue is more important
<m_3_> I understand it's legal to run OSX in a vm on my ubuntu macbookair though... just gotta get the right image
<jcastro> I'll find less busy Mac folks
<m_3_> ack
<m_3_> jcastro: target for the juju-core mirror?
<m_3_> github.com/juju/juju-core? or github.com/ubuntu/juju-core?
<jcastro> m_3_: I just made /juju/juju-core so I could put the binary there
<jcastro> but was thinking you could put the source there along side?
<m_3_> yeah.... no
<m_3_> jcastro: perhaps save the juju-core repo for the source
<m_3_> and stick the binaries somewhere else like github.com/juju/juju-client or /juju/juju?
<jcastro> ok
<jcastro> so should I rename it?
<jcastro> ok I can do that.
<m_3_> we could mirror lp:juju-core to github.com/juju/core or something... but really that should match
<m_3_> lp:juju-core to github.com/juju/juju-core seems simplest to me
<jcastro> yeah, I agree
<jcastro> let me rename this one I just made so you don't clobber me
<m_3_> ack
<jcastro> hmm, can't get through to github, it working for you?
<m_3_> jcastro: yup, seems ok to me
<m_3_> little sluggish on styling artifacts
<jcastro> m_3_: can you do a rename? I'm stuck waiting for some akamai stuff that isn't loading and the page doesn't even render for me
<m_3_> jcastro: will do
<m_3_> jcastro: how's that look?
<jcastro> looks awesome
<jcastro> I just was now able to get in
<jcastro> I removed the release from -core and made this
<jcastro> https://github.com/juju/juju-client/releases
<m_3_> jcastro: hmmmm
<m_3_> not seeing it
<marcoceppi> m_3_: how often will core sync with gh?
<m_3_> marcoceppi: how often do you want it to?
 * marcoceppi looks at commit history
<m_3_> marcoceppi: charms've been syncing daily
<marcoceppi> m_3_: I'll get back to you, but how about every 6 hours for now? Unless that's too frequently
<m_3_> marcoceppi: sure, np
<marcoceppi> m_3_: so here's the next part. How hard would it be to put a file in the repo that doesn't exist upstream?
<m_3_> marcoceppi: probably not hard at all actually as it's a one-way mirror
<marcoceppi> m_3_: I'm going to try to hook the repo up to travis for S&G, but I need to have a .travis.yml file in the root of the repo
<m_3_> marcoceppi: ack... I should probably add you to the mirroring machine anyways
<marcoceppi> m_3_: I might, instead, just set up a second mirror in my repo that will rebase the sync'd branch with the travis.yml file Or see if the core guys want a .travis.yml file in the root :P
<jcastro> adam_g: around?
<adam_g> jcastro, hey
<m_3_> marcoceppi: hey
<jcastro> heya
<marcoceppi> m_3_: hey
<m_3_> ok, so github.com/juju/juju-core has code in it
<jcastro> adam_g: if you have a chance can you add an icon to the glance charm? You can rip it off from the cinder charm.
<jcastro> adam_g: it would make my presentation look nicer in the GUI
<m_3_> we might wanna think about mapping tags to branches here
<marcoceppi> m_3_: shouldn't we just map releases to tags?
<adam_g> jcastro, sure. do i just drop it in
<adam_g> ?
<jcastro> adam_g: yeah, and there's a little snippet in the metadata.yaml
<jcastro> icon goes in the root
<jcastro> they're all the same icon for anything openstack related
<adam_g> jcastro, what is the metadata snippet i dont see anything in cinders
<m_3_> marcoceppi: should be running as-is every 6 hours or so
<m_3_> marcoceppi: lemme know if you want me to add a .travis.yml file into the mix
<jcastro> adam_g: oh dude nm, just the icon.svg outta be enough
<m_3_> jcastro: marcoceppi: think about tags though... we should have release branches in github
<adam_g> jcastro, ah, cool. done
<jcastro> adam_g: that covers me for OSCON, but as you touch any openstack charm if you could drop that in that would be <3
<adam_g> jcastro, ack
<jcastro> we really should have an openstack category
<m_3_> jcastro: don't make changes to github.com/juju/juju-core directly... it'll barf the mirror
<jcastro> ok
<m_3_> jcastro: you scared me for a second there... I was seeing all sorts of whack ordering on the charms mirror
<m_3_> then I realized there were lots of changes in progress
<jcastro> I am pushing up a bunch of small category changes in charms
<m_3_> yup
<Pretender> Hello
<Pretender> how's it going guys?
<jcastro> hi!
<jcastro> m_3_: hah, scumbag spammer --> http://jujucharms.com/recently-changed
<m_3_> :)
 * m_3_ likes the "NFS formula..."
<Pretender> Can any1 tell me exactly what juju is doing? i'm a bit slow :)
<jcastro> what's the output of juju status say? That should tell you what it's doing
<m_3_> Pretender: orchestrating services (deploying and configuring a bunch of stock services like mysql and wordpress... right outta the box... on, primarily, the common public cloud providers
<Pretender> error: error parsing environment "amazon": no public ssh keys found
<Pretender> i made a folder set up a password...and they i got stuck
<m_3_> Pretender: ah, my bad... thought you were asking a different question
<m_3_> Pretender: it should default to using the keys in your '~/.ssh' directory
<Pretender> i understand i can make a irc or cloud server ...so i'm starting it easy as soon i can understand it
<m_3_> in particular the '~/.ssh/id_rsa.pub' unless you've changed it in '~/.ssh/config'
<Pretender> let me try something
<AskUbuntu> MAAS / JuJu zookeeper issue | http://askubuntu.com/q/319061
<jcastro> https://juju.ubuntu.com/docs/getting-started.html
<jcastro> Pretender: you probably need to generate a keypair, see the step before "Installation"
<Pretender> j castro ty
<jcastro> m_3_: we got rid of revision in the metadata.yaml right?
<m_3_> jcastro: revision was a separate file... and yes, we got rid of that
<m_3_> jcastro: shouldn't be in metadata at all... that'll barf
 * jcastro removes it from the docs
<m_3_> where was that?
<m_3_> the docs said to add 'revision' to the metadata?
<jcastro> it's under policy
<jcastro> removing it now
<m_3_> hmmmm.... /me wonders if that changed sometime
<jcastro> we mention metadata.yaml in 2 places
<m_3_> hey
<m_3_> whaddya know?  metadata.yaml's schema had a 'revision' key
<m_3_> harumph
<m_3_> ok, so we had 4 different notions of version for a charm... not just 3
<jcastro> fixed
<jcastro> http://bazaar.launchpad.net/~charmers/juju-core/docs/revision/21
<jcastro> m_3_: we gotta get that django python rewrite thing in tomorrow or we suck
<Pretender> c'ya guys
<m_3_> jcastro: oh, from the queue.... yeah, that'll go in
<sputnik13> anyone here using juju on openstack?
<sputnik13> rather...  juju with an openstack provider
<sputnik13> err openstack environment...
<sputnik13> bootstrap seems to have gone fine but when I do a juju status I get an error "Machine provider information missing"
<jose> hey jcastro, have a minute?
#juju 2013-07-12
<cmars232> this might be a dumb question, its been a little while since i've tried juju... is there no longer a way to use lxc containers?
<cmars232> nvrmind, found my answer. looks like lxc is on the way
<stokachu> hey there, ive got some charms deployed a custom django app, gunicorn, apache2, haproxy, and postgresql. ive gotten everything deployed and relations created and I can access the web application after getting guincorn deployed. however when i attempt to build a relation between apache2 and haproxy and load my template {{ haproxy_gunicorn }} isnt being filled in even though i've done a relation-set services_all in the website-relation-joined
<stokachu> negronjl: you awake/busy?
<marcoceppi> stokachu: are you trying to add a relation between the haproxy that is already attached to gunicorn?
<stokachu> so i attached gunicorn to my django app
<stokachu> one sec ill paste my steps
<marcoceppi> stokachu: I'm not long for this world, the bed is calling, but I'll try to help you out until then
<stokachu> marcoceppi: thanks :D http://pastebin.ubuntu.com/5866972/
<stokachu> those are my steps and and ive got a vhost template that has {{ haproxy_gunicorn }} to pull that information
<marcoceppi> How would haproxy know of gunicorn? It looks like seg-dash -> gunicorn then haproxy -> apache2 haproxy and gunicorn don't seem to intercept
<marcoceppi> stokachu: ^
<stokachu> marcoceppi: hmm
<stokachu> so would i add relation from apache2 -> gunicorn then haproxy -> apache2?
<stokachu> also im not sure the benefit for haproxy + apache2
<marcoceppi> You could, I'm not seeing the point of apache in this equation
<marcoceppi> or haproxy
<marcoceppi> or gunicorn
<marcoceppi> all three act as proxies (verifies) for the most part
<stokachu> so i was doing apache for the static files and gunicorn for the application
<marcoceppi> stokachu: ah, I see
<marcoceppi> So that will be promblematic
<stokachu> but i saw all these other charms and got excited
<stokachu> so when i manually setup an app i have nginx/apache reverse proxy to gunicorn
<stokachu> and thats it
<marcoceppi> You, you'd ideally want to serve them all from one IP/fqdn, but haproxy can't talk to multiple charms at once since it won't know which address to talk to
<marcoceppi> So you'd effectively have one ip address that maps to the apache2 static (via haproxy) then the gunicorn would be the app server
<marcoceppi> which could be put in front of another haproxy, if you so wanted
<marcoceppi> actually, it could not
<marcoceppi> since it dones't provide a website relation, for some weird reason.
<marcoceppi> that is unfortunate
<stokachu> so if ive just got one application i want to deploy should i ditch haproxy or apache and just proxy it through to gunicorn?
<marcoceppi> So, are you actually using gunicorn to deploy a wsgi?
<marcoceppi> I'm not sure what the seg-dashboard is
<stokachu> thats the django app
<stokachu> so i was using gunicorn in place of mod_wsgi
<marcoceppi> One sec, I need to check one more thing
<marcoceppi> OKAY
<marcoceppi> sorry, was confused that gunicorn was a subordinate
<marcoceppi> So you've got seg-dashboard that's using gunicorn deployed on top of it as it's web server
<stokachu> yea
<stokachu> so far
<stokachu> my next step is to proxy it through apache
<marcoceppi> I'm not sure why, I feel like gunicorn should *provide* a website relation over http interface, so that you can actually hook it up to a proxy
<marcoceppi> I'm not sure why it doesn't*
<marcoceppi> let me check a few more charms to see where the onous is for website relation and gunicorn
<stokachu> ok
<stokachu> so far ive been basing my stuff of apache2,gunicorn,and python-django
<stokachu> and the apache2 one mentioned haproxy+gunicorn
<marcoceppi> So, the example gunicorn provides, python-moinmoin, python-moinmoin (and python-django) has the website relation on that charm
<stokachu> yea so i can get python-django and gunicorn to work
<marcoceppi> So, what you could do is make sure seg-dashboard provided a website relation over the http interface, it would then set the "hostname" and "port" that the proxy would use for it's request
<stokachu> ahh
<stokachu> i think im missing a provides
<marcoceppi> So, as far as connections go, seg-dashboard -> apache2 (put static here as well via custom vhost) -> haproxy
<marcoceppi> where haproxy would push to apache2, which would (could) serve static or push down in to the app layer
<stokachu> gotcha, lemme go back to messing with it and ill let you get some sleep
<stokachu> thanks for the help :D
<marcoceppi> if you're not worried about static content, or if static could live in a CDN/on the seg-dashboard, just wire up seg-dashboard -> haproxy and cut apache2 out of the loop
<marcoceppi> stokachu: no problem! I'll be back EDT AM if you want to drop questions here or on the list
<marcoceppi> good luck!
<stokachu> marcoceppi: thanks will do :D
<marcoceppi> cheers
<amanSharma> What is JuJu? And how does it affect a Google App Engine developer?
<amanSharma> And how does it speed up the development process?
<TheMue> amanSharma: It's a tool to deploy and configure services on clouds like EC2, OpenStack, MAAS
<amanSharma> TheMue : not related to appengine?
<TheMue> amanSharma: The GAE is too different from those as it is more a development platform and runtime environment.
<TheMue> amanSharma: The others are IaaS, they provide a pure infrastructure.
<TheMue> amanSharma: There are charms for a large number of services. They describe how the software has to be deployed and how it can be connected and configured.
<stokachu> when deploying a django app with gunicorn, apache, and haproxy i cant figure out how to link gunicorn and apache together in a reverse proxy setup
<stokachu> apache talks about {{ haproxy_gunicorn }} and setting up that relation in website-relation-changed but when i deployed the template it isn't getting filled in
<marcoceppi> o/
<stokachu> marcoceppi: hey there! :D
<stokachu> so im using the minimal amount of charms to try and get the proxy working
 * marcoceppi pokes at the apache2 charm
<stokachu> right now im trying to figure out how to get apache2 to proxy to gunicorn
<marcoceppi> stokachu: do you actually need apache2? I know you mentioned static serving, but is it really needed?
<stokachu> i could force gunicorn to listen to port 80
<stokachu> and bypass apache all together
<marcoceppi> stokachu: well, you don't need gunicorn to listen on port 89
<marcoceppi> err 80, since haproxy can proxy to non port 80 web servers
<stokachu> ah ok
<marcoceppi> Ass long as website-relation-changed provides the hostname and port (typically `unit-get private-address` and the port number respectively)
<marcoceppi> then any charm that consumes the http interface will know how to talk to that charm
<stokachu> ah that may be my missing piece
<stokachu> right now it checks for /etc/gunicorn/${UNIT_NAME}.conf but that never gets generated
<stokachu> and i couldnt figure out how to generate that
<marcoceppi> Right, so you can deploy gunicorn on top of the apache2 charm (since it's a subordinate) and use gunicorn + apache2
<stokachu> ah
<stokachu> lemme try that real quick
<marcoceppi> but you've already got gunicorn on top of your dashboard charm, and to be honest it's probably fine there
<marcoceppi> Here's an example website-relation hook: http://jujucharms.com/charms/precise/wordpress/hooks/website-relation-joined
<stokachu> ok lemme check that file
<stokachu> ok gonna try a few ideas
<fginther> hello, is there any documentation for debugging "agent-state: down" ?
<stokachu> so i noticed u'haproxy_all_services': u'- {service_name: haproxy_service, service_port: 80}\n' which doesn't include my additional services
<stokachu> and apache2 template can't pick up the gunicorn settings
<stokachu> http://paste.ubuntu.com/5868173/
<stokachu> that is my website-relation hook
<stokachu> http://paste.ubuntu.com/5868181/ and here is my status output
<stokachu> negronjl: you around?
<stokachu> according to haproxy i should be able to set all_services during a website-relation-changed but it isn't getting picked up when doing an add-relation apache2:reverseproxy haproxy:website
<stokachu> here is the template http://paste.ubuntu.com/5868244/
<marcoceppi> stokachu: haproxy_gunicorn isn't going to be filled because gunicorn isn't deployed on apache
 * marcoceppi pokes apache2 charm a little more
<ahasenack> marcoceppi: if you're poking apache2, I was wondering if it would be a good idea to expose in the relation the SSL certificate it generated when SELFSIGNED was used
<ahasenack> marcoceppi: it would help setting clients up to talk to that apache without having to use --no-check-certificate and stuff like that
<marcoceppi> ahasenack: I wouldn't think that you'd need to talk over SSL when "inside" the network though, right?
<ahasenack> marcoceppi: it's used for testing, the "final" and "real" service would use a real cert
<ahasenack> marcoceppi: so I need to use ssl
<marcoceppi> gotchya
<ahasenack> in my case, I can't even disable the SSL check
<ahasenack> so I have to copy the cert over to the clients or else it won't work
<marcoceppi> it wouldn't hurt to add the cert to be sent over the wire, you'd just have to make sure your charm knew to read the relation value
<stokachu> i used this to base how to setup gunicorn and my web app https://bazaar.launchpad.net/~charmers/charms/precise/apache2/trunk/view/head:/README.md#L41
<stokachu> but i dont see anywhere in the logs where website-relation-joined gets called from my charm
<TheChistoso|2> hi everyone -- does anyone have a guide on deploying openstack HA w/ ceph w/ < 28 servers? (less than 16 is what i really need -- and i'd like multiple compute nodes as well)
<TheChistoso|2> also, w/ openstack HA, the compute nodes still use locally attached storage for the locally running VMs, correct? they're not using ceph?
<stokachu> marcoceppi: how would i deploy gunicorn on top of apache2?
<stokachu> i get error no matching endpoints when i do juju add-relation gunicorn apache:reverseproxy
<marcoceppi> stokachu: The same way you deployed it on to your dashboard, just juju deploy gunicorn apache2-gunicorn (so you have a different version of the subordinate) then add relation gunicorn_apache2 to apache2
<marcoceppi> Are you trying to deploy the subordinate or trying to connect the two via relations?
<stokachu> i have gunicorn deployed just trying to add a relation
<marcoceppi> stokachu: gunicorn doesn't have an http interface, so you don't directly connect gunicorn to anything but the unit it's running on
<marcoceppi> you instead want to connect your dashboard, which has a website:http relation to apache2. Though I still don't think you need apache2 for this set up
<TheChistoso|2> how is juju 2.0 coming along? is there an official release date?
<TheChistoso|2> halloween?
<marcoceppi> TheChistoso|2: no official release date yet, that I know of, lots of progress being made with 1.X releases though!
<stokachu> marcoceppi: i just did add-relation haproxy seg-dashboard
<stokachu> and it finally pulled those variables in
<marcoceppi> \o/
<stokachu> yayay
<TheChistoso|2> marcoceppi: thanks -- i'd really, really like to use maas+juju to deploy openstack HA but i really need to see something that uses < 28 machines. i have 16 available to me right now.
<stokachu> ok lemme see if i can get farther now
<marcoceppi> stokachu: good luck, we'll be here if you need more help
<stokachu> marcoceppi: thanks! im going to write a blog post about it once i get it all done
 * stokachu spent 8 hours on this
<TheChistoso|2> can folks explain the ceph setup w/ openstack ha using juju?
<marcoceppi> TheChistoso|2: I'm not sure the state of the HA OpenStack charms, jamespage or adam_g might be able to provide more clarification on it
<marcoceppi> I know they've been doing a lot of work to make the OS charms a lot more robust
<TheChistoso|2> do you or anybody know how the OS charms configure the network interfaces? right now i only have 1 nic on each machine, but in production i'd have a few going to different switches -- so i'd need to configure provisioned machines accordingly...
<TheChistoso|2> is it assumed all machines are completely homogenous?
<TheChistoso|2> s/homogenous/homogeneous/g
<marcoceppi> TheChistoso|2: I don't personally know, hopefully one of the two I pinged above will pop in to answer
<TheChistoso|2> marcoceppi: thanks anyway :D
<marcoceppi> TheChistoso|2: from just poking at a few of the OS charms, it looks like most have configuration options for managing the networking
<jcastro> hey m_3_ around?
<m_3_> jcastro: yup
<m_3_> ssup?
<jcastro> I want to try to put the mac tarbal on github.com/juju/juju-core
<jcastro> in the releases section
<m_3_> k
<jcastro> but I want you around in case I clobber the repo
<m_3_> :)
<jcastro> which I am confident it won't do
<m_3_> np
<jcastro> hey so is this mirror the one off or is it auto updating?
<m_3_> jcastro: it'll be good to test if that change to the mirror target screws up the mirroring
<m_3_> it _should_ be auto-updating
<m_3_> but I haven't checked since yessterday
<m_3_> every 6 hrs
<marcoceppi> m_3_: there's a commit on there from 4 hours ago
<marcoceppi> so it would appear to be working
<m_3_> jcastro: http://paste.ubuntu.com/5868387/
<m_3_> jcastro: first is an example of a barf... subsequent ones succeeded
<m_3_> timestamped
<m_3_> marcoceppi: ack, cool
<jcastro> https://github.com/juju/juju-core/releases/tag/1.11.2
<jcastro> how's that?
<m_3_> jcastro: lemme kick it and see if it barfs
<m_3_> we should really mirror tags too
<m_3_> jcastro: that seemed to be ok
<marcoceppi> m_3_:  +1
<marcoceppi> m_3_: if you mirror tags though, jcastro's release will probably piss off the importer
<m_3_> marcoceppi: it tries, but can't catch all the tags b/c of tag formatting allowed in bzr -vs- git
<m_3_> (see that pastebin above for the warnings about tag conversion)
<marcoceppi> m_3_: I only see 0.x tags though, where are the 1.X tags?
<m_3_> jcastro: so that looks like it's keeping the releases in a bucket entirely independent of the source
<m_3_> jcastro: so subsequent pushes don't require pulls/merges first
<marcoceppi> m_3_: nice!
<m_3_> jcastro: so I think we're good if we just wanna keep it all on juju-core
<m_3_> we've gotta change the readme to explain how to get the mac client
<marcoceppi> and make it markdown :)
<jcastro> that's pretty much an ideal situation
<m_3_> jcastro: but that's gotta happen on lp... _not_ gh
<m_3_> marcoceppi: gh might take rst if we named it such... dunno
<m_3_> marcoceppi: it's easy enough to convert it to md
<m_3_> imo
<m_3_> :)
<marcoceppi> m_3_: yeah, you're right, if it's .rst it'll render
<marcoceppi> but, but, but, markdown :)
<m_3_> I know
<jcastro> ok so all we need to do is blow away github.com/juju-client
<m_3_> jcastro: shall I do that now?
<m_3_> also does anybody know the status of hpcloud az-2 for juju 1.11.2?
<m_3_> (tools)
<jcastro> not yet
<jcastro> let me announce first
<m_3_> jcastro: k
<jcastro> since I sent that URL to the list.
<m_3_> ack
<marcoceppi> m_3_: I created an az-3 bucket
<marcoceppi> and have 1.11.1 tools in it
<jcastro> Anybody else with a Mac want to test this?
<m_3_> marcoceppi: I'm working with hp peeps in az-2 in a couple of hours
<m_3_> marcoceppi: and gonna bail back to juju-0.7 I guess
<marcoceppi> m_3_: I'm not aware of any change there, you'll probably have to generate the image-metadata, etc
<marcoceppi> jcastro: we modeled the docs heavily after stripes documentation
<jcastro> evilnickveitch: hey so I think it's time to redirect juju.u.c/getting-started to new docs
<marcoceppi> that's how they organize "code examples" in different languages
<marcoceppi> http://i.imgur.com/1HAkvdd.png
<marcoceppi> figured we could do something similar when we have instructions for multiple versions of an OS
<evilnickveitch> yeah, it is pretty easy really
<evilnickveitch> and a good idea
<jcastro> ok show me how!
<evilnickveitch> jcastro - yes please
<marcoceppi> evilnickveitch: I can push up a quick merge proposal with the CSS
<jcastro> <evilnick> Actually I was going to do that for you Jorge.
<marcoceppi> jcastro: *
<jcastro> Thanks man!
<evilnickveitch> marcoceppi, do it
<m_3_> mgz: do you know what happened to alternatives in the current juju-core ppa?
<evilnickveitch> hmm, better push my work today too
<mgz> m_3: was never in the ppa, works fine in the distro release (saucy only atm)
<mgz> as we have golang and mongo backport issues
<mgz> (mongo now resolved)
<m_3_> mgz: right... trying to work with users on precise (using the ppa)
<m_3_> ah, gotcha
<m_3_> mgz: should I file a bug to get it in the ppa?
<m_3_> or was that explicitly decided?
<mgz> fixing the ppa is doable now we've made it somewhat working again
<m_3_> ack... mgz thanks!
<mgz> but remember it'll clash with pyjuju < 0.7 anyway
<m_3_> yup
<mgz> so, they'd need the pyjuju paa too
<mgz> *ppa
<m_3_> right... which was really the case
<m_3_> most peeps worked precise juju from the ppa
<m_3_> distro was so old for so long
<m_3_> and our docs always said "use the ppa"
<jcastro> evilnickveitch: related to the mailing list posts about consolidating those pages, I sort of moved metadata.yaml stuff over to one from the other already
<m_3_> sort of makes sense to get alternatives everywhere anyways... who knows what the transition from 1.xx to 2.xx will look like
<evilnickveitch> jcastro, okay, I am rewriting them all anyhow
<jcastro> marcoceppi: lmk when you push and I'll start on the OSX instructions
<marcoceppi> jcastro: ack
<marcoceppi> going to lunch first
<jcastro> no worries
<arosales> jcastro, re OSX default series question
<arosales> it looks like the behavior is juju defaults to precise if nothing is entered. I think the same is for Ubuntu except I *think* juju will try to read what the client version is at
<marcoceppi> arosales: I was under the impression juju will _always_ default to LTS unless otherwise specified
<arosales> mgz, can you confirm if no default series is present and a user is deploying from raring will juju try to deploy precise or raring?
<marcoceppi> but I could be wrong
<arosales> marcoceppi, that very well be the case
<arosales> jcastro, but I think I was incorrect in stating osx users need to specify precise. They would need to specify a default-series if they want something other than the latest LTS
<arosales> which as marcoceppi said is the same behavior on Ubuntu
<mgz> arosales: precise
<arosales> mgz, thank you for confirming.
<mgz> that behaviour did change :)
<arosales> marcoceppi, no surprises you were correct :-)
<arosales> mgz, thanks for helping try to save face lol :-)
<arosales> jcastro, so aside from downloading the osx client from github the instructions are the same in set up.
<arosales> jcastro, we may want to add the public bucket URL for Hp cloud in the instructions until we get simple streams fully implemented
<arosales> thats applicable to all client
<arosales> jcastro, ping me if you have any other questions on the osx instructions.
<teleyinex> hi there
<teleyinex> does someone know where is the Hangout for today's event?
<jcastro> I am setting it up now
<jcastro> it'll be on ubuntuonair.com in a few minutes
<arosales> jcastro, can you also post the URL for folks to join if they are interested in being an active participant?
<jcastro> yep
<jcastro> https://plus.google.com/hangouts/_/9a58ebb993347b7d0f87bbd2844942c3daffc22f?authuser=0&hl=en
<arosales> jcastro, thanks
<arosales> note ubuntuonair.com for viewing, above plus.google.com url for participating.
<jcastro> questions in here
<jcastro> mims had to reboot so waiting on him
<andreas__> jcastro: has it started? ubuntuonair.com doesn't have it yet
<jcastro> http://youtu.be/vPBrpMcXHN0
<ahasenack> jcastro: why does it always lag behind? :)
<jcastro> does that work?
<jcastro> ok
<ahasenack> jcastro: the youtube one does
<arosales> jcastro, ya ubuntuonair not working for me atm either
<jcastro> checking
<ahasenack> jcastro: youtube is ok, ubuntuonair.com has nothing
<jcastro> ok try now
<ahasenack> jcastro: it's good now
<stokachu> ok so ive taken out haproxy and setup apache -> gunicorn -> django app
<stokachu> http://paste.ubuntu.com/5868704/ - this is the relation setup
<stokachu> everything works except when i attempt to access login.launchpad.net through our openid setup it is using the unexposed proxy ip rather than the public apache ip
<stokachu> http://paste.ubuntu.com/5868709/ - this is my vhost file
<stokachu> when accessing thirdparty sites like launchpad am i missing a apache setting to force everything to use the server ip?
<SpamapS> FYI, somebody should probably get juju-core into Debian. juju and juju-jitsu are in the process of being removed http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=712724
<jcastro> Yeah I need to find a volunteer
<jcastro> SpamapS: but we have our hands full with the 12.04 backport
<stokachu> and also if my static files are on the proxy server how do i serve those out of apache
<stokachu> looks like ProxyPreserveHost worked
<marcoceppi> stokachu: Was that something you had to add to your vhost.tmpl or that you had to modify the charm to include?
<stokachu> i put directly in the vhost template
<stokachu> marcoceppi: http://paste.ubuntu.com/5868744/
<stokachu> thats my latest
<stokachu> even with forced ssl openid still wants to callback to http
<marcoceppi> stokachu: right, so it wasn't nessiarily somethign that needs to be patched in the charm
<stokachu> that may be something with the application code itself
<stokachu> marcoceppi: oh nah
<stokachu> unless we wanted to add configurable proxy support in apache charm
<stokachu> but right now i just use enable_modules="proxy proxy_http"
<stokachu> and that stanza
<marcoceppi> stokachu: awesome
<stokachu> so can i create a custom site.yaml file and just include all the options for different charms?
<stokachu> and do i have to specify which charms go with which config option?
<stokachu> my django app charm has a config.yaml but i need one for deployment to cut back on juju commands i have to type
<AskUbuntu> Juju deployed apache+gunicorn+django app over SSL, openid fails with No Mode | http://askubuntu.com/q/319382
<marcoceppi> arosales jcastro about to commit this, any tweaks?
<marcoceppi> http://i.imgur.com/AwaZ20T.png
<jcastro> marcoceppi: hide windows for now pls
<marcoceppi> jcastro: ack
 * arosales looking
<marcoceppi> jcastro: I'll leave it to you guys to write the mac osx stuff
<jcastro> yeah I just need the blank canvas
<marcoceppi> this is just a css skel/preview of what it'll look like
<arosales> marcoceppi, looks good
<arosales> marcoceppi, I take it we can edit that via wp admin
<jcastro> no it's on docs isn't it?
<marcoceppi> arosales: nope, it's on the docs, so you can edit it with the power of html
<marcoceppi> it's pretty straight forward though
<jcastro> I was just talking about just redirecting get-started to docs once we do this
<arosales> marcoceppi, even better thanks
<jcastro> have the get started in one place instead of two
<sarnold> "Backports are usually enabled by default" really?
<jcastro> yeah
<jcastro> http://askubuntu.com/questions/319382/juju-deployed-apachegunicorndjango-app-over-ssl-openid-fails-with-no-mode
<jcastro> in before the bot
<sarnold> jcastro: heh, bot beat you by 15 minutes :)
<stokachu> i figure i'd post there for others to get some help too, but once i get this all working ill writeup a nice long tutorial
<jcastro> that would be awesome
<stokachu> ive spent 8 hours on this so far so for me personally i dont want to forget it
<stokachu> tbh this was my first task at juju
<stokachu> so ive come quite a ways
<sarnold> ".. punches hamsters", haha
<stokachu> LOL
<stokachu> i forgot about that
<jcastro> marcoceppi: ready to push those doc changes?
<marcoceppi> jcastro: just working out the javascript so you can actually click on the tabs
 * jcastro nods
<stokachu> is juju 1.x still python?
<stokachu> this is the version iv been using 0.7+bzr628+bzr631~precise1
<jcastro> that's the python version
<jcastro> 1.x and up are golang
<stokachu> ah ok
<stokachu> i heard 1.x doesn't support lxc yet?
<jcastro> no, next monthish?
<stokachu> ok cool
<stokachu> thats just what ive been using for testing etc
<jcastro> yeah
<jcastro> once we have containers it will be so nice
<stokachu> definately, makes it easy to develop apps with. before i was using varnish but this is too cool
<jcastro> you mean vagrant?
<stokachu> ah yea that other v one
<marcoceppi> jcastro: pushed
<jcastro> arosales: for the osx instructions
<jcastro> how do you untar something on OSX?
<arosales> tar -xvf
<arosales> unix linix pretty similar here
<arosales> via the command line
<marcoceppi> I have problem with this guide
<marcoceppi> some of these aren't very black and white
<marcoceppi> guide == qa raiting
<marcoceppi> rating
<marcoceppi> it must be friday, brain is failing me
<arosales> marcoceppi, there are some gray areas
<arosales> marcoceppi, let me get you a link to existing rating reviews
<marcoceppi> also, some of these are pretty opinionated
<marcoceppi> like "Maintainable, easy to read and modify", if I find a charm in chef-solo I would answer no, but a charm in bash would be a yes
<jcastro> think more code comments there
<marcoceppi> ugh, I need to work on the wordpress charm
<jcastro> marcoceppi: are the new CSS/instruction things supposed to render locally?
<jcastro> don't work for me
<marcoceppi> don't know, haven't tried. I run a local apache instance when testing
<jcastro> ok
<jcastro> and it worked?
<marcoceppi> yeah, it doesn't work without a webserver
<jcastro> ok I'm done, can you test when I push to make sure?
<marcoceppi> probably why evilnick is having problems with ask ubuntu integration
<marcoceppi> jquery doesnt' load properly, and it's all down hill from there with jquery
<jcastro> ok
<jcastro> pushed, can you pull and see if it renders right?
<marcoceppi> ack
<marcoceppi> jcastro: only one bug http://i.imgur.com/ds6mmGW.png I'll patch it up though
<jcastro> marcoceppi:
<jcastro> needs a <tt> around juju instead of ` too
<marcoceppi> jcastro: also, you can use <code></code> in liue of ``
<jcastro> heh
<marcoceppi> yup :D
<marcoceppi> I was actually planning on adding these tabs to begin with for the Amulet reference doc, so it's nice to get them out of the way now
<jcastro> arosales: do you remember when the docs regen?
<arosales> jcastro, cron setup to run at: 6,18 30 * * *
<marcoceppi> darn, just missed the 18:30 utc window
<jcastro> marcoceppi: do you remember how we did redirects?
<marcoceppi> jcastro: I do
<jcastro> I copied the survey one and called it template-getstarted-redirect.php
<marcoceppi> Oh, you mean in WP
<jcastro> pushed, and then when IS updates, in WP .... ?
<jcastro> I just select that PHP as the template?
<marcoceppi> You just change the page's template to that
<marcoceppi> that *should* be it
<jcastro> ok
<TheChistoso> hi guys -- are the openstack guys around?
<stokachu> not that i know of
<arges> Not sure if anybody has had this issue before. I'm trying to deploy gunicorn on a local LXC environment, and it can't find endpoints. After checking my environment/configs, I decided to create a new user and try there, and deploying gunicorn worked perfectly.
<arges> Are there files I should remove to 'clean' my environment? I removed .juju/cache and even my local lxc machines
<arosales> marcoceppi, jcastro do you know of the github mirror goes both ways or just one way
<arosales> ie do changes on the github side get mirrored to lp?
<arosales> or just lp --> github ?
 * arosales thinks the latter, but wanted to confirm
#juju 2013-07-13
<stokachu> are canonical employees eligible for the charm contest?
<jcastro> stokachu: nope
<jcastro> arosales: one way
<arosales> jcastro, whew, may want to confirm that on the list.
<stokachu> aw and i had some good ideas
<cjwatson> So - after upgrading from Python juju to juju-core (by way of a general saucy upgrade, I wasn't specifically trying to upgrade), I can no longer access my existing deployment: juju status returns "error: no CA certificate in environment configuration".  How do I fix this?
<cjwatson> (Don't say "bootstrap again".)
 * cjwatson files https://bugs.launchpad.net/ubuntu/+source/juju-core/+bug/1200878
<_mup_> Bug #1200878: Upgrade breaks existing pyjuju deployment <regression-release> <juju-core (Ubuntu):New> <https://launchpad.net/bugs/1200878>
<marcoceppi> cjwatson: this is a known issue. you need pyjuju to access pyjuju environments. you should be able to update-alternatives and select 0.7 for juju
<AskUbuntu> Can I make the MAAS server Juju machine 0? | http://askubuntu.com/q/319618
<bmullan> does juju GO have LXC support fully implemented yet?
<cjwatson> marcoceppi: Thanks.  That seems as though it might have been worth some documentation in the package, such as a debian/NEWS file.
<cjwatson> (I would have read such a thing; I use apt-listchanges.)
<marcoceppi> bmullan: not yet, it's due to land soon-ish
#juju 2013-07-14
<stokachu> dosaboy: /win 6
<stokachu> sorry
<jose> hey m_3, I don't know if you have a couple mins
<stokachu> i got that ssl thing working
<stokachu> http://askubuntu.com/questions/319382/juju-deployed-apachegunicorndjango-app-over-ssl-openid-fails-with-no-mode/320100#320100
<_mup_> Bug #320100: Important difference in explanation of Bug statuses between Ubuntu Wiki and Launchpad Help <help> <Launchpad Documentation:Fix Released by andrea.corbellini> <https://launchpad.net/bugs/320100>
#juju 2014-07-07
<stub> Tribaal: Could be. I'm noticing that bootstrap now seems a lot slower, with a CPU core nearly pegged and 60% iowait for over half a minute.
<d4rkn3t> hello everyone, I've a question for you about JUJU environments and the deploy of services. I'v e created on a virtual environment with 3 VM (1 Region and 2 Cluster), added 1 node to RC and installed JUJU on RC, made the bootstrap of node the ubuntu's installer starts and install the OS. Now I'd like to deploy the services seeing the guides on web I saw that for each charms installed it creates a machine...my question is these machines
<d4rkn3t> are a clone of the node or it's a name to identify just the charm installed on the node?
<d4rkn3t> anyone can answer me?please
<noodles775> d4rkn3t: I think that the name you are referring to is the "service name" (which defaults to the charm name if you don't provide one - see `juju help deploy`).
<noodles775> hazmat, lazyPower: updates to the elasticsearch README if you've time: https://code.launchpad.net/~michael.nelson/charms/trusty/elasticsearch/update-readme/+merge/225802
<noodles775> lazyPower: So I don't ping you in the future, what's the process to get updates to charms in the review queue - do I need to create a bug for each?
<lazyPower> noodles775: yeah, if you've got a MP, make sure charmers is the reviewer
<lazyPower> sorry just now waking up
<lazyPower> its still pretty early here - give me a few to get moving and i'll take a look
<noodles775> lazyPower: hah, sorry? You just replied within the minute! No rush, enjoy your breakfast!
<lazyPower> :)
<d4rkn3t> noodles775: thanks for your support it's a bit clear but I don't understand ia think f I've 4 nodes installed on MaaS and  I try to deploy a service, for example wordpress, this one will be installed on machine 0 by default?
<noodles775> d4rkn3t: Ah - I'm not sure - I've not used MaaS. gmb or allenap might be able to answer your original question then? ^^
<d4rkn3t> noodles775: and in case we want to add another node to MaaS , I've to run again the Juju bootstrap to allow to Juju to know there is a new node?
<d4rkn3t> noodles775: thanks again for your first answer..
<noodles775> No, you only need to bootstrap the juju environment once, but I'll defer to someone with experience with MaaS for the rest of your question :)
<noodles775> no problem.
<allenap> d4rkn3t: Juju asks MAAS for a machine, and MAAS chooses one in no special order (that satisfies any criteria that Juju has specified), so your first service deployment wonât always go to your first machine.
<d4rkn3t> ok, I'll contact gmb or allenap
<d4rkn3t> for the rest
<allenap> d4rkn3t: When you add a machine to MAAS Juju can immediately make use of it, because Juju just asks MAAS for machines as it needs them.
<d4rkn3t> so, one service one node????
<d4rkn3t> each service will be installed on a node?
<allenap> d4rkn3t: Yes, by default, but Juju can put multiple services onto a single machine if you ask it.
<d4rkn3t> ok
<d4rkn3t> now it's more clear!!!
<d4rkn3t> and if I'd want to specify more environments  for example maas1, maas2.... how do juju assign the node to environment? it's the last q. I make :-))
<lazyPower> d4rkn3t: each environment is its own isolated configuration, and your driving workstation will have that configuration
<lazyPower> you can use the same maas cluster for different environments, and you would switch between them as 'juju switch maas1' - they keep the machines allocated isolated to that environment
<lazyPower> i'd caution you against using the same user/apikey though, and isntead make a different user per environment so its apparent in teh maas GUI which machines are allocated to which environment
<d4rkn3t> lazyPower: let's me know....at the begin i've an environment (maas1), i make the bootstrap juju see the node created on MaaS and deploy the service on that nodes. Then i decide to create new environment (maas2) with new nodes,  how can I assign the new nodes to the second environment?
<lazyPower> d4rkn3t: you need to create the maas2 environment in $HOME/.juju/environments.yaml - and follow the same process as you would with mass1 but in the context of maas2 by issuing 'juju switch maas2'
<d4rkn3t> ok
<d4rkn3t> and the new context i can decide which node to use for that environment
<lazyPower> just like maas1 - juju is only asking maas for a node
<lazyPower> maas will randomly return a node for juju to use.
<d4rkn3t> ops ....in the new context...
<d4rkn3t> and using juju-gui, can i see these different environment and the node used for that one?
<lazyPower> You'll need to deploy a second instance of the juju-gui
<lazyPower> at the moment you cant manage multiple environments with a single juju-gui - rick_h__ may have more information on the subject as he's the GUI project guru.
<d4rkn3t> lazyPower: thanks a lot for your support I'll try to make that on my infrastructure
<lazyPower> No Problem d4rkn3t
<d4rkn3t> lazyPower: I've tried to add 1 more node on MaaS but Juju don't see that when I run juju status
<d4rkn3t> why?
<lazyPower> d4rkn3t: which environment are you in? still in maas1?
<d4rkn3t> the default, maas
<lazyPower> and how are you trying to add a machine?
<adeuring> d4rkn3t: Juju knows only about machines that are already deployed. By adding a machine to Maas you just make the number of machines offered by Maas larger
<lazyPower> (relative) morning adeuring
<d4rkn3t> how can i make that?
<adeuring> morning lazyPower
<d4rkn3t> the node is in ready status
<adeuring> d4rkn3t: just run "juju deploy some-new-service" of "juju add-unit"
<d4rkn3t> it should see the new node added on MaaS?
<adeuring> yes
<d4rkn3t> I don't see it
<d4rkn3t> if i run juju status I see just "0" machines ( the first node I added before)
<adeuring> d4rkn3t: whoich commands did you try?
<lazyPower> i think its prudent to start a few steps back. How many machines do you have allocated in your MAAS pool d4rkn3t?
<d4rkn3t> lazyPower:  at moment I've 2 node
<lazyPower> d4rkn3t: ok, so when you view your MAAS gui, you have the region-controller and the cluster controller on teh same machine, with 2 additional nodes enlisted in maas?
<d4rkn3t> one node has been bootstrapped with juju
<d4rkn3t> now I've added another node to MaaS,
<lazyPower> http://i.imgur.com/k0jvVIT.png
<lazyPower> similar to the following, but showing 2 nodes, correct?
<d4rkn3t> Ive RC + 2 CC ( offer DHCP service) with 2 node
<lazyPower> when you issue juju deploy 'myservice' - its going to take a moment to go through the fastpath installer (assuming thats how you have your nodes setup) before it'll show as enlisted in juju
<lazyPower> this can take up to 5 minutes depending on network speed, machine specs, etc.
<lazyPower> however, in juju you should see it as pending
<d4rkn3t> ok
<d4rkn3t> until here everything are ok!
<lazyPower> I'm bootstrapping my maas cluster atm so i can pull example output for you
<d4rkn3t> lazyPower: thanks
<lazyPower> d4rkn3t: http://paste.ubuntu.com/7760128/
<lazyPower> thats directly after running juju quickstart, and juju deploy ubuntu
<d4rkn3t> you're using 2 node, isn't it?
<d4rkn3t> "0" and "1"
<d4rkn3t> and on "1" you've deployed juju-gui!
<lazyPower> yep, there's 3 total here, the bootstrap teh gui and a pending ubuntu node
<d4rkn3t> lazyPower: sorry why 3 machines?
<lazyPower> d4rkn3t: boostrap is machine 1 - i didn't co-locate juju gui, so thats machine 2 - the ubuntu service is node 3. by default juju assumes 1 service per node
<d4rkn3t> I've just deployed juju-gui and make the status http://paste.ubuntu.com/7760176/, now i see also the second node
<d4rkn3t> now also the second node is in allocated
<lazyPower> sounds like things are progressing as they should
<lazyPower> you can save yourself a node by deploying the juju-gui with '--to 0' to make it deploy on the bootstrap node
<lazyPower> i just accepted teh juju quickstart defaults for simplicity sake
<d4rkn3t> I've loose something why before the deploy I saw only 1 machines and after the deploy i see also the second one????
<lazyPower> noodles775: Merged, thanks for the Readme update
<d4rkn3t> i've tried to run the command juju deploy juju-gui --to 0 but receive this error "ERROR cannot add service "juju-gui": service already exists"
<lazyPower> d4rkn3t: because juju is completely unaware of the maas pool, it just sends messages to maas requesting a machine.
<d4rkn3t> lazyPower: ok, it's clear
<lazyPower> d4rkn3t: you will have to juju destroy-service juju-gui, or deploy it with a different name (if you want 2 juju-gui's) deployed.
<noodles775> lazyPower: great, txs.
<d4rkn3t> i've destroyed it and the status now is  http://paste.ubuntu.com/7760210/""
<lazyPower> noodles775: suggestion for the next update: use juju-run instead of juju ssh
<lazyPower> juju-run is brilliantly handy
<lazyPower> d4rkn3t: looks like agent 1 hasn't finished setting up. are you using the fastpath installer in maas?
<d4rkn3t> yes
<d4rkn3t> I'm seeing just now
<d4rkn3t> ops!!!!
<d4rkn3t> I've to wait
<lazyPower> you can't be impatient :) We're orchestrating several layers of complexity here.
<d4rkn3t> you right!!!!!
<noodles775> lazyPower: I do use juju run for other things, not sure why I used ssh here. I'll switch it in the branch I'm working on :)
<lazyPower> noodles775: its not a big thing, i just like promoting juju-run
<lazyPower> noodles775: your juju-ssh line works ootb, and is just as brilliant. However i'm pushing the -run agenda here :P
* lazyPower changed the topic of #juju to: Welcome to Juju! || Docs: http://juju.ubuntu.com/docs || FAQ: http://goo.gl/MsNu4I || Review Queue: http://goo.gl/9yBZuv || Unanswered Questions: http://goo.gl/dNj8CP || Weekly Reviewers: cbutler & jcastro || News and stuff: http://reddit.com/r/juju
<noodles775> lazyPower: Yeah, we're using it to implement generic "actions" (like actions/reindex) so we can do `juju run --unit foo/0 actions/reindex` (until there's proper support for actions, I haven't checked recently).
* lazyPower changed the topic of #juju to: Welcome to Juju! || Docs: http://juju.ubuntu.com/docs || FAQ: http://goo.gl/MsNu4I || Review Queue: http://goo.gl/9yBZuv || Unanswered Questions: http://goo.gl/dNj8CP || Weekly Reviewers: lazypower & [jcastro|jose] || News and stuff: http://reddit.com/r/juju
<lazyPower> noodles775: its coming but isn't here yet. we're taking similar actions against a few charms. cory_fu has done similar in the apache allura charm
<noodles775> Cool, I'll try to check it out to compare and learn.
<Caguax> juju switch maas
<Caguax> ERROR couldn't read the environment
<Caguax> Just install juju 1.20.0 and ran 'juju generate-config'. Edit the corresponding areas for maas but get the following after running 'juju switch maas' ;
<Caguax> juju switch maas
<Caguax> ERROR couldn't read the environment
<lazyPower> Caguax: you have an error in your YAML
<lazyPower> typically this is because you used a tab character instead of 4 spaces, but could be a number of things.
<Caguax> lazyPower: hmm any log that help pih-point them ?
<lazyPower> suggest to run it through a YAML linter
<lazyPower> http://stackoverflow.com/questions/287346/yaml-validation  Caguax
<Caguax> lazyPower: thanks...let me check that out
<lazyPower> i would caution against using online yAML validators as you dont know what they are doing with the data. there's a few ruby/node.js listed linters in there
<d4rkn3t> lazyPower: is there a way for juju to see the nodes added in the second time and start it in allocated status?
<lazyPower> d4rkn3t: sounds to me like you want to allocate machiens to juju before you deploy. That emulates the manual behavior of juju - and will become cumbersome once you scale to gt 10 nodes.
<lazyPower> i would advise against that
<lazyPower> buti f you really want to go that route, by running juju add-machine, it will alloate the machine in juju
<d4rkn3t> lazyPower: yes I'd like to make that, before to make the deploy of service
<lazyPower> then you *have* to use juju deploy --to nodenumber   in order to deploy services, otherwise it will request another machine from MAAS
<d4rkn3t> I've to use juju add-machine to inform juju I've added 1 more node to MaaS?
<lazyPower> juju has no concept of maas other than it sends messages requesting a machine
<lazyPower> juju add-machine will request the machine from maas, install the agent and leave it in an idle state, waiting for a service to be deployed to it.
<d4rkn3t> perfect, but if I run the juju status I'd see the nodes available in my infrastructure!!!!!
<lazyPower> d4rkn3t: there's maas-cli for that https://maas.ubuntu.com/docs/maascli.html
<lazyPower> and the maas gui
<lazyPower> but if thats what you want - i'm happy to say you've achieved that
<lazyPower> :)
<Caguax> lazyPower: Thanks...it was some space/tab thingie
<lazyPower> Caguax: no problem - it gets me too.
<lazyPower> Caguax: i find that when i edit in vim, if i show hidden characters while editing yaml, i'm about 90% more effective at not placing tabs vs spaces.
<Caguax> lazyPower: Cool, will try that. thnks
<d4rkn3t> lazyPower: I'd like to avoid to use always MaaS to see how many nodes I've available if I'm working with juju....
<lazyPower> sinzui: grats on landing 1.20.0!
<adeuring> d4rkn3t: the problem is that juju works also on public clouds (amazon/hp,azure/joyent etc). And these companies don't always want to say "we have a present 5000 machine idling and waiting for customers"
<sinzui> thank you lazyPower
<d4rkn3t> it's also true that!!!
<d4rkn3t> but this is aspect that who works with juju should know, it's just my opinion!!!!! :-)
<d4rkn3t> ops "but this is an aspect ..."
<d4rkn3t> there should be  a way to see the available nodes presented on MaaS before to make the deploy of a service.....
<d4rkn3t> lazyPower: thanks a lot for your technical support!!!
<lazyPower> No problem d4rkn3t
<d4rkn3t> allenap & noodles 755: thanks to you!! see y next time
<d4rkn3t> hello again guys!but during the juju status I've seen this "agent-state-info: 'hook failed: "install"'" you can see all of that here "http://paste.ubuntu.com/7760515/" what does it mean?
<lazyPower> d4rkn3t: something happened during the install hook that caused teh charm to fail. its now in a state that you need to resolve manually before it can proceed
<lazyPower> you can either juju debug-hooks service/unit-number or you can juju resolved --retry service/unit-number to attempt retrying the hook to see if its temporary.
<lazyPower> d4rkn3t: https://juju.ubuntu.com/docs/authors-hook-debug.html - see that for using debug-hooks
<d4rkn3t> i've run "juju resolved --retry juju-gui/0" but i've receive any answer"""
<lazyPower> d4rkn3t: you're either going to have to look through juju debug-log to see why it failed, or enter debug-hooks, run the install hook manually and find out why its failing
<lazyPower> in either case, its going to require manual intervention if its not resolving itself when being retried
<d4rkn3t> while the command "juju debug-hooks juju-gui/0" it' opened the terminal node! seeing in the machine-0.log there is this "ERROR juju runner.go:220 worker: exited "api": websocket.Dial wss://localhost:17070/: dial tcp 127.0.0.1:17070: connection refused"
<d4rkn3t> after that now it's in started (http://paste.ubuntu.com/7760573/)
<d4rkn3t> ?????
<lazyPower> d4rkn3t: not sure why you got the API connection refused - but if its in started, you should be able to visit the GUI now.
<lazyPower> can you try it and see if its pulling up for you or if it resolved without fixing the error?
<d4rkn3t> the url to use it "MaaSCCSvr1Node1.maas"
<d4rkn3t> the answer is "The page you are looking for is temporarily unavailable.
<d4rkn3t> Please try again later." and the url is changed in "http://cdn.spotflux.com/50x.html"
<lazyPower> ok, not sure whats going on. I would recommend to destroy the service and machine, and start over on the GUI deployment - so we can troubleshoot from step 1
<lazyPower> if it fails install a second time, instead of trying resolved -r, issue a juju debug-hooks and re-run the install hook
<d4rkn3t> ok
<Caguax> I this a timeout issue ?
<Caguax> ERROR juju.cmd supercommand.go:323 cannot initiate replica set: Closed explicitly
<Caguax> https://gist.github.com/luflores/11fa3c6b4af78b6bd503
<d4rkn3t> lazyPower: I've destroyed the service, I'm trying to destroy also the environment to re-start from the begin but I can't make this step. juju gives me this error "ERROR failed to destroy environment "maas"
<d4rkn3t>         
<d4rkn3t> If the environment is unusable, then you may run
<d4rkn3t>     juju destroy-environment --force"
<d4rkn3t> i made also the --force but nothing
<lazyPower> if juju destroy-environment maas --force isn't working for you then there are larger problems manifesting here that are outside my realm of knowledge
<lazyPower> that should forcibly destroy your juju environment with a large hammer with great predjudice.
<Delair> I deployed neutron-gateway in kvm and and rest of the services including nova-compute on another server just for testing. Everything is deployed but i cant see the neutron service running when i login to openstack dashboard
<Delair> do i need a relation from neutron-gateway to keystone
<adeuring> utlemming: Today's Juju/Vagrant images don't work after a reboot: ISTM that the call of /root/redirect.py is missing again, so that port 8001 of the virtualbox is not forwared to 80 of the LXC instance of the GUI
<utlemming> aduering: do you have a paste of the Juju output?
<utlemming> adeuring: er, I mean the console of "vagrant up"?
<adeuring> utlemming: http://paste.ubuntu.com/7760876/
<utlemming> adeuring: looking...slow download today
<jrwren> anyone else getting much rsyslog messages to /var/log/syslog on machines?  http://paste.ubuntu.com/7760981/
<sebas5384> hey lazyPower! o/
<Caguax> I am trying to run 'juju quickstart' to test my installation but it is failing with a 'DEBUG juju.mongo open.go:87 connection failed, will retry: dial tcp 127.0.0.1:37017: connection refused' Anyone have seeing this ?
<lazyPower> o/ hey sebas5384
<sebas5384> lazyPower: when you can, please take a look at this drupal charm? https://github.com/sebas5384/charm-drupal
<sebas5384> :)
<sebas5384> I release a 0.5 version, and now I'm going to do some other relations, like varnish, etc...
<Caguax> I most be doing some obvious thing wrong but juju quickstart does not work on 1.20
<lazyPower> sebas5384: I don't see it in the review queue. https://juju.ubuntu.com/docs/authors-charm-store.html
<sebas5384> lazyPower: yeah, for that i have to use bzr ?
<sebas5384> launchpad
<lazyPower> Thats the officially supported method.
<sebas5384> hmmm
<sebas5384> lazyPower: ok then Â¬Â¬
<lazyPower> Sorry sebas5384. Everybody else does it - its easy to lose track of things if it's not in the queue.
<lazyPower> in the future github will be a supported source and ease the process.
<sebas5384> yeah I can imagine that! ;)
<hasues> Does anyone have a working juju after deploying from github?  I can't seem to execute generate-config or anything else without errors?
<lazyPower> hasues: if you're working on -HEAD of juju-core, you want want to ask in juju-dev
<hasues> lazyPower: Well, I merely used "go get -d -v github.com/juju/juju/...", does that pull -HEAD?
<lazyPower> hasues: i would think so, but i dont know.
<sebas5384> ok now, that was easy https://code.launchpad.net/~sebas5384/charms/precise/drupal/trunk
<sebas5384> :)
<jrwren> juju-charm getall  # might not have been a good idea for me
<lazyPower> jrwren: mirroring the charm store, one charm at a time :)
<jrwren> Grabbing 164 charms from Charm Store
<rick_h__> jrwren: how goes?
<jrwren> rick_h__: I'm squashing bugs.
<jrwren> rick_h__: I'm enjoying it :)
<jrwren> rick_h__: learning a lot too. e.g. first time with debug-hooks
<jrwren> rick_h__: welcome back :)
<rick_h__> jrwren: heh, just got in the door in time for a meeting
<rick_h__> jrwren: cool on bug squashing
<michelp> sebas5384, cool!  ansible integration :)
<sebas5384> thanks michelp !!
<sebas5384> :)
<sebas5384> ansible rocks! \o/
<jrwren> i read https://juju.ubuntu.com/docs/authors-relations-in-depth.html and https://juju.ubuntu.com/docs/authors-charm-interfaces.html and I'm left with the question about optional or default value interface fields. Is that a comming thing?
<jrwren> common thing?
<jrwren> because: https://bugs.launchpad.net/charms/+source/mysql/+bug/965094
<_mup_> Bug #965094: Provide config option to specify database encoding <mysql (Juju Charms Collection):Confirmed> <https://launchpad.net/bugs/965094>
<sebas5384> [!] question: the charm icon only appears if the charm is recommended?
<lazyPower> sebas5384: correct
<sebas5384> damn it Â¬Â¬
<sebas5384> hehe
<jose> cory_fu: ping
<cory_fu> jose: Hey, what's up?
<jose> cory_fu: hey, I got to reproduce the error with allura, if you want I can give you ssh access to the machiens
<cory_fu> jose: My public ssh key is up on Launchpad
<jose> awesome! give me just a minute
<cory_fu> jose: Thanks again for helping me figure out the issue with the Allura charm.  You're the man.  :)
<jose> not a prob :) glad I could give a hand!
#juju 2014-07-08
<jose> hey guys! will I be able to deploy on the maas master node?
<noodles775> lazyPower, hazmat: Another one that you might be interested in: https://code.launchpad.net/~michael.nelson/charms/trusty/elasticsearch/add-ufw/+merge/225934
<Egoist> Hello
<Egoist> Why when i try deploy charm from local charm repository
<Egoist> it takes some kind of old code, not the good one, that i changed
<Egoist> ?
<rbasak> sinzui: can we sync later today when you're in, please? I'm looking at juju 1.20 -> Utopic, and have a diff of PPA to Utopic packaging with a view to reducing it.
<rbasak> It's pretty good already, but I wanted to check with you on a few of the differences so that we can decide which way is preferred and then do the same on both.
 * rbasak goes to lunch
<d4rkn3t> lazyPower: hi, how are y? I've re-configured everything from the begin, now I've deploy juju-gui "http://paste.ubuntu.com/7765331/" now to open the web Gui do I have to use the public-address?
<lazyPower> d4rkn3t: it should respond on any address available.
<d4rkn3t> if i use "http://maasccsvr1node1.maas/ receive that host is unknow and "Unknown Host
<d4rkn3t> Description: Unable to locate the server requested --- the server does not have a DNS entry. Perhaps there is a misspelling in the server name, or the server no longer exists. Double-check the name and try again."
<lazyPower> do you have your maas DNS server set as a dns provider?
<lazyPower> as in can you ping maasccsvr1node1.maas?
<d4rkn3t> from maas svr the ping is ok from host machine no.
<d4rkn3t> I remind y MaaS is a VM created on kvm
<lazyPower> i dont know your specific networking setup, so its difficult to gague a proper response
<lazyPower> *gauge
<lazyPower> do you have a bridged eithernet adapter providing public IP's for your units?
<lazyPower> in a typical maas setup you need 2 ethernet devices. one for internal, a secondary for public. the public ethernet adapter is a bridged connection - so you dont have to use tools like sshuttle to reach the instances.
<d4rkn3t> I've created a virtual network between my host and the VM
<d4rkn3t> and I created  a virtual networkon virt-manager and kvm has generated a virt0 interface on my host. i communicate with VM using these net
<lazyPower> if you can reach the individual vm's from outside the KVM host, you're g2g - othewrise you'll have to create a tunnel to communicate with jujud eployed services
<d4rkn3t> before to realize that i want first test it in a separate environment and then create an environment like you've suggested me
<d4rkn3t> I've added to hosts file the association IP and hostname, and from host i can ping either IP that hostname
<lazyPower> you should be able to place your MAAS DNS server in /etc/resolv.conf
<lazyPower> for example mine is: search maas  nameserver 10.0.10.2
<lazyPower> with a newline between the maas and nameserver lines.
<d4rkn3t> I've add the maas's ip on my host and i can ping it by hostname but i receive the same error when try to open the web ui
<d4rkn3t> noooo.... I'm sorry I made the ping from RC svr!!!!!!!!
<rbasak> sinzui: ironic that what you predicted in https://bugs.launchpad.net/launchpad/+bug/231797 in 2010 has now happened - for Juju, where you now manage releases :)
<_mup_> Bug #231797: no sensible way to use debian/watch files with launchpad hosted tarballs (no simple url-and-link list of all downloads) <lp-registry> <packaging> <releases> <Launchpad itself:Triaged> <devscripts (Ubuntu):Invalid> <https://launchpad.net/bugs/231797>
<sinzui> rbasak, I get angry everytime that downloads page comes into conversation. Too many people worked on it without knowing who needed to use it.
<lazyPower> d4rkn3t: so you're able to connect to the gui now? everything's good?
<noodles775> lazyPower, hazmat: ...and following on from firewalling the admin port (9200) is firewalling the node-to-node comms port (9300) if either of you have time: https://code.launchpad.net/~michael.nelson/charms/trusty/elasticsearch/ufw-for-peers-too/+merge/225968
<lazyPower> thanks noodles775, it'll be a bit before i get into the queue today
<hazmat> noodles775, nice.. on the client .. that does prevent expose from working though .. albeit its not advisable with es
<noodles775> hazmat: what's the use-case for wanting to expose 9200? If you really wanted to do that, I'd personally do it via an apache fe, but if there's a real use-case, happy to update it.
<hazmat> noodles775, i'm not sure there is
<hazmat> noodles775, re the use case.. possibly between multiple ostack envs but not public access
<hazmat> noodles775, agreed.. normal usage for a js client would always be a nginx/apache frontend
<d4rkn3t> lazyPower: adding hostname and ip on hosts file on host machine i reach the node via ping using the dns no!!! anyway trying to open juju gui receive the same error "Unknown Host "
<hazmat> noodles775,  i can't think of a concrete use case, not worth while till there is one.
<lazyPower> d4rkn3t: thats bizarre
<d4rkn3t> it's really bizarre!!!!
<noodles775> hazmat: great (given that we do have a use-case for denying non-client access to 9200, so that any other unit on the internal network isn't able to play with your indexes :P)
<hazmat> noodles775, do you use any of the es management plugins?
<d4rkn3t> also ssh is working (ssh ubuntu@maasccsvr1node1.maas)
<d4rkn3t> lazyPower: the problem was in url, using http the web gui doesn't work via https yes!!!!!
<d4rkn3t> now i see the tentative of Juju of connecting to environment!!!
<lazyPower> strange, the juju-gui should work over https...
<lazyPower> it uses a snakeoil certificate, and quickstart auto-launches an https url for you.
<noodles775> hazmat: nope, not so far - we're currently controlling the indexes from the client application, and haven't yet done much analysis (but will be shortly). Which ones do you recommend?
<noodles775> hazmat: as far as adding support in the charm for plugins, I'd assume we'd provide two methods (installing from a payload plugins directory for our own usage, as well as from github for casual usage)
<noodles775> bigdesk looks useful.
<d4rkn3t> it's working over https....... i've accepted the certificate and boom the home page of gui is ready!!!not really, because it tries to connect to environment but  nothing
<d4rkn3t> it gets so long time!!!!! nothing happened it continues to try the connection
<hazmat> noodles775, yeah.. bigdesk and kopf are the actively developed useful ones.. bigdesk has some nice charts/stats out of the box
<hazmat> noodles775, here's a good comparison of the various plugins.. https://blog.codecentric.de/en/2014/03/elasticsearch-monitoring-and-management-plugins/
<lazyPower> d4rkn3t: well since you're pushing manual settings in /etc/hosts - sounds like theres still some misconfiguration at play. The GUi probably cannot connect to the API Server, and if its going by hostname, and tehre's no resolution that would explain teh timeout of the GUI connecting.
<lazyPower> its a web-socket connection, and i'm pretty sure it works by hostname, rick_h__ would know this for sure.
<rick_h__> lazyPower: my ears are itching, reading backscroll
<jcastro> hey lazyPower
<lazyPower> hi jcastro
<mbruzek> rick_h__, itchy ears, you should get that looked at.
<jcastro> cory_fu's allura charm looks ready to promulgate
<lazyPower> jcastro: gonna be a bit before i'm in teh queue today
<rick_h__> lazyPower: d4rkn3t sorry, backscroll seems to imply there's a bunch of history here. What's going on?
<rick_h__> lazyPower: d4rkn3t if the gui shows the 'connecting to environment' message it's trying to establish a websocket connection to the state server's api endpoint.
<rick_h__> lazyPower: d4rkn3t if it's failing, check the browser console/network tab (you might have to reload with it open) and look at the url it's trying to hit and any error/etc in there
<d4rkn3t> lazyPower: http://paste.ubuntu.com/7765803/
<lazyPower> rick_h__: d4rkn3t has a juju/maas setup - he's not using the MAAS DNS and instead plunking ip's in his /etc/hosts - my thought is thats not going to work if the gui isn't aware of the websocket state server hostname, as thats what it uses to connect right? or is it using an implicit ip? i'm not really sure where it gets the info from...
<d4rkn3t> rick_h:  I've already made the reload of page but nothing it continue to try the connection to node
<rick_h__> d4rkn3t: right, but open the network tab in your browser's developer tools and look at what address it's attempting to connect to
<rick_h__> lazyPower: hmm, looking to see if I can remember how it finds the address to use. frankban know off the top of your head ^ ?
<frankban> rick_h__: reading
<rick_h__> frankban: does the charm feed the juju websocket ip/dns name via the settings?
<frankban> rick_h__: the guiserver is started passing the juju API url, the GUI just connects to the gui service unit address
<rick_h__> frankban: ah right. d4rkn3t so yea, need to find out what url it's trying to connect to. It sounds like the client (your machine) can't route to the charm's running server.
<lazyPower> I'm fairly certain the root of these issues are due to lack of resolveable dns within that setup.
<lazyPower> yeah
<d4rkn3t> rick_h: this is what i see in browser console "WebSocket connection to 'wss://maasccsvr1node1.maas/ws' failed: WebSocket is closed before the connection is established. maasccsvr1node1.maas/:1"
<frankban> rick_h__: FWIW the API URL is retrieved by the charm from the hook's execution context: the JUJU_API_ADDRESSES env var
<lazyPower> frankban: that, is really good info to have. thank you
<lazyPower> frankban: so you just parse the ENV var and fish out the stuff you need? i may take this approach with another charm i'm working on
<rick_h__> thanks frankban
<d4rkn3t> rick_h_: in the node as GW i've 1-1-2-1.maas
<frankban> lazyPower: this is how we get the API address: http://bazaar.launchpad.net/~juju-gui/charms/trusty/juju-gui/trunk/view/head:/hooks/utils.py#L140
<frankban> lazyPower: it is possible to really simplify that if you don'y have to support old versions of juju
<lazyPower> frankban: looks about right :)
<lazyPower> thats what i expected, os.env('foo')
<frankban> lazyPower, rick_h__: I think https://bazaar.launchpad.net/~juju-gui/charms/trusty/juju-gui/trunk/view/head:/HACKING.md#L237 is relevant for investigating this kind of errors
<lazyPower> I for whatever reason was thinking it was passed as config, but that didn't sound right - because we're not shipping anything to the charm.
<lazyPower> frankban: thats all about 2 steps further than where we are with d4rkn3t's issues. he's having an issue with the juju-gui connecting to the state server.
<frankban> lazyPower: yeah, to complete that story, the api address is then passed as a cli argument to the GUI server, which acts as a proxy between the browser and the juju-core api server
<lazyPower> and that's more along the lines of the DNS half-configuration i've pointed out above. If we get d4rkn3t's setup working without manually stuffing hosts in /etc/hosts, this shoudl all go away.
<frankban> cool
<lazyPower> i figured it was a connectivity issue, thanks for confirming my suspicious and the insight into how the gui configures itself frankban
<lazyPower> rick_h__: *hattip*
<frankban> lazyPower: mp
<lazyPower> d4rkn3t: so, sounds like the core problem here is the half-configured environment. Is there a specific reason you're manually adding hosts to /etc/hosts? you should be able to just add your region controller as a DNS server to your resolv.conf and the nodes will be available to you
<d4rkn3t> lazyPower: I've made that because for my host I can't ping the node using its own hostname, i tried that just to see that from my PC can reach the node and open the JUJU's web gui
<lazyPower> d4rkn3t: the MAAS stack deploys a bind server on the region/cluster controller. so you should be using that to do dns resolution
<lazyPower> make sure its the first server listed in your resolv.conf and the rest should 'just work'
<d4rkn3t> I' ve made that but nothing, this my resolv.conf file on host machine http://paste.ubuntu.com/7765902/
<jcastro> mbruzek, does the tomcat charm you worked on do HA?
<lazyPower> after the nameserver 1.1.1.10 move the search maas line up there.
<lazyPower> then try pinging your .maas node again with it commented out in /etc/hosts
<jcastro> mbruzek, nevermind I was looking in the wrong place, looks like you do have cluster support
<mbruzek> jcastro, not specifically it will cluster
<d4rkn3t> like this "http://paste.ubuntu.com/7765913/" I've removed the line on hosts file i can ping it using hostname, but on my browser juju continues to try the connection to the environment
<lazyPower> i'm not sure what to recommend. frankban there's a proxying socket server on the juju-gui host right?
<frankban> lazyPower: yes, the guiserver
<frankban> lazyPower: which logs to /var/log/upstart/guiserver.log
<lazyPower> d4rkn3t: and you've commented out that line in /etc/hosts so you're positive the DNS resolution is working?
<jcastro> mattgriffin, hey do you guys have power8 builds in your repo?
<d4rkn3t> frankban: this is the guiserver.log on node http://paste.ubuntu.com/7765957/
<d4rkn3t> lazyPower: yes now i can resolve that by resolv.conf but if i try to run the command "sudo resolvconf -u" to upgrade the file i lost that nameserver!!!
<frankban> d4rkn3t: I don't see any ws connections there, could you please post the response from https://<juju-gui-url>/gui-server-info ?
<lazyPower> d4rkn3t: dont panic - you can set this in /etc/resolv.conf.d/head
<d4rkn3t> ok
<frankban> d4rkn3t: also, it is possible to switch logging to debug with "juju set juju-gui builtin-server-logging=debug"
<d4rkn3t> frankban: http://paste.ubuntu.com/7765974/
<d4rkn3t> i've run that command but in terminal i dont' see anything
<frankban> d4rkn3t: so the bootstrap node is maasccsvr1node1.maas, right?
<d4rkn3t> yes
<frankban> d4rkn3t: yeah, that command just changes how the gui server logging is configured. now you can look at the logs again while performing a request
<d4rkn3t> and the juju status is this http://paste.ubuntu.com/7765980/
<d4rkn3t> frankban this is the log http://paste.ubuntu.com/7765985/
<d4rkn3t> frankban: and this one is after to reload the page http://paste.ubuntu.com/7765991/
<mattgriffin> hi jcastro. i'll check into it. why do you ask?
<jcastro> I was just thumbing through the percona-cluster charm and was wondering if it was available on POWER8
<mattgriffin> jcastro, cool. i'll look into it :)
<jcastro> they do free hardware access btw: https://www-304.ibm.com/partnerworld/wps/servlet/ContentHandler/stg_com_sys_power-development-platform
<mattgriffin> jcastro, excellent. thanks for sharing. i had asked a former colleague about how to get some hardware a month ago... this is great
<jcastro> siteox.com also has shell accounts for like 30 bucks a month
<frankban> d4rkn3t: I still don't see logs about incoming WebSocket connections, it seems the browser is not sending ws requests. Do you see the same behavior also e.g. switching to another browser or removing caches?
<d4rkn3t> frankban: i try to remove cache
<frankban> d4rkn3t: incognito mode could also help
<d4rkn3t> i've cleaned the cache same problem. i used incognito i see the login page
<d4rkn3t> why ???
<frankban> d4rkn3t: are you able to log in?
<d4rkn3t> the extension "Spotflux Lite" blocked the connection!!!now it's working perfectly
<d4rkn3t> it's incredible!!!
<d4rkn3t> 2 days for that!!!!
<frankban> d4rkn3t: :-/
<d4rkn3t>  it's unbelievable.....i'm so sorry if y've to lost your time for me....
<d4rkn3t> i try to disable that and go.....re-active that no login!!!
<frankban> d4rkn3t: no problem really! happy we solved that
<d4rkn3t> yeah, i want to thank y for everything guys, you're fantastic
<d4rkn3t> let's go to have a beer all together i'll offer you!!!
<d4rkn3t> next step will be adding more nodes and deploy openstack!!!!
<d4rkn3t> fucking extensions!!!!!!
<jcastro> d4rkn3t, well, at least it's not something complicated!
<d4rkn3t> jcastro: y right, but your team have support me for 1 entire day for resolving the problem 'n discovering that the problem was that....
<jcastro> heh yeah it happens
<jcastro> glad it's sorted for you though!
<d4rkn3t> anyway thanks a lot guys for your support, i hope to repay you soon bye
<lazyPower> Aww he's gone
<lazyPower> i was going to say 'tell your friends about us!' - next time *snaps*
<d4rkn3t> i came back here again....in the juju-gui there is a notification "Failed to load charm details. Charm API error of type: no_such_charm", is maybe I've not installed charm-tools??
<rick_h__> d4rkn3t: no, that means somewhere there's some bad data for a charm it could not load
<rick_h__> d4rkn3t: it should be safe to ignore
<d4rkn3t> ok, how can i make to know which bad data it needs to work well?
<d4rkn3t> i mean it's possible to correct that?
<lazyPower> d4rkn3t: if a charm passes 'charm proof' (which comes from charm-tools) it should be fine.
<adeuring> utlemming: could you please have a look here: https://code.launchpad.net/~adeuring/jujuredirector/check-juju-status/+merge/226002
<d4rkn3t> ok, i thought it was an error. thanks again
<avoine> is it possible that juju don't add the user ssh key by default in authorized_keys on unit in 1.20 ?
 * avoine is trying   juju authorized-keys add
<lazyPower> noodles775: hey have you seen the elasticsearch 403 failure on the repository?
<lazyPower> this is new behavior
<noodles775> lazyPower: Nope? I've deployed with the branch quite a few times today (but some are with our own private repo). Is it the elasticearch.org repo for which you're getting a 403?
<lazyPower> yes
<lazyPower> the default is whats 403'ing
 * noodles775 sets a default deploy running and goes to read with a kid.
<jcastro> sinzui, may I butcher the release notes to reuse them on my blog?
<jcastro> too many good features to not tell the world
<noodles775> lazyPower: hrm, I just deployed again with the default repo without issues. Eg. log without errors: http://paste.ubuntu.com/7767027/
<noodles775> lazyPower: can you paste the log for the error that you saw, if you've still got it handy?
<jcastro> https://news.ycombinator.com/item?id=8006037
<lazyPower> noodles775: i can re-run it, give me a few - i'm in a meeting. will you be around for a bit?
<noodles775> lazyPower: I can check back later, sure.
<sinzui> jcastro, please do. Chop until you have your message for the masses
<noodles775> lazyPower: fwiw, a 403 from elasticsearch.org repo an issue at their end (perhaps when they're updating/publishing not sure). Let me know if you're able to reproduce, but if not, I don't think it's related to the charm.
<lazyPower> well the charm should default to our repos
<lazyPower> noodles775: http://paste.ubuntu.com/7767221/
<noodles775> lazyPower: what do you get if you `juju run --unit elasticsearch/0 "curl http://packages.elasticsearch.org/elasticsearch/1.2/debian/dists/stable/main/binary-amd64/Packages"` ?
<lazyPower> well that worked
<noodles775> lazyPower: when you say the charm should default to our repos, which repos do you mean? (elasticsearch isn't in trusty, afaict)
<lazyPower> noodles775: you're right, i just checked and its not in trusty - i remember looking at that during the review
<lazyPower> weird that the apt-get update is whats 403'ing when that curl woorks
<lazyPower> http://paste.ubuntu.com/7767288/
<lazyPower> there's the output from the curl
<noodles775> lazyPower: if the curl works, can you debug-hooks on the unit and re-run the hook (I basically want to know if it's an intermittent issue, or related to wherever you're running, i've still not repro'd)
<lazyPower> AH YOU KNOW!
<lazyPower> i figured ito ut noodles775, this is a lazypower problem
<lazyPower> not a charm problem
<noodles775> Great, what was the issue?
<lazyPower> the curtain proxy of maas
<noodles775> Ah :)
<lazyPower> i haven't setup any kind of forwarding for ppa's, and its been forever + 6 months since i've tried a charm with a ppa configuration
<lazyPower> really sorry about that - i forgot the quirks of my own setup
<lazyPower> yep, and commenting out the proxy on elasticsearch fixed it
<lazyPower> gahhhh i'm ashamed. i'll go hide now
<noodles775> No probs at all, glad it's sorted :)
<noodles775> lazyPower: btw, you can also bundle the elasticsearch package in the charm (see the readme) and it will use that instead, if that helps.
<noodles775> G'night!
<jose> guys, any idea on why my LXC containers may be stuck in pending state?
<thumper> jose: yes
<thumper> it is all my fault :-(
<thumper> jose: is this a new bootstrap?
<jose> thumper: yeah
<thumper> and the local provider?
<jose> no
<jose> manual with lxc
<jose> with many services in lxc
<thumper> hmm
<thumper> how long have you waited?
<jose> about... 20mins?
<jose> lxc-ls --fancy gives no useful info apart from just one machine being stopped
<thumper> has this machine been tested with manual before?
<jose> it was working a while ago, before I went for lunch
<thumper> jose: can you pastebin the following: `find /var/lib/juju` and `lxc-ls --fancy` ?
<jose> sure thing!
<thumper> this may not be my fault
<jose> oh wait
<jose> the machine changed to started
<jose> http://paste.ubuntu.com/7767588/
<jose> wait... looks like a new machine has been fired up
<jose> not your fault, thumper :)
<thumper> jose: oh good
<jose> thumper: if it's worth taking a look at, the machines have been running for around 10m now, and still showing as pending with this lxc-ls http://paste.ubuntu.com/7767622/
<thumper> jose: which version of juju?
<thumper> jose: also, are you using an apt-cache?
<thumper> the machines do an apt-get update/upgrade when starting
<thumper> with many machines starting, likely to cause contention maybe?
<jose> thumper: I did an update/upgrade a min ago
<jose> version 1.81.1
<thumper> jose: yeah, but each lxc container does its own
<thumper> as it is a "new machine"
<jose> oh
<thumper> independent of the host
<jose> I'm gonna check now
<jose> all pending
<thumper> jose: take a look at the files in /var/log/juju/containers
<thumper> there is console output in there
<jose> thumper: erm... nope
<jose> not even machine-0-lxc-currentnumbershere.log
<thumper> well... in each container
<jose> ooh
<jose> thumper: how should I ssh into them?
<jose> lxc-console tells me 'container is not running' while it is
<jose> or at least fancy displays it like so
<jose> wh...what?! no lxc containers now!
<jose> urgh, I'll just re-deploy
<jose> thumper: you still around?
<thumper> yeah, on the phone right now, sorry
<jose> oh, np
<jose> I was wondering how should I ssh into my lxc containers to check those logfiles - something's not smelling good here
<sarnold> jose: they ought to be accessible through the filesystem too, right?
<jose> sarnold: not sure
<jose> or you mean if the logfiles were to be copied in the host's /var/log/juju?
<sarnold> jose: I was thinking of /var/lib/lxc/something
<jose> sarnold: you got it!
<jose> urgh, /var/log/juju inside the containers is just... empty
<sarnold> jose: oh :/ maybe there's more complicated filesystems things going on than I expected. sorry jose.
<jose> not a problem
<jose> sarnold: I got something, maybe you know
<jose> I got to the logs in /var/lib/juju/containers/containernamehere/container.log
<jose> they all say 'lxc_commands - peer has disconnected'
<sarnold> jose: sorry, I got nothing :(
<jose> np then :)
<jose> I think I'll give this 20 more minutes and go home if nothing shows up
<thumper> jose: was looking locally, it seems that the code that used to write to console.log has been moved...
<thumper> not sure where it is logging now
<jose> oh, well
<thumper> there was code that caught the cloud-init output
<thumper> so you could see where it was up to
 * thumper thinks
<jose> I'm deploying OpenStack with LXC containers all (but nova-compute) in one machine
<jose> should I try deploying them like... not in lxc containers but in the server directly?
<jose> or you think they would crash>
<thumper> I'm not sure
<thumper> we do have a cloud installer that does that
<thumper> somewhere
<jose> I'm giving LXC one last try
<jose> destroyed the machines and services and I'm re-deploying
<jose> it *looks* like lxc containers are being created
<themonk> can load my local charm in juju-gui?
<themonk> can i load my local charm in juju-gui?
<jose> thumper: should lxc containers display as 'started' (the machines not services) even though the services have not been started yet?
<thumper> jose: yeah, the lxc status is different
<thumper> lxc says "yeah those machines are up"
<thumper> the service stops being pending when the agent is started and communicates
<thumper> with the main server
<thumper> obviously there needs to be a network path from the host to the server, and from container to container
<thumper> jose: what is the structure of your environment?
<jose> thumper: manual
<thumper> right.. but how many machines
<thumper> what does status say
<jose> sarnold: keystone is giving me an error when migrating the database (on trusty), is this known?
<jose> second time I'm seeing this, not sure if it's reproducable
<sarnold> jose: sorry, no idea
<jose> np
<sebas5384> jose: help me to bring ubuntu juju to the first latino Drupal Conference? http://bogota2015.drupal.org :)
<sebas5384> I was trying to talk with jcastro but I think he is out
<sebas5384> lazyPower: would you be interested in talking about devops?
<jose> sebas5384: I can give the link to them tomorrow when they're around
<sebas5384> thanks!!
<sebas5384> I'm in the devops track chair
<sebas5384> helping to select rock stars of devops
<marcoceppi> sebas5384: Awesome thanks for the link!
<marcoceppi> sebas5384: when is the CFP?
<sebas5384> marcoceppi: you are more than invited :D
<sebas5384> in the next two weeks we are going to define that
<marcoceppi> sebas5384: cool, let me know and I'll submit a talk
<sebas5384> yeah definitely! I will talk about that here :)
<sebas5384> oh! marcoceppi, when i did the first version of the drupal charm in bash
 * jose would like to be there
<sebas5384> your charms were my guidance hehe
<sebas5384> thanks marcoceppi :)
#juju 2014-07-09
<sebas5384> marcoceppi: specially the wordpress charm
<l1fe> anyone use juju with lxc containers? I'm getting error executing "lxc-start" messages when adding containers to machines
<sebas5384> ping
<g0d_51gm4> hello guys. i need a support for my juju environment, the base installation is done and until last night everything worked well (the juju-gui was ready). today I've started of Nodes via MaaS and the "juju status" gave me this error: "ERROR state/api: websocket.Dial wss://svr1node1.maas:17070/: dial tcp 1.1.2.25:17070: connection refused" why?
<g0d_51gm4> I've opened the window console of each single node and the ubuntu's installer is re-started again. this step has been made yesterday!!!!
<niedbalski> hey TheMue , are you there?
<TheMue> niedbalski: yep, Iâm here
<niedbalski> TheMue, once you have a change could you review/merge https://code.launchpad.net/~niedbalski/golxc/fix-1329049/+merge/225584?
<niedbalski> thanks!
<niedbalski> *change/chance
<TheMue> niedbalski: took a quick look. right now Iâm focussed on another bug but will merge then
<niedbalski> TheMue, thanks :)
<g0d_51gm4> anyone can answer me?please
<marcoceppi> g0d_51gm4: because, stopping a node in Maas unallocates it
<marcoceppi> It's not shut down, it's clean node and mark as available
<g0d_51gm4> marcoceppi: hi, I shout down the node and today I startup the Region Controller, Cluster Controller and node after to run juju status I've received that error juju can't established the connection to node
<g0d_51gm4> before to shout down the machine I've put the Nodes in unallocated status via MaaS
<g0d_51gm4> and left them in ready status.....
<TheMue> niedbalski: short info, code is merged. thanks again
<mhall119> jcastro: are you going to be able to give a juju update in today's UE Live?
<mhall119> nvm, just saw your mention in the other channel
<tedg> mbruzek, Can you re-review https://code.launchpad.net/~jose/charms/precise/owncloud/port-change+repo+ssl-support/+merge/215527 ?
<mbruzek> tedg, Yes I can add it to my queue
<tedg> Great, thanks!
<adeuring> utlemming, lazyPower: The Juju/Vagrant boxes published on 2014-0707 and 2104-07-09 are unusable after a reboot.  I've traced this down to terribly unstable connections between the script "redirect.py" (which configures port forwarding) and the state server. More or less any query sent from the script to the sate server can fail with errors as diverse as <Env Error - Details:
<adeuring>  {   u'Error': u'cannot get all services', u'RequestId': 23, u'Response': {   }}
<adeuring> <Env Error - Details:
<adeuring>  {   u'Error': u'EOF', u'RequestId': 0, u'Response': {   }}
<adeuring> <Env Error - Details:
<adeuring>  {   u'Error': u'cannot read settings: EOF', u'RequestId': 4, u'Response': {   }}
<adeuring> socket.error: [Errno 111] Connection refused
<adeuring> socket.error: [Errno 32] Broken pipe
<adeuring> websocket.WebSocketConnectionClosedException
<lazyPower> adeuring: good find, do we have a bug against redirector.py?
<lazyPower> i can add that to my work list
<adeuring> I have a branch ready that circumvents these errors lp:~adeuring/jujuredirector/redirect-script-connection-errors but i am not sure if this is the right approach
<lazyPower> looking now
<adeuring> lazyPower: there is not yet a bug...
<adeuring> lazyPower, utlemming: this connection problem also affects the "gui redirect server" that runs on port 6080
<adeuring> and that's not fixed by my branch...
<adeuring> lazyPower, utlemming: my mmain problem with this branch: It just tries to deal with the unstable connections but does not address the main cause...
<adeuring> the next odd detail: I think that the main juju code did not change betwwen the releases fromo 2014-07-05, 2014-07-07 and 2014-07-09
<lazyPower> adeuring: from what i see, it tunes up the wait timer, and handles errors better right?
<adeuring> lazyPower: yes, the amin idea is: "if there is a conenction problem, try again"
<lazyPower> plus moves the check lower in the set of instructions...
<lazyPower> mhmm
<adeuring> right, because a try/except around the "for watch in watcher" scared me
<lazyPower> haha, yeah
<lazyPower> that probably caught more than it needed to
<lazyPower> ok, i dont see anything inherently wrong here
<lazyPower> sure its a bandaid patch but i dont know why its having an issue
<lazyPower> so without that core piece of info, i think this is fine as a stop-gap to a better fix
<adeuring> lazyPower: right. and if you have to create a new env, some watched events may go unnoticed
<lazyPower> you're cleaning up and exposing some better chances to catch non-timeout related issues.
 * lazyPower +1's the code without a MP
<adeuring> lazyPower: well, I can write the MP ... but what about the question "why are the connections now so flaky"?
<lazyPower> right, that needs to be tracked
<lazyPower> we should file a bug, and i'll put a card on teh board to look into it with ya
<adeuring> lazyPower:  we could try this apporach: STart with the box from 2014-07-05 (should work fine), upgrade the deb packages and see if this changes anything.
<lazyPower> ok
<lazyPower> adeuring: if you can see the solutions board - i added a card to work after i wrap my hive2 work
<lazyPower> if something comes up and you dont need me to pivot to this - just ping me and i'll wipe it.
<adeuring> llazack
<adeuring> lazyPower: ok
<npasqua> Hello All. I have a question regardign JuJu overwriting .conf files. I set a setting in my nova.conf file, but when I use "restart jujud-unit-nova-compute-0" it reverts the .conf to some base. I want juju to play my setting in there also. How can I do this?
<marcoceppi> npasqua: you'll have to have it done in the charm, the charm assumes it's the only thing controlling the box
<marcoceppi> so you can fork the charm, add it as a configuration option to the charm, then use that fork and submit the merge for the official charm
<npasqua> We want to set the novnc_noproxy option in our configuration from 127.0.0.1 to our compute node's IP... Otherwise we cannot access the console through the openstack dashboard without manually changing the IP in the url.
<npasqua> It seems as if it's more of an individual issue rather than an official charm addition (although it is very interesting the vnc packages are not included within the current charms)
<npasqua> novnc*
<adeuring> lazyPower, utlemming: I've crated an MP. Not sure how much sense it makes, but it's perhaps to discuss the problem further..
<adeuring> lazyPower, utlemming https://code.launchpad.net/~adeuring/jujuredirector/redirect-script-connection-errors/+merge/226197
<lazyPower> adeuring: just updated teh card with this URL. i'll move my efforts here when its on the top of the stack
<adeuring> lazyPower: great
<lazyPower> Thanks for the legwork adeuring
 * lazyPower hattips
<l1fe> anyone here use juju to install openstack on 14.04? i seem to have everything working EXCEPT for networking...where it never created the br100 interface
<l1fe> the only setting in my config for nova-cloud-controller is network-manager: "FlatDHCPManager"
#juju 2014-07-10
<jose> jacekn: ping
<niedbalski> good morning eco's
<fali> Hello. I installed juju-gui on machine0. Worked fine, but I get the following error message in the web browser: "Charm API server did not respond". Can't find that anyone else has this problem, so trying here.
<fali> I can't find anything in the logs, and the juju.conf file shows the correct proxy settings.
<avoine> fali: juju-gui use websockets does your proxy allow that?
<fali> avoine: Don't know, but I doubt it... Will check. Is there any workaround if it's not allowed?
<avoine> fali: I was using nginx an I had to upgrate to a newer version and follow this: http://nginx.org/en/docs/http/websocket.html
<avoine> fali: if you use a browser inspector in the network tab you should see the error for the websocket request (one every seconds I think)
<fali> avoine: seems like our corporate proxy won't let us through. I have no possibility to change that :( Is it possible to run juju-gui locally? downloading what we need, then use our own Charm API server?
<avoine> fali: yes, you could install it by checking what the charm is doing but I'm not sure if juju-gui is using websocket for his communication
<avoine> like getting charms from the charm store for example
<avoine> fali: I'm looking at the code and I looks like it's the case so it won't work.
<avoine> https://github.com/juju/juju-gui/blob/develop/app/config-prod.js#L36
<avoine> maybe you can change the socket_protocol variable tought
<fali> avoine: Ok. First I'll try finding a proxy that is a bit more cooperative. Thank you so much for your input.
<avoine> fali: np, good luck
<breze441> Trying to add netapp nfs share in to cinder . how do i paass the netapp info in to cinder via juju ? it appears manual config on cinder.conf get overwritten by juju
<breze441> sorry to repeat but just wondering if anyone knows how to pass netapp config to cinder via juju
<jcw4> breze441: what charms are you using?
<jcw4> breze441: I assume cinder
<jcw4> breze441: is there a charm for netapp?
<breze441> no charm for netapp, i was trying to follwo the steps for RDO packstack by editing the cinder.conf but it get overwritten by the juju during cinder restart
<breze441> i am assuming the same parameters should be able pass via juju cli to cinder
<jcw4> breze441: hmm
<jcw4> breze441: so you're doing 'juju deploy --config=cinder.conf cinder', but when cinder restarts it overwrites the cinder.conf file ?
<jcw4> breze441: I mean juju overwrites cinder.conf when the cinder service restarts?
<breze441> when i deployed i didnt have these netapp configs in the config file . so i go and edit the file with configs netapp recommends to use. to complete the process i have to do a stop jujud-cinder follwed by a start jujud-cinder where i lose the netapp configs. Now if i know how to send them when deploying i dont have to edit the configs
<jcw4> breze441: I see that makes sense
<jcw4> breze441: so if you edit the config after deploying, juju doesn't know about it and overwrites the config file...
<jcw4> breze441: you want to know how to tell juju about the config settings so that juju doesn't overwrite it?
<breze441> exactly, maybe there is a way to pass these information when o deploy.
<breze441> on side note, is it possible to change conf files deployed with Juju ?
<jcw4> breze441: I'm doing a little research to see if I can answer that; I don't really know much about it but I hope to get the people who do involved :)
<breze441> much appreciated
<lazyPower> breze441: thats dependent on how the charm is implemented. Idempotency dictates if you've made changes to a config file vs what the charm expects, it should update it.
<jcw4> lazyPower, breze441 when you say edit the config... did you edit it in the charm directory or on the unit where it's deployed?  lazyPower does that make a difference?
<lazyPower> breze441: is a charm you're deploying not exposing a configuration set? If thats the case there are 2 options here. 1) you can file a bug against the charm to see if the maintainer deems this missing behavior - or 2) you can fork the charm and implement the configuration file changes you need and track upstream by backporting patches as they are released.
<jcw4> breze441: this is the charm right? https://github.com/charms/cinder
<lazyPower> jcw4: When you edit a charm on the server, any edits will be blown away on the next upgrade of the charm - if you edit the config file manually - each run will blow your changes away. its all about idempotency. If it's already taken the action, and there's no delta on the files - it shouldn't execute. If it's got modifications, the charm should assume it requires an update and use the templated config.
<jcw4> lazyPower: that makes sense to me, so you should edit the template if you want it to remain?
<lazyPower> so you're better off to fetch the charm locally, and make the required modifications - and if deemed necessary, submit a patch back against the charm so everyone benefits.
<lazyPower> Yep
<breze441> so i edited the cinder.conf on the node *not the charm*
<lazyPower> that or make it configurable.
<jcw4> lazyPower: I see.  I think the specific config that breze441 is changing is not specific to cinder, it's actually specific to netapp
<jcw4> is that right breze441 ?
<jcw4> so I'm assuming breze441 would edit the charm template locally, but wouldn't propose it be merged back into the charm
<lazyPower> that would be my suggestion - it will be prudent to make sure you subscribe to the upstream charm's launchpad repository so you're aware when updates are published so you can backport them to your local charm deployment
<breze441> well there are few lines of config specific to netapp i need to add to the cinder.conf to load netapp drivers
<lazyPower> thast the downside to forking a charm - you lose automatic upgradeability, it becomes a required manual step - its really simple, but takes away a dash of taht 'magic' juju brings to the table.
<breze441> well the drivers are in upstream its just pointing the ip address of the netapp filer and credentials etc..
<lazyPower> so ideally if everyone would benefit from loading netapp drivers - i'd propose a merge and see where it goes.
<lazyPower> the worst that will happen is they say no
<lazyPower> in which case you're no worse off than when you started, and *then* you walk down the path of maintaining a forked charm.
<breze441> any any pointers on how to edit the cinder charm ?
<lazyPower> do you have charm-tools installed?
<breze441> sync-tools ? if so yes
<lazyPower> sudo apt-get install charm-tools
<lazyPower> mkdir -p ~/charms/<series> && cd ~/charms/<series> && charm get cs:<series>/cinder
<lazyPower> then when you're ready to test your revisions: juju deploy --repository=$HOME/charms local:<series>/cinder mycinder
<lazyPower> the cinder charm is in python, has unit tests, and is extremely well covered in terms of code quality - so  you should have a good foundation to work off of. Our OpenStack charms are stellar examples of charms.
<breze441> ok Thank you let me give it a shot
<lazyPower> np, if you get stuck dont hesitate to ask :)
<jose> jacekn: ping
<revagomes> Hi mates! Can anyone give me a hint about the connection refused error when trying to run juju status? When I ran juju status --debug -v I've got the following message: "DEBUG juju.state.api apiclient.go:248 error dialing "wss://localhost:17070/", will retry: websocket.Dial wss://localhost:17070/: dial tcp 127.0.0.1:17070: connection refused"
<revagomes> I can ssh the service by hand but when I tried running "juju ssh [service]" it doesn't work The juju log shows
<revagomes> that it's trying to start the api and dialing "wss://[...]" but thr connection is refused
<marcoceppi> revagomes: is this local provider?
<revagomes> marcoceppi, yep
<marcoceppi> revagomes: run `sudo initctl list | grep juju` what does it say?
<revagomes> I was using juju v1.20 but I already upgraded to 1.20.1
<revagomes> juju-agent-revagomes-local stop/waiting
<revagomes> juju-db-revagomes-local stop/waiting
<marcoceppi> revagomes: run
<marcoceppi> sudo start juju-db-revagomes-local
<marcoceppi> sudo start juju-agent-revagomes-local
<marcoceppi> revagomes: then do the list command again and make sure both are started
<revagomes> The processes are running now. Perfect! The juju status and other commands are working now. ;)
<revagomes> marcoceppi++
<revagomes> marcoceppi, I have to start the processes by hand or it's was a bug from the 1.20 version?
<marcoceppi> revagomes: this happens if you restarted the computer typically
<sebas5384> revagomes: \o/
<revagomes> marcoceppi, I got it. So to set juju processes to run on startup seems a good way to prevent this next time ;)
<revagomes> marcoceppi, tks!
<marcoceppi> revagomes: we did this a while ago
<marcoceppi> people complained about it
<sebas5384> thanks marcoceppi! revagomes is starting to use juju these days with us :)
<marcoceppi> revagomes: we're building a "local" command, so in the future you can just do `juju local start` or `juju local suspend` etc to safely turn off/on local provider and recover from a state
<marcoceppi> sebas5384: great to hear!
<sebas5384> marcoceppi: that would be great! a start and stop
<revagomes> awesome!
#juju 2014-07-11
<leotr> hello
<leotr> i added one admin address in postgresql service configuration
<leotr> can't understand why juju doesn't add corresponding line to pg_hba.conf?
<leotr> and when i add it manually it by some reason restores pg_hba.conf file to original state
<leotr> i use ubuntu 14-04
<leotr> juju-local
<leotr> any ideas?
<leotr> or maybe i could do something to add my lines to pg_hba.conf or somewhere else?
<leotr> ok, found solution
<leotr> entered ip address in CIDR form
<leotr> juju is so juju
<pmatulis> yep
<jcastro> asanjar, lazyPower, you guys wanna talk bundles?
<asanjar> sure
<jcastro> can I whip one up in jujucharms.com?
<jcastro> I was thinking of just following your readme, then bundle that as a start?
<lazyPower> jcastro: that'll work - mbruzek is working on getting hive2 promoted into trusty for the store
<jcastro> asanjar, where would hive fit in?
<asanjar> hive is used as a bigdata warehousing plaform with SQL like interface. It fits in on top of hdfs for data access and distribution while using mapreduce to process the data based on HiveQL commands.
<asanjar> so in our solution - we will have Hive connected to HDFS and YARN
<jcastro> I assume you'll add that to the trusty/hadoop readme as well?
<asanjar> also we have elasticsearch-hadoop.jar included in HIVE jar path to communicate with ES cluster for data indexing
<jcastro> ok, I'll try to make it less than 9 units
<jcastro> so it's orangeboxable
<lazyPower> jcastro: which part particularly? the notation about Hive being the big data warehousing?
<jcastro> ok, why don't I get a bundle up and running that is the scale out hadoop example with ES
<jcastro> and then you guys tell me what to connect next?
<asanjar>  lazyPower: I found this last night http://www.elasticsearch.org/guide/en/elasticsearch/hadoop/current/hive.html
<asanjar> there are HIVE sample command for ES
<lazyPower> interesting
<asanjar> would you try them, that would be a good demo for jcastro
<asanjar> something as simple as this:
<asanjar> CREATE EXTERNAL TABLE artists (...)
<asanjar> STORED BY 'org.elasticsearch.hadoop.hive.EsStorageHandler'
<asanjar> TBLPROPERTIES('es.resource' = 'radio/artists',
<asanjar>               'es.index.auto.create' = 'false') ;
<asanjar> would show hive is talking to ES
<asanjar> jcastro: would that be sufficient
<lazyPower> Sure, give me a bit to wrap what i'm working on
<lazyPower> jcastro: ship me your bundle when you get it mapped up and i'll work through this ES tutorial
<lazyPower> in validation mode
<jcastro> I'll push it in about 10 minutes
<asanjar> if jcastro could just do this aspart of the demo:
<asanjar> CREATE EXTERNAL TABLE artists (
<asanjar>     id      BIGINT,
<asanjar>     name    STRING,
<asanjar>     links   STRUCT<url:STRING, picture:STRING>)
<asanjar> STORED BY 'org.elasticsearch.hadoop.hive.EsStorageHandler'
<asanjar> TBLPROPERTIES('es.resource' = 'radio/artists');
<asanjar> -- insert data to Elasticsearch from another table called 'source'
<asanjar> INSERT OVERWRITE TABLE artists
<asanjar>     SELECT NULL, s.name, named_struct('url', s.url, 'picture', s.picture)
<asanjar>                     FROM source s;
<jcastro> asanjar, to add elasticsearch
<jcastro> the readme doesn't mention how to add it to the scale out configuration
<jcastro> http://i.imgur.com/xqjY5r0.png
<jcastro> this is what I have so far
<jcastro> asanjar, ^^ what should I connect elasticsearch to?
<lazyPower> jcastro: looks like we have a path for hive. export your bundle and ship it to me so i can deploy it
<lazyPower> i'll start hacking on this ES demo
<jcastro> ok on it
<jcastro> lazyPower, https://code.launchpad.net/~jorge/charms/bundles/oscondemo/bundle
<lazyPower> jcastro: got it, give me a few and i'll ping back with results.
<asanjar> lazyPower: I am in a meeting, will join u as soon as I am done
<lazyPower> asanjar: no rush, i'm just getting started
<lazyPower> weird
<lazyPower> jcastro: drag/drop of the bundle yielded deployment errors - only ES came through
<jcastro> I only just pushed it
<jcastro> I haven't tested it
<lazyPower> ack - just a heads up
<jcastro> Got pulled into a call
<lazyPower> i'll get it working and push a patch once its deploying proper
<jcastro> what errors did you get?
<lazyPower> the gui didnt say, just errors on bundle
<jcastro> I was just following the readme
<jcastro> oh, use deployer man. :)
<hazmat> :-)
<lazyPower> :P
 * lazyPower pushes the easy button
<lazyPower> same status result
<jcastro> pastebin please
<lazyPower>  An error occurred while deploying the bundle: no further details can be provided about a minute ago
<lazyPower> thats all i get. i'm going to nuke the relations and see if its the service definition
<jcastro> oh I also forgot to rename envExport to something useful
<lazyPower> yeah i took care of that
<asanjar> lazyPower: go back to "eco"
<jcastro> wow
<jcastro> lazyPower, my deployer straight up crashes on that bundle
<lazyPower> jcastro: i'm rebuilding it by hand
<lazyPower> this deployment configuration specified is also not one you'll see very commonly
<lazyPower> we're going to hand off a ready made deployment W/ elasticsearch and hive
<lazyPower> i'll post a bzr branch shortly for you to consume
<jcastro> ack, I'm going to lunch
<l1fe> anyone experiencing 409 conflicts with MAAS+JUJU when adding machines?
<marcoceppi> l1fe: that usually means no MAAS nodes match your constraints (or you're out of available nodes)
<l1fe> right, in this case, all nodes are ready
<l1fe> (well aside from the bootstrapped node)
<marcoceppi> l1fe: what architecture are they?
<l1fe> amd64 and trusty
<l1fe> the environment actually used to work
<l1fe> and then after one too many destroy-environments
<marcoceppi> l1fe: run with --debug see what juju is saying maas is complaining about
<lazyPower> jcastro: http://i.imgur.com/DZfKZWb.png
<marcoceppi> 409 is pretty much the MAAS API saying "I heard you, but I don't really feel like doing this because: ..."
<lazyPower> i can ship you the bundle as is - we're still validating
<l1fe> it's pretty generic
<l1fe> 2014-07-11 16:58:06 ERROR juju.provisioner provisioner_task.go:421 cannot start instance for machine "1": cannot run instances: gomaasapi: got error back from server: 409 CONFLICT (No matching node is available.)
<l1fe> i've even reprovisioned the entire cluster
<marcoceppi> l1fe: yeah, so maas says you don't have any nods available. What size ram are these?
<l1fe> re-installed maas and juju
<l1fe> all 16gb
<marcoceppi> l1fe: are you on 1.20 ?
<l1fe> 1.20.1
 * marcoceppi scratches head
<l1fe> and it literally was working 24 hours ago
<l1fe> until after the last fateful destroy environment
<marcoceppi> it's always that last destroy ;)
<l1fe> :)
<marcoceppi> And you've tried recommissioniong the nodes?
<l1fe> yup
<l1fe> full recommission
<l1fe> reason why i even destroyed my environment
<marcoceppi> it's weird
<l1fe> was after i reported https://bugs.launchpad.net/bugs/1340261
<_mup_> Bug #1340261: juju add-machine lxc:0 fails to start due to incorrect network name in trusty config <lxc> <network> <placement> <juju-core:Triaged> <https://launchpad.net/bugs/1340261>
<marcoceppi> that it bootstraps
<lazyPower> jcastro: lp:~lazypower/charms/bundles/oscondemo/bundle/
<l1fe> i wanted to re-setup my openstack environment with lxc...and figured i'd just start from scratch
<l1fe> yeup, bootstraps...and if i bootstrap, it can even pick up random nodes
<l1fe> that it would otherwise NOT pick up during add-machine
<marcoceppi> l1fe: what does juju get-contstraints say?
<l1fe> oh jesus
<l1fe> you're kidding me
<l1fe> as;dlkfjas;dlfkjlasdf
<l1fe> thanks marcoceppi :)
<marcoceppi> <3
<marcoceppi> l1fe: was it set to 32 bit?
<l1fe> when i was bootstrapping, i was setting a constraint for 32G because i wanted to install on a particular maas node
<marcoceppi> ah, yeah
<marcoceppi> that sets it globally
<l1fe> that's good to know
<l1fe> omg
<l1fe> i did a full reprovision twice
<l1fe> thanks
<marcoceppi> l1fe: no problem, you can use juju set-contstraints to put the mem limit lower
<l1fe> yup
<l1fe> i just did juju set constraints ""
<l1fe> to clear it
<marcoceppi> cool
<l1fe> oh my god, i thought i was going insane
<l1fe> i went down to 1.18
<l1fe> and 1.19 in devel
<l1fe> and was like...this was working!!
<jrwren> lazyPower: https://bugs.launchpad.net/charms/+source/mysql/+bug/965094
<_mup_> Bug #965094: Provide config option to specify database encoding <mysql (Juju Charms Collection):Confirmed> <https://launchpad.net/bugs/965094>
<lazyPower> jrwren: thanks for filing the bug. The charm maintainer will see it shortly.
<jrwren> lazyPower: i want to fix it. i wanted to ask you about possible ways to fix.
<marcoceppi> jrwren: the "problem" with setting it in the interface, is that redefines the interface
<marcoceppi> jrwren: it' a good idea, but the new key will have to be 100% optional
<marcoceppi> jrwren: so, you'd want to have a default-encoding configuration option, which is used when no encoding is sent via the relation
<jrwren> agreed. going for 100% optional
<jrwren> exactly what I was thinking.
<jrwren> i spiked it and tested it out and it works, i'm just charm new, and wanted to ask before i submit a merge request
<lazyPower> jrwren: :) we're really open to code reviews as MP's
<lazyPower> it makes life great when its of good quality and we just merge it in
<lazyPower> if not, its a source to track the conversation as the merge evolves
<jrwren> lazyPower: ok, thanks. i'll get something up
<l1fe> quick question regarding juju and lxc containers...does juju provide a unified network fabric for any services exposed over LXC? as in something on LXC:0 being able to communicate with LXC:1
<marcoceppi> l1fe: yes, something in LXC:0 will be able to talk to LXC:1
<l1fe> hmm
<l1fe> so, i have a mysql lxc on 1/lxc/1
<l1fe> and nova-cloud-controller on 0/lxc/1
<l1fe> and i get errors where it can't connect to mysql
<l1fe> via the ip address
<l1fe> which makes sense since those 10.0.* ip addresses are only for each machine
<l1fe> physical machine
<l1fe> unless i'm misunderstanding something
<l1fe> (given the constraints thing earlier, that's entirely possible)
<lazyPower> l1fe: are you sure teh mysql service has started? its using a bridged virtual ethernet adapter to do the communication in LXC
<lazyPower> LXCBR0 is the default virtual device for lxc connections, and all lxc containers use 10.0.3.x ip addresses by default as well
<l1fe> yeah, it's started
<l1fe> yeah, i raised a bug about how lxcbr0 wasn't actually being used, so i even manually went in and changed that in containers directory
<l1fe> for lxc.cfg
<lazyPower> strange, works on every other setup. The only time i had to change the br interface was when i wanted to bridge it with an actual ethernet device
<lazyPower> and even then i think i configured it wrong and i had soem races where the interface wouldn't come online during boot and I had to manually initialize it every time the server was reset.
<lazyPower> but thats a story for another time....
<lazyPower> so if you can reach the MySQL node, and you've verified the server is up - whats the log output that's stating you cannot connec to MySQL?
<l1fe> https://bugs.launchpad.net/bugs/1340261
<_mup_> Bug #1340261: juju add-machine lxc:0 fails to start due to incorrect network name in trusty config <lxc> <network> <placement> <juju-core:Triaged> <https://launchpad.net/bugs/1340261>
<l1fe> for the templates not being setup properly for trusty
<lazyPower> ahhh ok so this is not a local deployment
<lazyPower> this is lxc, in a maas node for density based deployments
<lazyPower> ack.
<l1fe> unit-nova-cloud-controller-0: 2014-07-11 19:12:44 ERROR juju.worker.uniter uniter.go:486 hook failed: exit status 1 unit-cinder-0: 2014-07-11 19:12:55 INFO shared-db-relation-changed 2014-07-11 19:12:55.604 18833 CRITICAL cinder [-] OperationalError: (OperationalError) (2003, "Can't connect to MySQL server on '10.0.3.34' (113)") None None
<l1fe> yeah, not local
<l1fe> sorry forgot to mention that
<l1fe> these are different physical maas nodes
<lazyPower> its ok, its my own brain going immediately to local when someone mentions LXC
<l1fe> i'm just trying to test out the best ways to deploy my environment :)
<l1fe> and experimenting with encapsulating services
<l1fe> i guess bridging networks between lxc containers across different physical nodes would be something that's not possible right now
<lazyPower> i know that the networking when using juju deploy --to lxc:# can be a bit troublesome when it comes to networking configuration
<l1fe> ah
<l1fe> i don't see any DHCP or DNS changes in MAAS (which is controlling all of that stuff right now)
<lazyPower> There was a topic on this not long ago
<l1fe> and juju is using the actual IP address vs a fqdn
<lazyPower> there's either a script or a subordinate charm that helps this... i forget how long ago the thread was - but its in the juju mailng list.
<lazyPower> *mailing list
<l1fe> ah, i'll have to do some searching
#juju 2014-07-12
<Tug_> Hi, I think juju deploy should fail or at least print a warning when giving an invalid --repository path
<Tug_> In my case it just fell back to the charm store
<Tug_> adding the "local:precise/" prefix to the charm name does print an error though
#juju 2014-07-13
<Tug_> Hi, I'm having this issue here https://bugs.launchpad.net/juju-core/+bug/1310255
<_mup_> Bug #1310255: juju-run failure /var/lib/juju/system-identity not accessible in HA <ha> <juju-run> <juju-core:Fix Released by klyachin> <https://launchpad.net/bugs/1310255>
<Tug_> Not sure what the workaround is ?
<sebas5384> hey! o/
<sebas5384> heres a question to the juju-gui team :)
<sebas5384> there's any plan to move a more known and used JS framework ?
<sebas5384> like react or angular, etc..
<sebas5384> since the architecture is inspired from the Flux
<sebas5384> why note react :)
#juju 2015-07-06
* lazyPower changed the topic of #juju to: Welcome to Juju! || Office Hours, here 20 August 2000UTC || Docs: http://juju.ubuntu.com/docs || FAQ: http://goo.gl/MsNu4I || Review Queue: http://review.juju.solutions || Unanswered Questions: http://goo.gl/dNj8CP
<jose> lazyPower: what about the 7/9 office hours?
<lazyPower> jose: i dont have that on my calendar, jcastro - do we have office hours 7/9?
<jcastro> we do
<jcastro> let me check
<lazyPower> we do - i jsut found it >.>
<jcastro> yes, indeed, we have them
<lazyPower> calendar search didn't return 7/9 in the search results
<jose> afaik it's every 3 weeks :)
<jcastro> I'll send a reminder
* lazyPower changed the topic of #juju to: Welcome to Juju! || Office Hours, here July 9'th 2000UTC || Docs: http://juju.ubuntu.com/docs || FAQ: http://goo.gl/MsNu4I || Review Queue: http://review.juju.solutions || Unanswered Questions: http://goo.gl/dNj8CP
<lazyPower> jose: thanks for catching that :)
<puzzolo> One question dudes, is it possible to deploy openstack services with juju, on a lxd container?
<puzzolo> this lxd does something magic i would like to try. Still few docs on how to implement an openstack install lxd-based
<jrwren> puzzolo: I'm curious. Why lxd instead of lxc for this use?
<puzzolo> lxd *seems* a better effort to integration with openstack
<puzzolo> and a semplification in lxc containers creation (integration with glance?)
<jrwren> puzzolo: oh, I misunderstood. I thought you wanted to deploy openstack.
<puzzolo> sure i do. That is what i was curious. Does deploying with lxd instead of lxc make any sense? Or should i go with just lxc?
<jrwren> puzzolo: deploying openstack with lxc does not preclude using the lxd nova driver.
<puzzolo> oook. One last question jrwren. Are there juju charms for a lxc high-availability deployment with less hardware then 28 servers?
<jrwren> puzzolo: I'm sorry, I do not know.
<puzzolo> okok. I'll dig into it after a simple install.
<jcastro> puzzolo: you're  probably looking for this: https://insights.ubuntu.com/2015/05/06/introduction-to-nova-compute-lxd/
<jcastro> https://github.com/lxc/nova-compute-lxd
<jcastro> beisner: heya, you guys wanna check these out:
<jcastro> http://askubuntu.com/questions/639655/can-juju-interact-with-already-installed-openstack-service
<jcastro> http://askubuntu.com/questions/637341/how-to-prevent-juju-from-overwriting-heat-conf-file
<jcastro> puzzolo: but I don't think juju can deploy to individual containers yet?
<Destreyf_> jcastro: you can do juju deploy --to lxc:<host> <charm>
<Destreyf_> but
<Destreyf_> i tried to use juju with openstack and containers
<Destreyf_> its not very easy
<jcastro> yeah I was under the impression that that area was still under heavy development
<Destreyf_> well the issue is openstack doesnt' play well with LXV
<Destreyf_> LXC*
<Destreyf_> so what you have to do is keep the hypervisor (nova-compute) out of LXC
<Destreyf_> as well as ceph (if you use it)
<Destreyf_> and then if you plan on having say 3 (or more) servers you need some sort of networking to get from the LXC containers on each node
<Destreyf_> flannel works, but its still just not quite enough to get fully running
<Destreyf_> i spent about a week trying to get it working and i concluded that it wasn't worth it
<puzzolo> Destreyf: juju suggests maas for nova-compute quantum-gateway and neutron-openvswitch
<puzzolo> 20:10 -!- liam_ is now known as Guest20028
<puzzolo> f*ck https://wiki.ubuntu.com/ServerTeam/OpenStackCharms/ProviderColocationSupport
<Destreyf> Yup
<Destreyf> that's what i had happen
<Destreyf> XD
<puzzolo> so from your experience, lxc goes well for openstack ... when you don't mess with nova-compute, quantum-gateway and neutron-openvswitch... which need seperate hardware. Still you can deploy nova-compute with neutron-openvswitch maas. and seperated quantum-gateway.
<puzzolo> nova-compute hardware can support nova-compute-lxd in the same hardware... All seems a bit messy playground
<puzzolo> so a working hypotesis, could be:
<puzzolo> lxc0: cinder (ceph backend), glance,keystone,nova-cloud-controller,neutronapi,ceilometer,ceilometer-agent,heat,ceph/ceph-osd(with directory and no blockdevice - kinda sucks),swift-proxy,openstack-dashboard
<puzzolo> and heat
<puzzolo> maas1: nova-compute,swift-storage
<puzzolo> maas2: quantum-gateway
<puzzolo> One question... can maas be used with lxc containers as well?
<puzzolo> like maas: nova-compute, swift-storage.... and on same hardware lxc keystone, lxc neutron-api
<puzzolo> ?
<puzzolo> ok quantum and neutron are just a renaming
<puzzolo> ok wrong again:
<puzzolo> lxc0: cinder (ceph backend),  lxc1: glance  lxc2: keystone lxc3: nova-cloud-controller lxc4: neutronapi lxc5: ceilometer lxc6: ceilometer-agent, lxc7: heat lxc8: ceph/ceph-osd(with directory and no blockdevice - kinda sucks) lxc9: swift-proxy lxc10: openstack-dashboard
<jamespage> puzzolo, hey - you might find https://jujucharms.com/openstack-base/ a useful reference - its a four physical node openstack cloud, used lxc containers for the control plan.
<Spizmar> I'm having an issue with juju requesting provisioning from MAAS.
<Spizmar> http://askubuntu.com/questions/631598/maas-juju-not-provisioning-in-parallel
<Spizmar> That is the URL of the question.  Basic problen is that juju only requests 1 machine at a time from MAAS, and does not ask for another until MAAS has finished provisioning.
<Spizmar> this takes awhile for 40 machines, and would be a killer for 1000 nodes.
<apuimedo> lazyPower: ping
<apuimedo> jamespage: ping
<apuimedo> mbruzek: ping
<mbruzek> apuimedo: pong
<apuimedo> :-)
<apuimedo> Hey
<apuimedo> how are you?
<mbruzek> Hello!
<mbruzek> I am well.  What can I do for you ?
<apuimedo> how can I see what's the review queue like?
<mbruzek> Oh!  Let me get you the link.
<mbruzek> http://review.juju.solutions/
<apuimedo> thanks
<apuimedo> mbruzek: I have https://code.launchpad.net/~celebdor/charms/precise/cassandra/hostname_resolve
<mbruzek> What bug number or charm name are you looking for?  If it is NOT in the queue I can help you get it in there.
<apuimedo> in which I was using the launchpad "propose for merge"
<apuimedo> but it's already a veeeeery long time
<apuimedo> and I'm wondering if that "propose for merge" thing is something the team looks at at all
<mbruzek> It is, but I do not see it in the queue.
<mbruzek> let me look
<mbruzek> I see "  On hold        for merging      into        lp:charms/cassandra"
<apuimedo> mbruzek: anything I can do? I've been trying to ping Charles and James, but I have had trouble finding them ;-)
<mbruzek> Antoni you just edited 2 files?
<apuimedo> I re-verified that it works
<apuimedo> yes
<mbruzek> Antoni *I* will help you with this.
#juju 2015-07-07
<mbruzek> You have clicked on propose for merging?
<apuimedo> basically to enable cassandra to work in lxc
<apuimedo> yup
<apuimedo> should I press again?
<mbruzek> hrmm... usually that creates a new bug
<mbruzek> I can't find the bug.
<apuimedo> ok
<apuimedo> I'll press again
<apuimedo> I see "Charles Butler: Pending requested 2015-04-22 "
<mbruzek> I will review it right away
<apuimedo> I'll propose for merging putting you as a reviewer now
<mbruzek> Yes I see that too.  I don't see how to approve or review these changes
<mbruzek> Propose for merging and I will have a look
<apuimedo> it tells me "There is already a branch merge proposal registered for branch lp:~celebdor/charms/precise/cassandra/hostname_resolve to land on lp:charms/cassandra that is still active."
<mbruzek> OK let me check by that branch
<apuimedo> let's see if I can just add you as a reviewer of the current proposal
<mbruzek> I just need a link to the merge proposal
<apuimedo> there
<apuimedo> added
<apuimedo> https://code.launchpad.net/~celebdor/charms/precise/cassandra/hostname_resolve/+merge/257120
<mbruzek> OK that is a different link
<mbruzek> The reason this one is not in the review queue, is because the status is in "Work in progress"
<mbruzek> It needs to be in "Fix committed" for the queue to pick it up.
<apuimedo> try now
<apuimedo> I can only move it to "needs review"
<mbruzek> Oh my mistake
<apuimedo> mbruzek: if you want to try the pinning
<apuimedo> you can run it like so
<apuimedo> mbruzek: http://paste.ubuntu.com/11833500/
<apuimedo> configuration yaml for deploying
<apuimedo> and target an lxc machine
<mbruzek> apuimedo: I found a problem.
<mbruzek> apuimedo: Adding a configuration option like this must be added to config-changed.
<apuimedo> mmm
<apuimedo> let me see
<apuimedo> where's config-changed? mbruzek
<mbruzek> apuimedo: It is cassandra-common.  Let me comment  in the bug and
<mbruzek> I will explain.
<apuimedo> ok
<mbruzek> OK.
<mbruzek> This new configuration option is ONLY read on the install hook.
<apuimedo> yes
<mbruzek> If cassandra charm is installed and a user changes the package_version  only the config-changed hook is called.
<mbruzek> So the user would not see any error and *assume* the version has changed
<mbruzek> juju set cassandra package_version=2.11
<mbruzek> apuimedo: I put my review in the Merge Proposal  https://code.launchpad.net/~celebdor/charms/precise/cassandra/hostname_resolve/+merge/257120
<apuimedo> thanks for the review
<apuimedo> I'll look into the changes you propose tomorrow
<apuimedo> I was under the impression that as it stood, the charm didn't reinstall even if you changed the repo
<apuimedo> (which is an already present configuration option) so that's why I did not consider the need for taking the config change into account
<apuimedo> mbruzek: ^^
<mbruzek> apuimedo: I understand your point, but the immutable configuration breaks user expectations
<mbruzek> If the user sets the version after install they would have no way to know the version was not changed.
<mbruzek> You could have the same logic in the configure_cassandra function to run apt-get to get a specific version.
<mbruzek> Once you have the change put the Merge Proposal back in Ready for Review and give me a ping I will review it straight away.
<caribou> Hi, is there some specific helper to add debconf values before installing a package or we should just shell out the debconf-set-selections command ?
<caribou> Is the juju-reboot statement still valid in a charm ? If so does it require a prior import in python ?
<caribou> nevermind, I was just being stoopid
<cory_fu> stub: I think we lost you
<wolverineav> hi, I have a question related to quantum-gateway charm, I hope this is the right channel for it.
<wolverineav> I see the TODO item on https://jujucharms.com/trusty/quantum-gateway : 'Support VLAN in addition to GRE+OpenFlow for L2 separation.'
<wolverineav> does that mean that currently you cannot override the default and set it to VLAN only?
<wolverineav> if that's the case, I guess the first step would be to submit an upstream patch to add a new configurable property, right?
<wolverineav> oh, some context - this property would apply to the ML2 plugin in neutron (quantum-gateway for juju), which is currently set to 'type_drivers = gre,vxlan,vlan,flat'
<lazyPower> wolverineav: this is the correct channel, but most of our openstack charmers are EU based. That would be a great question for the list - and I'll make sure to circle back and piont them at it
<wolverineav> lazyPower: thanks, appreciate it! i'm in  pacific time, so i would still be around late evening - midday EU.
<lazyPower> yeah - we have some fresh blood just now ramping up in the OS charm space that should be able to lend a hand moving forward
<lazyPower> but its too soon to tap on them for questions like that :)
<lazyPower> ddellav: ^ we're coming for you @_@
<ddellav> lol
<ddellav> i'll do what I can
<wolverineav> haha..I guess this might be the perfect fit for ramping up - how to add a new config property which is set in the *.ini file before the charm is first applied ;-)
<wolverineav> i'm just browsing through the 'hooks' to see how its passed around..
<marcoceppi> wolverineav: we don't really use quantum-gateway anymore,a nd instead use nuetron-api
<marcoceppi> is there a reason you need quantum?
<marcoceppi> fwiw, I believe the neutron charm supports VLAN with openvswitch
<wolverineav> ah, I guess the example I saw was an old one which used quantum-gateway. and since it had 'trusty' and supported juno, I assumed its up to date
<wolverineav> marcoceppi: let me try it out with neutron-api. thanks!
<wolverineav> marcoceppi: when specifying 'network-manager: Neutron' in nova-cloud-controller, it is mentioned "When using the Neutron option you will most likely want to use the neutron-gateway charm to provide L3 routing and DHCP Services."
<wolverineav> when I search for neutron-gateway: https://jujucharms.com/q/neutron-gateway , I see three relevant charms - quantum-gateway, neutron-openvswitch and neutron-api
<wolverineav> what is the recommended combination when deploying with L3 and DHCP service?
<wolverineav> I'm guessing its nova-cloud-controller + quantum-gateway + neutron-api. and the last one (neutron-api) is what I was missing earlier
<wolverineav> ah, actually no - nova-cloud-controller + neutron-api are part of openstack controller. neutron-openvswitch is on every compute node and the node where we deploy quantum-gateway.
<marcoceppi> wolverineav: yes, sorry, seems liek you've gotten it now
<marcoceppi> if it helps I can give you a bundle that is a reference architecture for OpenStack which includes how neutron-api works
<wolverineav> marcoceppi: yes, that would be helpful :)
<marcoceppi> wolverineav: https://jujucharms.com/openstack-base/
<marcoceppi> wolverineav: and here's the actual bundle https://api.jujucharms.com/charmstore/v4/bundle/openstack-base-34/archive/bundle.yaml
<wolverineav> marcoceppi: this is great! thanks!
#juju 2015-07-08
<g3naro> hi, was wondering if there is an easy way to use juju to deploy apache with centos ?
<g3naro> using local lxc
<bloodearnest> hey, a juju env is not responding to commands to remove-relation
<bloodearnest> just does nothing
<bloodearnest> status is clean, no errors, command completes ok, but relation still there
<bloodearnest>  1.20.11-trusty-amd64
<g3naro> hmm,
<g3naro> did you remove unit ?
<bloodearnest> nope
<g3naro> try trhat?
<bloodearnest> no chance - production env
<g3naro> oh shit
<g3naro> what are you trying to achieve ?
<bloodearnest> g3naro, I would like to remove the relation :)
<g3naro> decouple the service from this machine ?
<bloodearnest> I want to decouple the 2 services. The relation is only supposed to be temporary, to perform a db migration, then removed
<bloodearnest> we've been doing it this way for a while
<g3naro> ahh ok, im sorry i can't advise anything in this case
<g3naro> ive only been using in dev env's so far
<bloodearnest> g3naro, thanks anyway! :)
<bloodearnest> ah, I seem to have a rogue debug-hooks running. Sorry for the noise
<lazyPower> bloodearnest: that happens to me a lot
<bloodearnest> lazyPower, yeah, tell me about it!
<bloodearnest> lazyPower, I would really like a script to elevate a juju ssh session into a debug-hooks session.
<bloodearnest> then I can always start with ssh, rather than using debug-hooks "incase I need it"
<lazyPower> bloodearnest: i want to go a step further and debug hooks into a particular hook context.
<lazyPower> juju debug-hooks <service> <hook>
<bloodearnest> that would be great. Only hook into one relation
<sto> How do I tell curtin to use GPT instead of MBR with MAAS? I have a 3TB disk and MAAS only uses 2TB because it is using MBR
<marcoceppi> sto: no idea, you may wish to ask in #maas
<sto> marcoceppi: thanks
<bleepbloop> Hi everyone, I have an issue with a juju charm being hung on "running install hook", can anyone give me a hint on how to destroy that unit and machine without losing the whole environment?
<tvansteenburgh> bleepbloop: juju help destroy-machine
<tvansteenburgh> bleepbloop: destroy-service and destroy-unit may also be of interest
<bleepbloop> tvansteenburgh: I actually tried all of those, destroy machine and destroy-service return but never destroy it and destroy-unit says "ERROR no units were destroyed: state changing too quickly; try again soon"
<bleepbloop> tvansteenburgh: I tried later and well same thing
<tvansteenburgh> bleepbloop: are any units in error state according to `juju status`?
<bleepbloop> tvansteenburgh: workload-status: current: maintenance message: installing charm software since: 25 Jun 2015 15:14:50-04:00
<bleepbloop>  agent-status: current: executing message: running install hook since: 25 Jun 2015 15:14:51-04:00
<bleepbloop> tvansteenburgh: I found one other person with this issue https://bugs.launchpad.net/juju-core/+bug/1459761 however I'm not sure how to manually modify the mongo database to manually force it into an error state as suggested in the comments
<mup> Bug #1459761: Unable to destroy service/machine/unit <destroy-machine> <local-provider> <lxc> <juju-core:Triaged> <https://launchpad.net/bugs/1459761>
<tvansteenburgh> bleepbloop: does `juju debug-log` show any actual activity?
<bleepbloop> tvansteenburgh: unit-docker-2[1787]: 2015-07-08 16:27:09 ERROR juju.worker.uniter.filter filter.go:137 state changing too quickly; try again soon
<bleepbloop> unit-docker-2[1787]: 2015-07-08 16:27:09 ERROR juju.worker runner.go:219 exited "uniter": state changing too quickly; try again soon
<bleepbloop> tvansteenburgh: those two errors over and over
<tvansteenburgh> bleepbloop: if destroying the environment is not an option, i would comment on that bug and ask Gabriel how he did the mongo update. sorry, don't know what else to suggest
<bleepbloop> tvansteenburgh: No problem, thanks
<lazyPower> cory_fu: ping
<cory_fu> Hey, what's up
<lazyPower> looking @ the new redis charm that got a +1 - did you run bundletester against the charm?
<lazyPower> i see consistent failures without disabling the venv in teh test plan yaml
<lazyPower> https://launchpad.net/bugs/1459345 - for context
<mup> Bug #1459345: Review/promulgation request for the Redis charm <Juju Charms Collection:New> <https://launchpad.net/bugs/1459345>
<lazyPower> tthe makefile works perfectly though, as is - just when being routed through CI i noticed some failure due to not being able to find the venv targets - because bundletester gets hinky with venvs
<cory_fu> Yeah, I ran it via bundletester, in a charmbox
<lazyPower> ok, thast where i am too - in charmbox :|
<lazyPower> wonder why you didnt run into this, it bit me and CI as well
<cory_fu> Can you pastebin me the error?
<lazyPower> http://juju-ci.vapour.ws:8080/job/charm-bundle-test-aws/182/console
<lazyPower> :)
<lazyPower> its a real minor fix, just adding venv: false to the tests.yaml
<cory_fu> Um, says Jenkins is getting ready to work?
<lazyPower> lolwut
<lazyPower> looks like CI just got recycled
<lazyPower> give me a sec to to spin up another charmbox and i'll re-run
<cory_fu> lazyPower: Check out my comment #6.  I ran into an issue with the venv and it was addressed
<lazyPower> that fix, did not fix it.
<lazyPower> it needs the virtualenv: false flag in tests/tests.yaml to function appropriately
<lazyPower> otherwise it skips the venv yet again, thinking it should be using bundletesters venv
<cory_fu> I retested after that change and it was fixed for me
<lazyPower> schenanigans
<lazyPower> but ok - whats different in our envs then?
<lazyPower> something's got to be askew
<cory_fu> btw, charmbox juju is 1.24 stable now for me
<lazyPower> which charmbox did you pull? jujusolutions/charmbox?
<cory_fu> Yep
<lazyPower> ok, i'm in charmbox:devel
<lazyPower> thats one thing isolated - bueno
<cory_fu> I'm running bundletester now, btw
<cory_fu> Hrm.  I got a venv error
<cory_fu> I swear this worked
<lazyPower> :) i dont doubt that something worked at one time
<lazyPower> cory_fu: do me a favor and drop in that tests.yaml fix suggested above and see if it works for you
<cory_fu> lazyPower: It seems to but I'm confused as to why.  Was bundletester creating an incomplete .venv underneath the charm?
<cory_fu> I'm so confused how I got a successful run and didn't hit this
<lazyPower> honestly i dont know - https://github.com/juju-solutions/bundletester/issues/15 - but that is what i came across looking for the proposed fix
<lazyPower> i had to recommend this to thumper as well when we were riffing over django
<cory_fu> I wonder if I forgot to clear the .venv from a previous manual run
<lazyPower> that happens to me, i've had to adopt the workflow of exiting charmbox and re-running between reviews.
<lazyPower> as i run the charmbox with --rm
<wolverineav> this is a noobie doubt: when I'm doing multiple 'juju add-relation ' with the same service (like adding all relations to mysql), should I wait until the first one is applied or just execute all statements and juju makes sure the service is correctly configured and restarted after every relation change?
<lazyPower> wolverineav: they are typically executed in the order they are received
<lazyPower> so you can add all relations at once, and they will sequentially execute
<wolverineav> lazyPower: ok. that's good. I don't need to monitor using 'juju debug-log' then :)
<lazyPower> not unless you get hinky behavior :)
<lazyPower> in which case, please file bugs against the charms
<wolverineav> yep, will do.
<marcoceppi> wolverineav: while that's typically true, there's no guarentee when an event will run. Juju will queue things though, so you should just run all teh commands you want and the system will take care of taht for you
<lazyPower> thats very true
<lazyPower> +1 marcoceppi
<wolverineav> marcoceppi: yes, as long as it doesn't apply changes to the same service simultaneously and result in an inconsistent state, I'm ok with it handling in any random order.
<marcoceppi> wolverineav: hooks run asyncronously in the environment, but serially on the node
<marcoceppi> you'll never have two hooks running at the same time on a single machine
<wolverineav> got it! that's very useful piece of info!
#juju 2015-07-09
<dweaver> Juju with multiple NICs on MAAS with openstack bundle using os-*-networks - needs work.
<dweaver> Specifically, I think I am seeing an issue with how juju-core decides which of it's local IP addresses are the "private" address.  If I am using more than 1 RFC1918 subnet it looks like it just picks one either randomly or using a questionable decision.  I am also now seeing a difference in the address reported from an LXC container Vs a proper host.
<dweaver> in one of my deployments I am using 192.168.92.x as the management network and a bunch of 172.16.x.x subnets as the additional networks, but when I configure the addresses manually on LXC containers juju suddenyll switches the management address to the first 172.16.x.x address set up.
<dweaver> So, it seems like it is just picking the address with the lowest numerical value.
<dweaver> But on the other physical and KVM hosts in the deployment, with a proper NIC, keep the original management network address in the 192.168.92.x range
<dweaver> Then another deployment, very similar, but using different subnet ranges, the LXC containers are picking the public address instead of one of the RFC1918 addresses, which starts with 31.28.x.x, which would seem to agree that it is the lowest numerical address when it is in an LXC container, but not on a host
<dweaver> The different behaviour is a bit odd, I would have expected the behaviour from juju agent to be the same on a container vs a host.
<dweaver> Anyone with any insights please let me know, otherwise I'll try and tie it down and fill in a bug report.
<mgz> dweaver: bug 1188126 and bug 1435283
<mup> Bug #1188126: Juju unable to interact consistently with an openstack deployment where tenant has multiple networks configured <canonistack> <cts> <cts-cloud-review> <openstack-provider> <serverstack> <pyjuju:Triaged> <juju-core:Triaged> <https://launchpad.net/bugs/1188126>
<mup> Bug #1435283: juju occasionally switches a units public-address if an additional interface is added post-deployment <addressability> <network> <openstack-provider> <juju-core:Triaged> <https://launchpad.net/bugs/1435283>
<dweaver> mgz, that looks like what I am seeing, thanks.
<dweaver> Actually, reading through those, it doesn't quite match.  I am talking about MAAS deploying openstack so 1188126 doesn't match.
<beisner> hi coreycb, can you give a preliminary feedback on this pair of mps?:  https://code.launchpad.net/~1chb1n/charm-helpers/amulet-relations-settled/+merge/263724  ...  https://code.launchpad.net/~1chb1n/charms/trusty/cinder-ceph/next-amulet-relation-settle/+merge/263716
<beisner> coreycb, that is wrt the relations not settling before tests start thing;  it's actually an observable issue with all of the os-charm amulet tests, and i believe this squashes that.
<coreycb> beisner, sure
<coreycb> beisner, yeah that's a good thing to fix
<beisner> coreycb, appreciate it
<coreycb> beisner, commented on the c-h one
<coreycb> beisner, looks good for the most part
<beisner> coreycb, ack thx.  see inline on c-h.
<whit> hazmat: do you have a second to reflect upon the situation in python-jujuclient head?
<whit> it looks like there are some tests without implementations?
<whit> or incomplete ones?
<whit> like KeyManager and HAFacade?
 * whit has some small bug fixes to commit and is finding head... confusing
<beisner> coreycb, fyi, c-h adjusted, cycling without the test-and-test-again thing.  i suspect that will be just fine.
<coreycb> beisner, ok looks good
<aisrael> stub: you around?
<tvansteenburgh> aisrael: pretty sure it's 2:30am stub time
<aisrael> tvansteenburgh: oh, right!
<beisner> coreycb, ok the bot's test was ok.  i'm going to kick off a zillion of them to make sure that squashes le ole race.  https://code.launchpad.net/~1chb1n/charms/trusty/cinder-ceph/next-amulet-relation-settle/+merge/263716
<coreycb> beisner, code looks good
<jcastro> The office hours hangout for the top of the hour is here: https://plus.google.com/hangouts/_/hoaevent/AP36tYd8ofby2UDDUf0JW9Z5mNcoj5hhPpeMwud1D3mLnw6zwLcxeQ?authuser=0&hl=en
<jcastro> for anyone who wants to join
<jcastro> for everyone else, we're having Juju Office Hours in about 2 minutes
<jcastro> feel free to listen in on http://ubuntuonair.com
<jcastro> or participate by joining:  https://plus.google.com/hangouts/_/hoaevent/AP36tYd8ofby2UDDUf0JW9Z5mNcoj5hhPpeMwud1D3mLnw6zwLcxeQ
<beisner> https://blueprints.launchpad.net/ubuntu/+spec/topic-w-openstack
<beisner> https://wiki.ubuntu.com/ServerTeam/CloudArchive
<cholcombe> anyone running juju out of tmpfs?
<whit> question: does --metadata-source == $JUJU_HOME for bootstrap?
<whit> cholcombe: on the root node?
<cholcombe> whit: yeah i'd like to spin up my containers in ram :)
<cholcombe> whit, i switched from a laptop that had an ssd back to a desktop that has an hdd and it's so damn slow now
<cholcombe> but... i have 24GB of ram coming tomorrow :)
<beisner> that 15.04 release note doc, fyi:  https://wiki.ubuntu.com/ServerTeam/OpenStackCharms/ReleaseNotes1504
<lazyPower> cholcombe: so i couldn't help but notice you wrote autodock
<cholcombe> haha
<cholcombe> yup
<cholcombe> that was like 2yrs ago now i think
<lazyPower> how long were you planning on keeping this from me?
<cholcombe> :D
<cholcombe> finding it useful?
<cholcombe> i can't believe how many stars it got.  it's incredible
<lazyPower> well, write something ot scratch your itch, chances are you're scratching someone elses itch
<lazyPower> it would be stellar to get your feedback on some of the stuff we have brewing in tupperware these days
<cholcombe> this is true
<cholcombe> tupperware?
<lazyPower> thats our code-name for all the stuff we're working on in new workloads - aka, containers, aka tupperware
<lazyPower> its a meta thing
<cholcombe> when i destroy/recreate my local environment sometimes the all-machines.log file doesn't get recreated
<cholcombe> and juju debug-log fails
#juju 2015-07-10
<coreycb> gnuoy, jamespage: I need a review on this if one of you have a moment. https://code.launchpad.net/~corey.bryant/charm-helpers/install-warning/+merge/264340
<jamespage> thedac, hey - I did take a look through your service status MP - looks like a good start
<thedac> jamespage: great, thanks
<jamespage> one comment - I think we need to differentiate between BLOCKED - relations not made, and PENDING - relation made, pending presentation of data
<thedac> ok
<jamespage> we may not quite have that with the current context model - its a bit black and white complete/incomplete
<jamespage> so we may need to add some helpers to context to determine that information
<thedac> yeah, I'll have to dig a bit more to get to that
<jamespage> thedac, awesome
<thedac> thanks for the feedback
<marcoceppi> there's also "waiting" which is like "I know you've connected me, but I don't have data from the relation yet"
<thedac> yeah, that would make sense as the status. It is getting at that information in the charm that will be the work.
<pmatulis> if i want to change settings for an environment can anything be done programmatically? if so, would it be better to edit environments.yaml anyway?
<jrwren> pmatulis: juju set-env
<pmatulis> jrwren: looking, thanks
<suchvenu> Hi All, After cleaning the environment using juju bootstrap, juju status command is hanging. How to resolve this ?
<marcoceppi> suchvenu: what do you mean, cleaning?
<marcoceppi> you mean you destroyed-environment, ran bootstrap and now status doesn't work?
<suchvenu> i ran juju destroy-environment local and then ran bootstrap
<suchvenu> juju status and juju debug-log not working now
<marcoceppi> suchvenu: can you run `juju status --debug` ?
<suchvenu> 2015-07-10 17:55:23 INFO juju.api apiclient.go:261 dialing "wss://localhost:17070/environment/e4301ecd-0e2c-4656-8fc1-758ce461f350/api" 2015-07-10 17:55:23 DEBUG juju.api apiclient.go:267 error dialing "wss://localhost:17070/environment/e4301ecd-0e2c-4656-8fc1-758ce461f350/api", will retry: websocket.Dial wss://localhost:17070/environment/e4301ecd-0e2c-4656-8fc1-758ce461f350/api: dial tcp 127.0.0.1:17070: connection refused 2015-07-10
<marcoceppi> suchvenu: can you paste teh output of `sudo initctl list | grep juju` ?
<suchvenu> ok
<suchvenu> Ccharm1@islrpbeixv666:~/charms/trusty$ sudo initctl list | grep juju [sudo] password for charm1: charm1@islrpbeixv666:~/charms/trusty$
<suchvenu> nothing there
<marcoceppi> suchvenu: what version of ubuntu are you on?
<suchvenu> trusty
<marcoceppi> suchvenu: run `juju destroy-environment --force local` then bootstrap again
<suchvenu> ok
<suchvenu> yes, working now
<suchvenu> yes, working now :-)
<suchvenu> Thanks marcoceppi
<marcoceppi> suchvenu: no worries!
<pmatulis> i'm using the local provider with 'container: kvm' . doing 'juju add-machine' gets me a machine (as seen with 'juju status') but not with 'virsh list --all'. possible that libvirt is not being used?
<pmatulis> (output to 'juju status' here: http://paste.ubuntu.com/11857271/)
<lazyPower> pmatulis: if you run sudo lxc-ls --fancy do you see the ubuntu-local-machine-1 listed?
<pmatulis> lazyPower: no
<pmatulis> lazyPower: to be clear, i don't want LXC at all
<pmatulis> lazyPower: i thought i could just get some kvm-based machines
<lazyPower> you can, and virsh should have listed that machine..
<pmatulis> ok
<marcoceppi> not sure if should is appropriate
<marcoceppi> juju keeps containers in different paths
<marcoceppi> and it may not be registered in virsh
<pmatulis> hm, that is plausible
<pmatulis> anyway, i'm logged into this machine fwiw. still digging
<pmatulis> the machine's log file: http://paste.ubuntu.com/11857329/
<pmatulis> lazyPower: i don't get it. this machine is indeed an LXC container
<lazyPower> I suspected that might be the case looking at the IP of the machine and its name.
<pmatulis> i created a new file under /etc while logged into it and the host shows it (sudo ls -l /var/lib/lxc/ubuntu-local-machine-1/rootfs/etc)
<pmatulis> lazyPower: gah, using sudo with 'lxc-ls' shows it
<lazyPower> ah, i had sudo up above :) i guess i should have called it out
<pmatulis> my bad
<pmatulis> lazyPower: so question remains: how do i get myself a kvm guest?
<lazyPower> do you have the juju-local-kvm package installed? (i'm not sure if this is still required, but it was at one point)
<pmatulis> lazyPower: just 'juju-local' but i see the other package is available for install
<lazyPower> the container: kvm - should make it use kvm, and that package should get you all the prerequisits.
<pmatulis> lazyPower: installed it but i see it only contains /usr/share/doc*
<suchvenu> hi
<suchvenu> I see the following error in the isntall hook of my charm
<suchvenu> unit-db2-0[933]: 2015-07-10 19:32:06 INFO unit.db2/0.install logger.go:40 Err http://archive.ubuntu.com/ubuntu/ trusty-updates/main binutils amd64 2.24-5ubuntu13 unit-db2-0[933]: 2015-07-10 19:32:06 INFO unit.db2/0.install logger.go:40   Could not resolve 'archive.ubuntu.com'
<suchvenu> I am trying to do some sudo apt-get isntall commands
<suchvenu> I am trying using juju version 1.24.2 where I am getting the above issue
<suchvenu> I have another environment in which juju version 1.23.2 is running and I dont see this error there with the same code base
<tvansteenburgh> suchvenu: seems like a dns issue
<tvansteenburgh> i would `juju ssh db2/0` and try to apt-get install something
<suchvenu> getting same error from the juju machine also
<suchvenu> The following NEW packages will be installed:   binutils 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 2,076 kB of archives. After this operation, 11.7 MB of additional disk space will be used. Err http://archive.ubuntu.com/ubuntu/ trusty-updates/main binutils amd64 2.24-5ubuntu13   Could not resolve 'archive.ubuntu.com' E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/main/b/binutils/binutils_2.24
<pmatulis> lazyPower: my problem was that i neglected to destroy and bootstrap after having changed my yaml file
<lazyPower> pmatulis: that'll do it! thanks for circling back
<lazyPower> i had not thought of that
#juju 2016-07-11
<setuid> If I use 'openstack-install' on 14.04, and it installs all of the nodes using juju except the broken keystone node, why does 'juju status' in another session to the same host, not show all of the nodes currently deployed?
<setuid> Is there a way to tell juju to use the specific config that openstack-install uses in ~/.cloud-installer/juju/local/, vs. the 'normal' config that would go in ~/.juju/ ?
<kjackal> Good morning juju world!
<hoenir> someone has some good documentation on how to bootstrap on manual provider mode?(i'm interested in juju2.0)
<kjackal> kwmonroe: Good morning! I have some good news for bigtop Zeppelin
<ryebot> is there some way to disable the juju login timeout or login without using the interactive prompt? (juju2)
<Prabakaran> Hello Team, I am facing the scenario wherein I will have to create a database for my product installation in the remote container/machine and for this I am using Mysql charm and in my host I have installed mysql-client in order to create a database and run some sql commands.
<Prabakaran> To test this functionality, I have installed mysql charm in the container 1 and installed mysql-client in an another container 2. I ran the command âmysql -h 10.178.209.124 -u root -pedba1124-c825-4a8a-9ca9-b3caea9789cdâ and getting an error stating âERROR 1130 (HY000): Host '10.178.209.157' is not allowed to connect to this MySQL serverâ
<Prabakaran> And I was trying to trace this issue and found out an actual cause by running this command  SELECT host FROM mysql.user WHERE User = 'root';  As per this command there is no % symbol to allow remote unit to execute mysql commands.  Kindly advise me on how to use mysql-client for mysql charm.
<Prabakaran> Could somebody help me on this?
<babbageclunk> Prabakaran: So you installed mysql-client on another machine using apt?
<babbageclunk> Prabakaran: Is that machine managed by juju?
<babbageclunk> Prabakaran: If so, I think you could deploy ubuntu-devenv to the machine and add a relation between mysql and ubuntu-devenv. That should set up access to the database from there.
<Prabakaran> yes
<babbageclunk> Prabakaran: Essentially, deploying any charm that can be related to mysql should do it.
<Prabakaran> i have just created the container and sshed into it
<babbageclunk> Prabakaran: (and linking them together)
<babbageclunk> Prabakaran: https://jujucharms.com/requires/mysql
<Prabakaran> and thru charm it should work .. is that what u r sayin?
<babbageclunk> Well, at the moment, mysql doesn't know anything about the other machine (and nor does juju).
<babbageclunk> If you want juju to manage it, it needs to know that you want to use the database from outside.
<babbageclunk> or rather, from another machine.
<babbageclunk> Prabakaran: I think so.
<Prabakaran> if i use ubuntu-devenv and add-relation between them.. how do i test mysql-client usage ?
<babbageclunk> Prabakaran: hmm - good question. Just checking...
<babbageclunk> Prabakaran: I'm fairly sure you'd use a hook tool to find out the connection information, but I don't know the exact command.
<Prabakaran> k <babbageclunk> thanks
<Prabakaran> let try using a charm
<Prabakaran> I am not able to run sql commands in the remote-database using mysql charm and mysql interface. I am getting permission error.  Below is the log file and reactive file link Log: http://paste.ubuntu.com/19094490/ Reactive file of sampledatabasecharm: http://paste.ubuntu.com/19094762/
<Prabakaran> Below are the commands which I used juju deploy mysql juju deploy <sampledatabasecharm> juju add-relation mysql sampledatabasecharm
<Prabakaran>  Kindly advise me on this issue
<kwmonroe> Prabakaran: you won't be using the 'root' user to connect
<kwmonroe> the mysql relation will return a username that you can use
<Prabakaran> still i was getting the same error. and also it was showing there is no username. thats y i commented username and gave as root
<kwmonroe> Prabakaran: line 13 here should be "user", not "username" :)  http://paste.ubuntu.com/19094762/
<Prabakaran> k let me deploy and try once
<kwmonroe> also Prabakaran, the mysql relation will create and return a database for you to use.. you would get the name of that database with "relation_call --state 'mysql.available' 'database'"
<Prabakaran> is it a default database?
<kwmonroe> yes
<Prabakaran> k
<kwmonroe> Prabakaran: i don't think you'll need the config_db() function at all.  unless you have a specific need to create a database, user, and grant privs for that user, you should just use the default db that mysql creates for you.
<kwmonroe> Prabakaran: if you *do* need to create dbs and users and do stuff like "grant", you'll need to relate your charm to mysql over the mysql-admin relation.  see the openbook charm for an example that uses the admin relation vs the normal mysql relation: https://api.jujucharms.com/charmstore/v5/trusty/openbook-3/archive/metadata.yaml
<kwmonroe> Prabakaran: the openbook db-admin-relation-changed hook shows how they use the admin relation to create specific databases and users:  https://api.jujucharms.com/charmstore/v5/trusty/openbook-3/archive/hooks/db-admin-relation-changed
<kwmonroe> so i think the first thing you'll need to decide is whether or not you need to do administrative things to the mysql charm, or if you can simply use the db and credentials that mysql creates for you by default.
<Prabakaran> for my requirement i need to create a database and let me try with mysqladmin
<Prabakaran> for mysqladmin, should i need to install anything using apt-get ?
<Prabakaran> here i am using apt-get install mysql-client
<kwmonroe> nope Prabakaran, nothing else to install.  mysqladmin is included in mysql-client
<Prabakaran> k
<Prabakaran> let me deploy and confirm to you
<kwmonroe> ok Prabakaran, but just to be clear, the mysql relation only grants your user access to a default db.  since you need to create your own db, you will need to specify the mysql-root relation in your metadata.yaml.
<Prabakaran> so i will have to use   db-admin:       interface: mysql-root
<Prabakaran> in metadata.yaml
<Prabakaran> then what about   "mysql":     "interface": "mysql"
<Prabakaran> which i have already included>
<kwmonroe> marcoceppi: cory_fu:  Prabakaran needs a mysql-root interface insted of mysql.  i'm pretty sure that means he can remove "interface: mysql" from his metadata.yaml, but i'm not sure what state he will then need to react too.  will mysql.available be set with mysql-root?
<cory_fu> kwmonroe: It will not, because mysql-root is a different interface than mysql, so the mysql interface layer will not work with mysql-root.  A new interface layer will need to be created to support the mysql-root interface protocol
<cory_fu> There is already a mysql-shared interface layer registered for that protocol
<cory_fu> kwmonroe, Prabakaran: That said, if you change the interface to 'mysql-root' but keep the relation name as 'mysql', and the interface layer for the mysql-root protocol follows the same pattern, then you could conceivably still use the 'mysql.available' state, since the prefix ('mysql') is based on the relation name, not the interface name.  But from your conversation above, it would probably need to change to 'db-admin.available'
<kwmonroe> i don't understand how mysql-shared works (especially since provides.py is empty)
<cory_fu> kwmonroe: Well, the provides.py would presumably be used by the mysql charm itself, but since that hasn't been converted to layers yet, it's currently unused.  It should definitely be filled in, though.
<Prabakaran> should i need to change anything in the layer.yaml file?
<cory_fu> Prabakaran: You would need to change the "includes:" item that references "interface:mysql" to "interface:mysql-root"
<cory_fu> marcoceppi: Is there actually anything different in the protocol between mysql and mysql-root?
<Prabakaran> <cory_fu> here i have a doubt ... there is no mysql-root interface available in the interface.juju.solutions then how charm build cmd will pick mysql-client?
<cory_fu> Prabakaran: Yes, the mysql-root interface does not currently exist and needs to be created.  However, I think that the protocol may actually be identical to 'mysql' in which case it could be trivial to add
<kwmonroe> cory_fu: i don't see (m)any diffs between mysql and mysql-root.. it's just that root grants privs on everything vs just a single db (https://api.jujucharms.com/charmstore/v5/mysql/archive/hooks/db-relation-joined)
<kwmonroe> who is a ~mysql-charmer?
<cory_fu> marcoceppi, kwmonroe, Prabakaran: From my reading of the mysql charm, I think the protocol itself is actually identical and we can probably just re-register https://github.com/johnsca/juju-relation-mysql under the mysql-root name and call it done
<cory_fu> kwmonroe: It's only marcoceppi: https://launchpad.net/~mysql-charmers/+members
<kwmonroe> maintanership through obscurity.  i like ;)
<kwmonroe> cory_fu: i'll do the re-register and see how we fair
<cory_fu> +1
<cory_fu> Prabakaran: For you, that means that all you have to do is change your layer.yaml to "interface:mysql-root" and metadata.yaml to "interface: mysql-root"  If you keep the same relation name, you shouldn't have to change anything else
<kwmonroe> wait wait.. he'll need to make the relation name db-admin because the "admin = xyz" line here https://api.jujucharms.com/charmstore/v5/mysql/archive/hooks/db-relation-joined looks for db-admin
<kwmonroe> unless i'm reading this wrong... "admin = os.path.basename(sys.argv[0]) == 'db-admin-relation-joined'" means mysql is checking to see if the hook name is 'db-admin-relation-joined', right cory_fu?
<cory_fu> kwmonroe: You're confusing the mysql charm's relation name vs the client charm's relation name
<kwmonroe> dang.. you're right.  my bads.
<kwmonroe> ignore my last couple comments Prabakaran.  any really, any time cory_fu is in the covo, just do what he says... "Prabakaran: For you, that means that all you have to do is change your layer.yaml to "interface:mysql-root" and metadata.yaml to "interface: mysql-root"  If you keep the same relation name, you shouldn't have to change anything else"
<Prabakaran> after all these changes files looks like http://paste.ubuntu.com/19099534/ http://paste.ubuntu.com/19099537/ http://paste.ubuntu.com/19099560/
<kwmonroe> LGTM Prabakaran
<Prabakaran> i have pasted my reactive file, metadata.yaml and layer.yaml file...if you see any changes let me know
<Prabakaran> LGTM means :)?
<kwmonroe> Prabakaran: looks good to me :)
<Prabakaran> oh grt thanks:)
<Prabakaran> how about reactive file with database related query changes
<kwmonroe> np, let us know how it works out.. i think mysql-root could be useful to others too.
<kwmonroe> Prabakaran: the relation_calls look fine, but i'm not versed in mysqladmin syntax, so i don't have any input there.
<Prabakaran> so you will be adding mysql-root interface under interface.juju.solutions right? than only i willl be able to test my charm?
<kwmonroe> Prabakaran: it's already there
<kwmonroe> i added it a few minutes ago
<marcoceppi> cory_fu: the protocol /is/ the same, for the most part
<Prabakaran> oh cool :) added soon
<Prabakaran> thats grear
<Prabakaran> *great
<Prabakaran> Thanks all , i will test and confirm to u..
<marcoceppi> cory_fu kwmonroe I'll probably re-register the mysql-root and mysql layers as I round out the MySQL charm layerization
<kwmonroe> cool marcoceppi -- any beef with Prabakaran using the mysq-root interface as-is for now?  (which is just a dupe of the mysql interface with a new name atm)
<marcoceppi> kwmonroe: no
<marcoceppi> the consumer side shouldn't change much
<kwmonroe> cool
<kwmonroe> anyone writing bash charms (or anyone that has bash scripts in general).. i was at texas linux fest this past weekend and got turned on to http://www.shellcheck.net/.  it's a *really* neat way to lint your bash, if you're into that kind of thing.  turns out, i'm terrible at quoting my ${variables}.
<jrwren> im terrible at declaring function local variables. does it lint for that?
<magicaltrout> rock and roll kwmonroe ! You know how to live it up!
 * magicaltrout goes to take a look out of morbid curiosity
<kwmonroe> jrwren: i'll check in a sec, but here's one that gets me all the time..
<kwmonroe>                 if [ -f  $ARCHIVE_DIR/*.gz ]; then
<kwmonroe>                          ^-- SC2086: Double quote to prevent globbing and word splitting.
<kwmonroe>                          ^-- SC2144: -f doesn't work with globs. Use a for loop.
<jrwren> very nice!
<kwmonroe> well jrwren, it does not seem to bark at local func vars (or lack thereof).  i'll adjust my rating to 9/10 ;)
<Prabakaran> i kwmonroe, i just tested my sample charm and it is pending for long time on unknown state with the log http://paste.ubuntu.com/19102078/ and code files are http://paste.ubuntu.com/19099534/ http://paste.ubuntu.com/19099537/ http://paste.ubuntu.com/19099560/.
<kwmonroe> Prabakaran: can you paste the states that your charm thinks are set?  juju run --unit <unit/X> 'charms.reactive -p get_states'
<kwmonroe> Prabakaran: also, did you re-run charm build after the code changes and deploy that new charm?
<Prabakaran> yes
<Prabakaran> root@ptcvm2:~# juju run --unit sampledatabase/3 'charms.reactive -p get_states' {}
<Prabakaran> it shows null
<kwmonroe> Prabakaran: how about:  juju status-history sampledatabase/3
<kwmonroe> that may not show much depending on what states your sampledatabase charm sets
<Prabakaran> juju status-history sampledatabase/3 ----http://pastebin.ubuntu.com/19103015/
<kwmonroe> hmph.. odd that you wouldn't at least see the mysql.connected state since it clearly ran the joined and changed hooks
<kwmonroe> cory_fu: anything jump out at you? ^^
<Prabakaran> <kwmonroe> it is time for me to sleep.. i will lookinto this issue... and if you come to know anything regarding this please mail me. Thanks for your support :)
<kwmonroe> np Prabakaran - have a good night..
<Prabakaran> Thanks kwmonroe
<cory_fu> Sorry, I was grabbing some food.
<cory_fu> Have a good night, Prabakaran
<cory_fu> That is odd
<cory_fu> Actually, it looks like the hooks aren't getting built properly: 2016-07-11 18:38:40 INFO juju.worker.uniter.operation runhook.go:116 skipped "mysql-relation-joined" hook (missing)
<cory_fu> kwmonroe: I think I know what the problem is.  Interface layers aren't designed to be re-used like that; it's interface.yaml still calls it "mysql" and I think that's blocking it from being included in the build (should have gotten a build warning or something)
<cory_fu> We're going to have to clone that repo, change that one line, and re-register
<kwmonroe> ah, on it.
<petevg> marcoceppi, cory_fu: following up on the coversation in the broadcast hangout on Friday, I put together a first pass at a unit testing helper lib for layered charms. Feedback, harsh criticism, etc. welcome! PR here: https://github.com/juju-solutions/charms.unit/pull/1
<petevg> It works with the unit tests that I wrote here: https://github.com/juju-solutions/layer-apache-bigtop-base/pull/28 (You just have to change the name of the import, and put charms.unit somewhere in your path).
<cory_fu> petevg: Comments added.  I'm particularly confused about the docstring vs implementation of to_mock / mock_layers.
<petevg> cory_fu: reading through your comments now. Thank you very much :-)
#juju 2016-07-12
<Prabakaran> Hello Team, I am getting this charm build error which is quite strange and charm build was fine before "http://pastebin.ubuntu.com/19144002/"
<Prabakaran> Could somebody help me on this ?
<BlackDex> Hello there. I had a juju bootstrap on a virtual system. That host crashed with all its data. Is there some way to rebuild the bootstrap with already running juju deployed systems?
<BlackDex> no backup what so ever because someone deleted them :(
<magicaltrout> don't think so BlackDex, you'll be missing the mongo controller, the various ssh keys etc
<BlackDex> keys can be replaced. But the mongodb is a bitch i think
<BlackDex> i know the machines were added manually
<BlackDex> but i don't think that is going to help
<BlackDex> meh
<cory_fu> lazyPower: Hey, did you see my comment on https://github.com/juju/charm-tools/issues/229 ?  I added it after you closed the issue, but I think there's an issue with charmbox there
<cory_fu> marcoceppi: ^  maybe the version has to do with apt packaging?
<marcoceppi> cory_fu: it shouldn't have
<mbruzek> cory_fu: I remember looking at this with lazyPower, we did have the version ranged, not sure if it was pinned
<cory_fu> mbruzek: Hrm.  It's pinned in requirements.txt: https://github.com/juju/charm-tools/blob/master/requirements.txt#L20  but not in setup.py: https://github.com/juju/charm-tools/blob/master/setup.py#L16
<cory_fu> That means we're running tests with a different version than what is getting installed
<cory_fu> And it means that https://github.com/juju-solutions/charmbox/blob/master/install-review-tools.sh#L14 is causing every new version of the lib to get installed, without testing if it works with charm-tools
<cory_fu> I bring this up because Prabakaran is hitting this: http://pastebin.ubuntu.com/19144002/
<mbruzek> cory_fu: so the solution would be to pin it in setup.py?
<cory_fu> Though that actually does work for me with the latest version, but the opened & closed GitHub issue on charm-tools is another symptom of us not pinning our deps
<cory_fu> mbruzek: TBH, I think that --upgrade flag in charmbox might upgrade deps irrespective of pinning, but I'm not certain
<cory_fu> I think a better solution would be to use a yaml library that doesn't let breaking changes get in so frequently.  ;)  But pyyaml doesn't include the round-trip behavior that we need
<mbruzek> cory_fu: correct
<mbruzek> cory_fu: I think marcoceppi would love to reduce the dependencies on other packages
<mbruzek> cory_fu: but we are stuck with ruamel for now
<mbruzek> cory_fu: I can propose a pinned version of ruamel in setup.py
<lazyPower> i'm good with whatever yinz need to do there
<lazyPower> it was cleaned up after the latest bump, but that doesn't mean we aren't headed for another path.py level breakage
<mbruzek> I see deprecation warnings in the bundletester builds.
<mbruzek> path.py will bite us again
<kjackal> hey cory_fu, I would like some advice on relations... juju relations :)
<kjackal> cory_fu: let me know when you have 10 minutes to spare
<cory_fu> mbruzek, marcoceppi, lazyPower: Ok, so it looks like the version of ruamel.yaml that we have pinned in charm-tools actually has a bug of sorts in it.  Specifically, parser.py was renamed to parser_.py at some point prior to 0.10.23 and renamed back in 0.11.8.  But we only hit this if there's an error in parsing layer.yaml and there's apparently no test coverage of that case
<lutostag> bcsaller: having a look at http://interfaces.juju.solutions/interface/pgsql/, my first foray into the reactive charm world... hoping you might be able to help me...
<lazyPower> lutostag - we can help :) whats up?
<lutostag> lazyPower: cool, so I have this charm that relates to postgresql... where I need to have an extension
<lutostag> that is provided by git://git.launchpad.net/postgresql-charm, which would let me according to the old way... juju set-relation extensions=tablefunc
<lutostag> I have this code... http://pastebin.ubuntu.com/19177123/
<lutostag> which works and is using the above interface
<lazyPower> so far, so good
<lutostag> I don't see how to do a juju set relation, with the interface, should I PR something to https://github.com/bcsaller/juju-relation-pgsql.git or is there an easier way I can get away with it?
<lutostag> (specifically for the extensions)
<lazyPower> so i'm not sure what you mean by extensions, sorry for being daft
<lazyPower> you typically relation-set on the conversation object, as most relations are UNIT scoped
<lazyPower> so each unit participates, and reads/writes on the wire vs say, global/service where typically all units read, and one unit writes.
<lazyPower> conv = self.conversation()   conv.set_remote({'foo': 'bar'})
<lazyPower> as an example
<lutostag> ah I see https://github.com/bcsaller/juju-relation-pgsql/blob/master/requires.py inherits RelationBase which gets me what I need
<lazyPower> \o/ glad i was of no help but we got there anyway
<lutostag> so I can just do a 'pgsql.set_remote(...)' like my paste above
<lazyPower> yep
<lazyPower> here's an example of the inverse being used
<lazyPower> https://github.com/juju-solutions/interface-etcd/blob/master/peers.py#L63
<lutostag> cool
<lutostag> that helps me enough to run into the next wall. Thanks
<lazyPower> lutostag - always happy to help. ping if stuck :)
<mbruzek> cory_fu: https://github.com/juju/charm-tools/pull/232
<cory_fu> mbruzek: https://github.com/juju/charm-tools/issues/233
<cory_fu> mbruzek: 0.10.23 is actually somewhat broken
<mbruzek> ah
<mbruzek> What version would you like cory_fu?
<cory_fu> The current version seems to work fine.  0.11.14
<mbruzek> cory_fu: I see it in the bug
<mbruzek> cory_fu: on it.
<cory_fu> kjackal: Sorry for the delay.  I'm in daily-bigdata if you want to try to squeeze it in before the sync
<cory_fu> mbruzek: Thanks!
<mbruzek> cory_fu: I updated to 0.11.14 and ran the tests they still pass
<mbruzek> cory_fu: updated PR 232
<cory_fu> mbruzek: I should point out that they passed before. There's apparently no test coverage of that code-path
<cory_fu> It would be nice to add one.  Is your branch on juju-solutions or your own fork?  If the latter, I can add a test case after our sync
<mbruzek> I should point out that I am actually working on something else at the moment
<cory_fu> mbruzek: Ha.  I was just offering to do it, but now you're being rude so maybe I won't.  ;)
<mbruzek> cory_fu: my own fork, do or do not, there is no try.
<cory_fu> mbruzek: Oh, well then I can't update the PR
<mbruzek> You "could" it would just have to be against my fork
<cory_fu> Sure, ok
<mbruzek> chuck makes PRs against my branch often, in fact I have one here.
<mbruzek> https://github.com/juju-solutions/layer-dockerbeat/pull/6
<mbruzek> no
<mbruzek> That is untrue
<mbruzek> oh well
<neiljerram> mbruzek, hi
<mbruzek> neiljerram: hello
<mbruzek> neiljerram: what is up?
<marcoceppi> cory_fu mbruzek we can't put newer versions of hte library
<marcoceppi> it has to match what's in Xenial, which is 0.10.23
<cory_fu> marcoceppi: But that's broken
<marcoceppi> we need to get it updated in Xenial then
<neiljerram> mbruzek, sorry, just a mo - another conversation...
<marcoceppi> which won't allow you to jump to an 0.11.X version
<marcoceppi> so is there a 0.10.X version that has the fix?
<neiljerram> mbruzek, hi again - one of my customers, using the new etcd charm, asked if it had any support for key rotation.
<mbruzek> neiljerram: not that I know of, but that is something that could be built into the layer-tls
<lazyPower> neiljerram - not today, but we can add that, in terms of generate new keys. There's no CA to speak of, to invalidate as they are self signed PKI
<neiljerram> mbruzek, lazyPower - thanks, that's what I guessed.
<mbruzek> neiljerram: We haven't had that type of requirement, I don't understand when you would want to rotate keys.
<cory_fu> marcoceppi: Unfortunately, no.  It was fixed in 0.11.8.  We could instead change our code to use parser_ instead of parser and keep the current version (and pin it in 0.10.23)
<lazyPower> mbruzek - key expiration, a key was compromised, ssl bug like heartbleed
<neiljerram> mbruzek, Understood, and I don't really understand the requirement either.  (Except perhaps just 'as an extra precaution, if you think someone might be cracking your key'?  But that's vague.)
<marcoceppi> cory_fu: we need to do that, then, unfortuantely
<mbruzek> so we can discuss the details and look into a solution
<lazyPower> neiljerram - since the keys are peer to peer exchanged, if they have access to the box you've got bigger problems than ssl keys :)   However I do understand the desire to be as secure as possible, and i've thought about this
<neiljerram> mbruzek, of course.  If this is a firm requirement, I'll be happy to include you and lazyPower in the discussion.
<lazyPower> i was going to hold off on implementing any of that until we got a proper CA setup, and could then issue revokations during key rotation, so they keys become invalid at the CA level across the deployment. but thats not on our roadmap at all for this cycle
<bdx_> standing up the first juju infra for creativedrive today - starting with a beats/elastic/kibana stack in aws!
<marcoceppi> bdx_: awww yeah, you using the beats-core bundle?
<bdx_> lazyPower:^
<bdx_> yea
<bdx_> I gave a demo yesterday ... went really well
<bdx_> I got the ok to bootstrap up!
<bdx_> initially, the servers that will need the beats agents wont be part of a juju model
<bdx_> so I will be manually adding them
<bdx_> can I 'juju add-machine ssh:ubuntu@<ip>' using 'aws' as my cloud?
<lazyPower> yep
<lazyPower> so long as your controller can reach the nodes you're enlisting
<lazyPower> and bdx_ - BAD ASS!
<bdx_> sick
<lazyPower> \o/
<bdx_> game on
<lazyPower> i mean, thats super awesome
<bdx_> lazyPower: you are super awesome!
<bdx_> thanks for all the beats man!
<lazyPower> :D  bdx_  there's a development channel bundle with packetbeat and dockerbeat too
<lazyPower> so if you feel intrepid, go for the gusto my friend. juju deploy cs:~contianers/beats-core --channel=development
<lazyPower> without the typo in containers..
<bdx_> ha
<Prabakaran> kwmonroe, i just tested my sample charm and it is pending for long time on unknown state with the log  http://paste.ubuntu.com/19194830/ and code files are http://paste.ubuntu.com/19194662/ http://paste.ubuntu.com/19194666/ http://paste.ubuntu.com/19194668/ Kindly check and advise me on this issue
<bdx_> hey whats up guys - few questions on 'aws' cloud in 2.0 if anyone is out there
<bdx_> 1. Can one controller "manage" multiple aws accounts?
<bdx_> 2. Are aws accounts user sensitive ?
<magicaltrout> 1) not that I know of
<magicaltrout> 2) they are controller sensitive if that helps. So you can run x controllers in the same account
<magicaltrout> or I'm missing the point
<bdx_> ^ e.g. does a user have an aws account associated with them, or possibly the inverse of this?
<bdx_> magicaltrout: hey, thanks
<bdx_> magicaltrout: say I have aws-account-ABC and aws-account-XYZ, is a single controller capible of distinguishing between the two
<bdx_> ?
<magicaltrout> not to my knowledge bdx_ when you bootstrap a controller you just pass it an AWS account
<magicaltrout> I don't believe you could pass >1
<bdx_> magicaltrout: e.g. credentials.yaml <- http://paste.ubuntu.com/19208532/
<bdx_> ooh my bad ... aws1 and aws2 are individual "clouds"
<magicaltrout> well you can have multiple aws accounts registered
<magicaltrout> but you bootstrap to a single one
<bdx_> magicaltrout: how do you make use of the subsequent accounts?
<bdx_> lets say you want model-A to be aws-acct-A and model-B to be aws-acct-B ?
<bdx_> would you set that in the model config?
<magicaltrout> bootstrap a controller in aws-acct-B
<bdx_> yup
<bdx_> how does the controller in aws-acct-B know about aws-acct-A?
<magicaltrout> doesn't
<bdx_> bleh
<bdx_> "well you can have multiple aws accounts registered  "
<magicaltrout> i might be wrong, but i've never seen it happen
<magicaltrout> i live a sheltered life though
<bdx_> I thought you are the juju<->aws mastermind!
<magicaltrout> haha
<magicaltrout> yeah so i'm just prodding around the various help bits
<magicaltrout> my understanding is you can have > 1 sets of credentials
<magicaltrout> and you can specify those creds when bootstrapping an aws cloud
<bdx_> lol
<magicaltrout> but if you have 2 accounts and a controller in each, you can't talk between them
<magicaltrout> that sorta falls in the to the multi cloud model stuff we discussed on the roadmap mailing list chain a while ago
<bdx_> ok, so then why bootstrap with multiple accounts?
<magicaltrout> I don't, you asked :P
<magicaltrout> actually thats a lie, I do, but for different customers
<magicaltrout> so customer 1 has an account, customer 2 has an account
<magicaltrout> but in reality what you are asking for I also want, so then I can have account 3 which is an internal account that runs centralised monitoring and other bits and pieces
<bdx_> ahh, yes, I see how that would be cool ... back to - "customer 1 has an account, customer 2 has an account"
<bdx_> is your controller aware of both of those accounts?
<magicaltrout> is your definition of controller and mine different?
<magicaltrout> my controllers live within their respective accounts on AWS and know of nothing of each other
<magicaltrout> I have a juju client which I can point in either direction
<bdx_> ah, yes, but still you have a requirement of 1 "controller" (in the juju context) per aws account still then, right?
<magicaltrout> that is correct
<bdx_> lol
<bdx_> nice
<bdx_> but what you were getting at is the fact that you "can" bootstrap with multiple accounts
<bdx_> ?
<bdx_>  you just can't do anything with them following the bootstrap?
<magicaltrout> I can run different accounts, you use the --credential operator i believe
<magicaltrout> so I have multiple juju instances that run fine
<magicaltrout> butu they are distinct and disparate from one another
<terje> Hi, I've setup a working maas server on a baremetal system. Now, I'd like to deploy 2.0~beta7-0ubuntu1.16.04.1 on this same hardware in an lxc container.
<terje> I can't figure out how that's done in the 2.x series.
<terje> (juju 2.0~beta7-0ubuntu1.16.04.1)
#juju 2016-07-13
<kjackal> hey admcleod I am getting this: http://pastebin.ubuntu.com/19259834/
<kjackal> this is on zeppelin and everything in on apache-* charms
<kjackal> any thorughts?
<admcleod> kjackal: interesting, so lzo is an issue. can you also pastebin your juju status?
<kjackal> http://pastebin.ubuntu.com/19260221/ admcleod
<admcleod> kjackal: in /usr/lib/hadoop can you run this: bin/hadoop jar share/hadoop/common/hadoop-common-2.7.1-tests.jar org.apache.hadoop.io.TestSequenceFile -seed 0 -count 1000 -compressType RECORD xxx -codec org.apache.hadoop.io.compress.LzoCodec -check
<admcleod> kjackal: on the spark unit, and on the slave
<kjackal> admcleod: on the spark node: http://pastebin.ubuntu.com/19260497/
<kjackal> admcleod: and here is running it on the slave: http://pastebin.ubuntu.com/19260637/
<admcleod> kjackal: ok so its possible that spark doesnt know where the hadoop libs are. (also, does the log that you're trying to create the spark context with actually exist?)
<kjackal> admcleod: the error is the same regardless the file I am tryin to access
<admcleod> kjackal: https://gist.github.com/andrewdmcleod/e32e8982c0b8f8083442 < check these files to see if they have the appropriate paths.. if not, add, restart the pyspark interpreter
<admcleod> kjackal: the classpath including the specific lzo jar should already be in one of those files
<admcleod> kjackal: can you also try to run 'spark-submit' at the cli on the spark unit and pastebin if there is an error?
<kjackal> spark-submit gives no errors and sparkpu.sh runs ok
<admcleod> kjackal: are those paths in the files (re the gist)?
<kjackal> so. no!
<admcleod> kjackal: thats interesting. im pretty sure kwmonroe put those in somewhere.
<kjackal> some of the files in the gist are not there (compute-classpath) and none of the rest contain the lines the gist wants to inject
<admcleod> kjackal: it may be possible he (someone) put them in different files
<admcleod> kjackal: are you trying to add them manually to see what happens?
<kjackal> admcleod: yeap waiting for the job to finish
<kjackal> nope-same error....
<kjackal> it is as if pyspark does not load the classpath from the expected routes.
<kjackal> admcleod: ^
<admcleod> kjackal: and you restarted pyspark interpreter, try restarting zeppelin copletely?
<admcleod> +m
<admcleod> kjackal: any luck?
<kjackal> admcleod: not realy... just documented the problem we have in a card and going to look at this in more depth now
<kjackal> do you have the commit where we add lzo to our classpath?
<admcleod> kjackal: no, sorry
<admcleod> kjackal: i looked and couldnt find anything
<lazyPower> ping magicaltrout
<magicaltrout> yo lazyPower
<lazyPower> magicaltrout - i need to introduce you to some people. You've taken point on the dcos/mesos work right?
<magicaltrout> it does appear i'm that man
<lazyPower> awesome, i'll hit you with an email introduction then.
<magicaltrout> cool
<lazyPower> magicaltrout - are you still tom at analytical thingy dot whatever?
<magicaltrout> yeah lazyPower
<lazyPower> ta
<magicaltrout> anything you have is current
<Suergally> Saw this post : http://www.pasteall.org/pic/105055 Would this be the OpenStack Charms Meeting, or not ? (also attending #ubuntu-meeting) Sorry If I am Late.
<lazyPower> Suergally that appears to be correct
<lazyPower> ddellav ^ can you confirm?
<ddellav> lazyPower Suergally yea, looks like it. gnuoy can confirm
<Suergally> lazyPower: ddellav Not sure about the details .. but I was in the 'meeting' for half an hour with no correspondance.
<lazyPower> ah good point, i see 5pm - i wonder if that calendar is UTC...
<Suergally> I was there from 5.30 pm so UTC or not - it is UTC irrelevant.
<Suergally> ddellav: gone are the days when we should have mis-billed calendar events - so can you confirm the iCal entry is correct or not, and possibly post something to correct that, cheers.
<Prabakaran> <Prabakaran> Hello Team, My sample charm and it is pending for long time on unknown state with the log  http://paste.ubuntu.com/19194830/ and code files are under this branch https://code.launchpad.net/~prabacha/charms/trusty/sampledatabase/devel  As per this reactive code i am not able to set the state as 'mysql-config.done'. Could some one help me on this issue?
<kwmonroe> hi Prabakaran, i'll take a look..i just deployed your layered charm and will dig into the mysql state issue.  it'll take me a while though.
<kwmonroe> hey cory_fu, remember that "config.x" states get removed sometimes?  suchvenu figured it out.. when leader-elected runs, it seems to clobber the config.x.
<kwmonroe> it's pretty easy to repro: http://paste.ubuntu.com/19289554/
<Suergally> ddellav: Did you get that or do you need more+ time ?
<ddellav> Suergally i do not have control over that calendar. perhaps gnuoy or lazyPower can make those changes
<Suergally> lazyPower: Did you get that message I gave some 15 minutes ago ?
<lazyPower> Suergally - Yes. I'm speaking with openstack charmers. You're continued patience is appreciated :)
<Suergally> lazyPower: What channel are they attending ? Cheers.
<lazyPower> Suergally - the meeting has moved both channel location and time/date. I don't have any further details at this time
<cory_fu> kwmonroe: Is the charm looking for config.changed or config.default/set ?  Because config.changed is documented to go away and the end of the hook, even if it's not handled due to other conditions.
 * Suergally kinda -doesn't know- who everyone is 'talking to' :(
<kwmonroe> cory_fu: http://bazaar.launchpad.net/~ibmcharmers/charms/trusty/layer-ibm-db2/trunk/view/head:/reactive/ibm-db2.sh#L528
<kwmonroe> config.set.X
<beisner> hi Suergally - apologies for the stale calendar entry.  that just changed as we became an official openstack project yesterday.  next meeting will be:  Monday July 24 at 17:00 UTC in #openstack-meeting
<Suergally> beisner: terrificco ! Can I have an I'Cal entry to add to my calendar off me google calendar thingy, then , please ?
<cory_fu> kwmonroe: I am quite surprised that the config.set state would drop off, but I would recommend removing lines 157 and 158 from layer:basic: https://github.com/juju-solutions/layer-basic/blob/master/lib/charms/layer/basic.py#L157
<cory_fu> See if that fixes it, by chance.
<kwmonroe> will do cory_fu
<beisner> Suergally, indeed we will update that, but it may not be updated yet today.
<Suergally> beisner: So I dont have to add anything ? I'm lost (?)
<beisner> Suergally, correction.  new channel location is set for #openstack-meeting-4
<beisner> Suergally, Monday July 24 at 17:00 UTC
<beisner> Suergally, but i can't update the ical yet so please take note of the time/place.
<Suergally> beisner: Can this be brought to the attention of the mailing-list, then ?#
<beisner> wow i'm winning with date calcs here.   Monday July *25* at 17:00 UTC
<Suergally> beisner: That's the same time as this meeting (security) http://www.pasteall.org/pic/105070 Or is that DoDo too ?
<Suergally> BRBack (coffee needed ;-)
<beisner> Suergally, it may very well be.   typically different audience and community.   the openstack project meeting schedules are the scheduling confines that openstack-charm meetings now follow.
<Suergally> beisner: That's a shame that they cross-match. Surely it's easier to have it an hour either side (?) 'just sayin
<kwmonroe> cory_fu: that worked
<cory_fu> That's very strange
<cory_fu> kwmonroe: Is there any chance that the leadership-elected hook in that particular charm is overriding the hook implementation from the base layer?
<Suergally> beisner: And 2ndly - that's not mentioned here yet : https://wiki.ubuntu.com/ServerTeam/OpenStackCharmsMeeting \or anywhere I can trace !
<kwmonroe> doesn't look like it cory_fu http://paste.ubuntu.com/19292199/
<beisner> Suergally, apologies there.   our challenge is to coordinate among 148 (as of now) other openstack recurring meetings.
<cory_fu> kwmonroe: I'm fine with removing those two lines, as they aren't ideal anyway, but maybe you could step through the leader-elected hook (specifically though init_config_states) to figure out why they weren't getting re-added?
<beisner> Suergally, rest assured, we are working on updating things following yesterday's change.
<Suergally> beisner: I think most of your users only follow the 'fridge' calendar :) In terms of wikis, google calendars and #channel-links to the aforementioned meetings.
<cory_fu> kwmonroe: I'm a bit concerned that they should have been re-added at the start of the leader-elected hook and if that happens to run before config-changed (can happen), then the states will get missed
<cory_fu> IOW, I'm concerned that there's some other bug that removing those lines is masking
<kwmonroe> ack cory_fu
<Suergally> beisner: How can I help or a/improve ?
<arosales> and I think the openstack charm dev/community docs are still a work in progress so feedback pull requests could be welcome there
<arosales> cargonza: do you have a link to the latest?
<kwmonroe> oh hold up cory_fu
<kwmonroe> this isn't right http://paste.ubuntu.com/19292199/ <-- that's not the leader elected from layer-basic
<kwmonroe> (there is no basic.init_config_states)
<beisner> Suergally, we've got folks on the necessary content updates.  it will not update today, but all areas will accurately point to the right place very soon.  thanks again for bringing it to our attention.
<cory_fu> kwmonroe: Right you are, my good man.  Some other layer must be overriding it
<kwmonroe> even money on the leadership layer
<kwmonroe> stuuuuuuuubbbb
<cory_fu> kwmonroe: That'd be my guess, too
<Suergally> beisner: No problem .. just thought you could point me to a mailing-list so we can talk about it (?)
<cory_fu> kwmonroe: Yep: https://git.launchpad.net/layer-leadership/tree/hooks/leader-elected
<kwmonroe> cory_fu: so is the best way forward for stub to remove those hooks and let the basic layer provide them, or sync those hooks with what's in layer basic?
<cargonza> arosales, which doc are you looking for?
<kwmonroe> i vote the former.. i don't see anything in there that's not covered by basic's leader-x hooks.
<cory_fu> kwmonroe: Yes.  Those files were put in the leadership layer before charm-tools created that hook, so they now need to be removed
<kwmonroe> roger that
<arosales> cargonza: the openstack charm dev doc
<cargonza> upstream doc: http://charm-guide.readthedocs.io/en/latest/
<beisner> cargonza, ah yes.  the issue here is we have two other locations with stale content pointing to the old meeting location and meeting time:   http://fridge.ubuntu.com/calendars & https://wiki.ubuntu.com/ServerTeam/OpenStackCharmsMeeting
<cargonza> ok have addressed both... I think. We'll get the cal updated asap.
<lazyPower> ooo  you guys grabbed some prime url real-estate with that one
<Suergally> cargonza: The details are to be pointed at the #openstack-meeting-4 #channels I presume ? Perhaps look-out for what else can be averted/binned.
<cargonza> ack, thx Suergally. we'll fix it asap
<Suergally> Cheers, where the juju mailing list ?
<Suergally> **where's the ....
<kwmonroe> stub: i learned lp git!  MP for your eyeballs at your convenience: https://code.launchpad.net/~kwmonroe/layer-leadership/+git/layer-leadership/+merge/299986
<bdx> hey whats up guys? Few questions concerning aws cloud network spaces
<bdx> is there anyway to make juju aware of pre-existing spaces ?
<bdx> or ehh
<bdx> pre-existing aws networks
<bdx> or can juju only create new spaces?
<kwmonroe> cory_fu: look ok? https://github.com/juju-solutions/interface-mysql-root/pull/1  prabakaran's deploy is g2g with this change
<cory_fu> kwmonroe: Apparently it's fine
<cory_fu> But yes, it also looks good to me
<cory_fu> Thanks, marcoceppi :
<cory_fu> :p
<kwmonroe> yowzer marcoceppi.. thanks!
<marcoceppi> sorry, I was going through my email, saw it, merged it
<lazyPower> #noragrets
<bdx> S.O.S. -> http://imghub.org/image/EyHX
<bdx> can someone take a look at what I'm doing wrong when adding my subnets ? I'm in the middle of a time crysis, and got stumped on this .... I just need to know the way!!!!
<marcoceppi> bdx: what are you doing currently? could you map out what you have for VPCs?
<marcoceppi> rick_h_ alexisb_ ^^ can we get some help from the networking side?
<alexisb_> marcoceppi, unfortunately most of our networking folks are out for the day, email may be best at this point
<alexisb_> but we can try
<alexisb_> thumper, you around?
<thumper> aye
<bdx> I have a feeling I'm not creating the spaces first ...
<alexisb_> can you take a look at bdx's sos and see if there is anything you can help with
 * thumper looks
<bdx> thumper: can I screen share w/you real quick?
<thumper> I'm not sure how helpful I'll be, but sure
<thumper> bdx: which version of juju?
<bdx> devel
<bdx> 2.0-beta11-trusty-amd64
<thumper> and aws?
<thumper> trying to use an existing vpc?
<bdx> ya
 * thumper takes a quick look at the code
<bdx> thumper: I see "juju add-subnet" and "juju add-space" to be the commands I need to get the vpc added as a space righ?
<thumper> I think when you bootstrap the aws controller, you need to specify the existing vpc there
<bdx> ooooh
<bdx> :-)
<bdx> go on ...
<thumper> vpc-id
<thumper> 		Description: "Use a specific AWS VPC ID (optional). When not specified, Juju requires a default VPC or EC2-Classic features to be available for the account/region.",
<bdx> Yes! where did you find that>??
<thumper> um... in the code
<bdx> shoot ...
<thumper> I wonder where it is documented for real users
<thumper> it is in the config docs for the ec2 provider
<magicaltrout> i've read that somewhere before
<magicaltrout> and i don't read the code :)
<thumper> I'm sure it is somewhere
<thumper> bdx: I *think* for aws, you can specify the subnets but it won't create them for you
<thumper> you still need to do that manually
<thumper> not sure on what level of discovery the ec2 provider has
<thumper> when dealing with existing vpcs
<thumper> bdx: when bootstrapping, the provider will check to see if the vpc is sufficient for juju's needs
<thumper> it does have a force option, but TBH not sure why one would want to force it to use a VPC it doesn't think is god
<thumper> good
<bdx> thumper: nice, ok  ... so the deal is, I need to provision some instances in a pre-existing vpc .... do I then need to bootstrap with that vpc-id?
<thumper> yes
<thumper> I believe so
<bdx> ahhh, I see
<bdx> trying now
<thumper> bdx: I do recall that there was a bug somewhere with beta 11 and aws
<thumper> something like us firewalling off the controller by mistake :)
<thumper> but only in particular circumstances
<thumper> you may or may not hit it :)
<bdx> thumper, bootstrap is underway
<bdx> in my vpc
<bdx> thank you, thank you, thank you
<thumper> no worries
<bdx> thumper: thanks for the heads up on ^^ too
<bdx> thanks team for the support!
<jose> beisner: if you ask the news team to update the fridge, I'm sure they'll be happy to (it's #ubuntu-news ;) )
<bdx> sos follow up -> http://imghub.org/image/W1EU :-)
#juju 2016-07-14
<lazyPower> bdx - is that a budding beats deployment i see there?
<marcoceppi> bdx: man, robi's a real roller coaster ;)
<bdx> `charm login` wont let me in!
<bdx> http://paste.ubuntu.com/1937809p6
<bdx> I've attempted logging in and out of the charmstore from my browser multiple times with the same creds
<bdx> I can successfully authenticate to the charmstore in my browser .... just not from the cli
<bdx> is this a known issue right now?
<magicaltrout> paste doesn't exist
<magicaltrout> whats the error bdx ?
<rick_h_> bdx: no known issues I know of atm
<magicaltrout> personally I'd just remove go-cookies and see what happens
<rick_h_> bdx: you said you've logged out and in on jujucharms.com successfully?
<bdx> magicaltrout: mybad - http://paste.ubuntu.com/1937809p6/
<bdx> rick_h_: yea
<rick_h_> uiteam ^
<bdx> magicaltrout: srry I didn't mention ... did that too
<rogpeppe> bdx: that paste doesn't work for me
<rogpeppe> bdx: (doesn't exist)
<bdx> wow
<bdx> hmm
<bdx> omp
<urulama> bdx: did you try first logging through jujucharms.com?
<bdx> yea
<urulama> bdx: that worked ok?
<urulama> bdx: which username was given to you?
<rogpeppe> bdx: without knowing what the error is, it's difficult to help
<bdx> urulama: yes ... I've logged in and out multiple times
<bdx> I'm grabbing it ... don't know what the deal was with that
<bdx1> http://paste.ubuntu.com/19378096/
<bdx> urulama: ^
<urulama> looking
<urulama> bdx: were you able to "charm login" before or is this your first try?
<bdx> urulama: I've been able to `charm login` all along
<magicaltrout> bdx out of interest are you charm login-ing on the same box as you've been using the browser to test login?
<bdx> no
<magicaltrout> you're not firewalled or something weird?
<urulama> bdx: ok. did you try deleting ~/.go-cookies and ~/.local/share/juju/store-usso-token ?
<urulama> after that, try charm login again
<urulama> and if that doesn't work, we'll have to fetch the logs :(
<bdx> magicaltrout: .... not that I know of ... hopefully to some degree though :P
<bdx> ooooh
<bdx> ~/.local/share/juju/store-usso-token
<bdx> I haven't touched that
<bdx> possibly I should?
<bdx> I'll remove it and retry
<urulama> remove it, might be something with your oauth token
<bdx> yea - I've removed my .go-cookies between login attempts
<bdx> ok
<bdx> omp
<bdx> that did it
<bdx> `rm ~/.local/share/juju/store-usso-token`
<urulama> cool
<bdx> awesome - thanks you guys
<bdx> should I file a bug for this?
<bdx> against charmstore-client
<urulama> bdx: please, if it's not too hard. we're aware of it, but you'll be able to track when we address it as well
<bdx> 4sure
<bdx> urulama: its being developed on gh? here -> https://github.com/juju/charmstore-client ?
<urulama> bdx: yes
<bdx> nice
<bdx> done
<bdx> urulama: thx
<natefinch> marcoceppi: is juju.fail borken?
<natefinch> marcoceppi: nvm... refresh finally went through.  Not sure what was up
<urulama> bdx: thanks
<bdx> np
<bdx1> looking at interface-elasticsearch .... here https://github.com/juju-solutions/interface-elasticsearch/blob/master/requires.py#L22-28
<bdx1> if I react @when 'elasticsearch.available' ....
<bdx1> like so
<bdx1> http://paste.ubuntu.com/19384096/
<bdx1> as long as nginx.available, and kibana.initialized are true
<bdx1> would my hook fire every time a new elastic instance is added to the cluster
<bdx1> even if elasticsearch.available is already true
<bdx1> because the state would be set *again* by the code in interface-elastic
<bdx1> or would my function not execute, because the 'elasticsearch.available' is already set?
<lazyPower> bdx1 - it will execute every time. see the beats-base layer for examples. all the generics are there https://github.com/juju-solutions/layer-beats-base
<bdx1> oh sweet, thats exactly what I was looking for
<bdx1> lazyPower: thx
<bodie__> Hello all.  Anyone know when Dimiter will be around?
<bodie__> I spoke to him at Gophercon and wanted to sync up, but my IRC client is giving me grief.  Need to find one that works well on Mac.
<redir> bodie__: I think he is on holiday for a bit.
<lazyPower> np
<lazyPower> bodie__ - i've had good luck with quassel
<lazyPower> bodie__ http://quassel-irc.org/
<bodie__> Thanks lazyPower
<lazyPower> anytime. long time no see :)
<lazyPower> how are you?
<Prabakaran> Hello kwmonroe, Is it possible for me to get root user password using mysql-root interface?
<kwmonroe> Prabakaran: you mean the root user on the system itself?
<Prabakaran> kwnonroe, i am asking this to log in as root MySQL User at the MySQL console
<Prabakaran> *kwmonroe
<kwmonroe> ah -- i'm not sure about the mysql root user password.  i don't think that data is provided on the relation
<kwmonroe> but i thought the user that gets generated when relating via mysql-root had all permissions
<Prabakaran> <kwmonroe> in mysql charm we can get root password by running mysql -u root -p`sudo cat /var/lib/mysql/mysql.passwd`
<Prabakaran> i want this to happen using mysql-root interface
<Prabakaran> is it possible
<kwmonroe> hmm.. i'm sure it's possible, but i don't know if that's advised.  there was probably a reason why the mysql charm author didn't want the root password passed on the relation
<kwmonroe> what are you trying to do that can't be done with the auto-generated credentials?
<Prabakaran> I just tested sampledatabase charm ... i was not able to grant access to my mysql database which i have created because of the user permission.
<kwmonroe> ah, sorry Prabakaran, i don't know enough about mysql permissions to be of much help.
<Prabakaran> i am getting error while runnning GRANT command http://pastebin.ubuntu.com/19389315/
<Prabakaran> My product needs the database which is created in the remote mysql machine. To make that particular database accessible for the connecting nodes we are giving the GRANT command ..
<Prabakaran> As per this log http://pastebin.ubuntu.com/19389315/ whatever user i am getting from mysql-root doesnt have all permission
<Prabakaran> i was just thinking to do all these as a root user so is there a possiblity of getting root password for mysql charm thru mysql-root interface
<kwmonroe> marcoceppi: ^^ should the user from a mysql-root relation be able to grant perms?
<aisrael> Prabakaran:
<aisrael> Wrong window. But Prabakaran , I think the mysql-root relation should allow you to run grant perms, since it's intended as an administrative interface to the database. Usually, though, using the provided credentials by the mysql interface is sufficient for a charm.
<Prabakaran> <aisrael>So how would i resolved this ? because as per my requirement i need to use mysql-root...
<Prabakaran> aisrael: As per this log http://pastebin.ubuntu.com/19389315/ whatever user i am getting from mysql-root doesnt have all permission
<aisrael> Is this a charm that needs to access the charm created by a different charm?
<aisrael> sorry, A charm trying to access the database created by a different charm?
<aisrael> In other words, are you trying to use the same database from different charms?
<Prabakaran> ya
<aisrael> Prabakaran: Ok. What I'd suggest is creating a relation between your two charms, and the charm that created the database can share it's credentials with the charm that also needs to access it.
<Prabakaran> aisrael: i didnt get your suggestion. As far as i understood i have one charm ie A and also have mysql charm.. Both are installed in the different machine. now using this mysql-root interface i need to create a product specific database on mysql charm. I am doing this task from being in the Charm A machine. Here actual scenario is if any peers of Charm A also needs the same database. That is why we are giving GRANT permission for t
<Prabakaran> But now the problem is as per this log http://pastebin.ubuntu.com/19389315/ whatever user i am getting from mysql-root doesnt have all permission to grant access to the database
<bdx> can someone merge this for me -> https://code.launchpad.net/~jamesbeedy/charms/trusty/wordpress/apache2_trusty_fix
<bdx> oops .. this -> https://code.launchpad.net/~jamesbeedy/charms/trusty/wordpress/apache2_trusty_fix/+merge/297720
<bdx> marcoceppi, jcastro, rich_h_: the charm partner email for July has broken links to the newsletter :-(
<bdx> https://insights.ubuntu.com/2016/07/12/jujunewsletterjuly/?mkt_tok=eyJpIjoiT1dVNE9EUmtaR1ptTm1VeiIsInQiOiJvTzhON2pwb25DUDZNenZyTGMzMDZZS3l6NHNIVFhvbjdHWkdjbEJKR1hYQnJKQmNEeFVXb1JhTVhQWFdzKzdyRmRmUzhCQWxzcytMaTBoRGRNY0IxNUdmQXlpOFh6N2ZDY0c3WjkzMk1LMD0ifQ%3D%3D
<Prabakaran> aisrael: as you said if i share creadentials also i hope granting the permission for the database is not possible
<Prabakaran> <kwmonroe> marcoceppi aisrael: if you know any solution or alternative for my query please mail me .
<Fugaa> What's the conventional way of reconnecting with a juju controller? Say I lose my machine where I deployed some services to google cloud. I have access to (and have added to juju) the original credentials used.
<Fugaa> Ah, bootstrapping with the original credentials was successful. I see the old controller machine is still running. I haven't tested this, but with a new controller the old services won't be picked up.
<cory_fu> negronjl: Are you around, by chance?
#juju 2016-07-15
<kjackal> hello juju world
<eeemil> Is juju boostrap (2.0-beta11-xenial-amd64) ignoring the --metadata-source flag? Debug prints tells nothing about searching for metadata in my specified location. (And I have no idea how it should look like, as I've yet to experience a working Juju on openstack deployment...)
<urulama> jamespage: hey, is nova-networking being dropped in openstack N?
<mramm> jamespage: that is vs neutron API's
<jamespage> urulama, mramm: not sure - its been discussed for 5 cycles now
<urulama> jamespage: ok, asking as juju openstack provider supports nova-networking API only and that will be a big change :)
<jose> marcoceppi, tvansteenburgh: looks like the revq is not updating again...
<eeemil> Can somebody please confirm if --metadata-source flag is ignored? As I've said: I have no way of verifying. It could be that the metadata has bean read without being reported as debug-info, but that the metadata is misconfigured for my cloud.
<stub> gnuoy: You are maintainer of the nrpe charm. Do you want that, or should I switch it to a team? I've got a branch making it multi-series trusty/xenial so there is paperwork to do, pushing to a new home, promulgation etc.
<gnuoy> stub, I would love it to be a team
<stub> gnuoy: ~openstack-charmers and ~canonical-sysadmins, or more restricted?
<gnuoy> stub,  I think  ~openstack-charmers and ~canonical-sysadmins makes sense
<stub> gnuoy: ok. I'll set things up on Launchpad if thats ok. I've already done a few similar.
<gnuoy> stub, that would be great, thank you
<stub> marcoceppi: I took https://code.launchpad.net/~stub/charms/trusty/nrpe/py3/+merge/300153, migrated it to git at https://launchpad.net/nrpe-charm, and published it at cs:~nrpe-charmers/nrpe.
<stub> or whoever else is doing promulgations these days
<bdx> magicaltrout: sup
<Prabakaran> Hello kwnonroe, This is regarding mysql-root interface permission issue while granting the access to the database.  I explored and found the actual cause of this issue. It is because of the user which was created by the mysql charm. If you modify the sql query which is used to create a mysql user at the mysql charm side as mentioned below
<Prabakaran> 1, CREATE USER '<Mysql user name>'@'localhost' IDENTIFIED BY 'some_pass'; 2, GRANT ALL PRIVILEGES ON *.* TO '< Mysql user name>'@'localhost' WITH GRANT OPTION;
<Prabakaran> Here the second query which I have mentioned above uses WITH GRANT OPTION will grants the permission. If Mysql charm give a user created for us using the above query, we can use this via mysql-root interface and it will not cause any error while running GRANT command. Please check and advise on this.
<Prabakaran> kwmonroe:
<kwmonroe> sounds like a bug Prabakaran.. i think it's reasonable to expect the mysql-root relation to create a user with those grant capabilities.  would you please raise an issue here? https://github.com/marcoceppi/charm-mysql/issues
<Prabakaran> kwmonroe: ya sure
<jcastro> kwmonroe: or cory_fu: either of you coming to office hours today?
<jcastro> rick_h_: how about you?
<rick_h_> jcastro: otp atm, probably not sorry
<rick_h_> didn't put it on my calendar as I should have
<jcastro> cherylj: how about you?
<kwmonroe> yeah jcastro, cory_fu, petevg, and me are planning to attend
<jcastro> excellent!
<jcastro> ~30 minutes until office hours!
<jcastro> jose: around?
<jose> jcastro: what's up
<jcastro> https://hangouts.google.com/hangouts/_/laekid3blfbgvblxsh3ap2bgeme
<jcastro> I updated ubuntuonair, and didn't break it!
<jose> jcastro: I'm in class right now, sorry :/
<jcastro> anyone who wants to join the hangout, there's the URL ^^^^
<jose> OMG THAT'S AMAZING
<magicaltrout> classes are for wimps!
 * jose gives jcastro a box of chocolates for not breaking uoa
<jcastro> if you just want to follow along, just go to http://ubuntuonair.com
<jcastro> or just wait for it to hit youtube.com/jujucharms in a few hours
<jcastro> cherylj: you got time to join us today?
<jose> I'll listen in - got headphones \o/
<jcastro> listen to your teacher, I don't want to be responsible for you failing out of school
 * magicaltrout failed uni many times
<magicaltrout> its fine!
<jose> lol it's a practical class, designing atm
<jcastro> cory_fu: https://hangouts.google.com/hangouts/_/laekid3blfbgvblxsh3ap2bgeme
<tsimonq2> :O
<cory_fu> kwmonroe, petevg: ^
<jose> jcastro: starting any time soon?
<tsimonq2> ^
<kwmonroe> we're waiting on magicaltrout
<magicaltrout> :P
<magicaltrout> i'm looking at the same blank screen jose is looking at :)
<kwmonroe> we're live!
<cory_fu> http://summit.juju.solutions/
<magicaltrout> i might rename kwmonroe "shadow"
<magicaltrout> like a comic book character
<magicaltrout> just not as special
<kwmonroe> i'm witness protection kevin
<magicaltrout> lol
<jose> why is there double jorge? one jorge is enough
<tsimonq2> XD
<tsimonq2> jcastro: your icon is showing, not your face
<jose> thereÂ´s double, though
<jose> puppet/chef on top of a bash juju charm!
<jose> \o/
<tsimonq2> jcastro: no more double jcastro :P
<jose> lol
<cory_fu> https://github.com/apache/bigtop
<jose> your video is fine now
<magicaltrout> I have a Q for marcoceppi..... do you guys have an 1.x to 2.x upgrade path yet for 2.0 GA?
<magicaltrout> its a good job i have beer to get me through 30 minutes like that
<rick_h_> magicaltrout: no, we don't have a full path and won't for 2.0GA it'll come afterwards.
<rick_h_> magicaltrout: we've got bits but to put it together into a smooth story is going to be a chunk of work considering all permutations/combinations
<magicaltrout> rick_h_: thanks, to be honest I knew the answer, but marcoceppi was talking about beta releases etc, so I figured it was worth getting a Q into office hours
<magicaltrout> although the answer these days is more upbeat than when we discussed it at apachecon, and at that point it was more like "erm, we're not sure if/how that would work" :)
<rick_h_> magicaltrout: oh sorry, yea gotcha
 * rick_h_ is in half a dozen things and didn't htink of office hours
<rick_h_> lol
<magicaltrout> hehe, no problem rick_h_ :)
<magicaltrout> kwmonroe: i'll be annoying you next week hopefully to finish off that PDI stuff
<magicaltrout> as i'm away I'll turn into that person who just codes for 18 hours a day
<kwmonroe> i like that person
<tsimonq2> heh, watching at 1.25 speed to catch up :D
<tsimonq2> Juju snap? :D
<cholcombe> my juju rust library is the most popular library i've written so far.  nearly 900 downloads so far :)
<tsimonq2> \o/
<magicaltrout> never tried rust, cool cholcombe
<magicaltrout> first time for everything
<cholcombe> magicaltrout, ;)
<bdx> hey nice work on charm-ceph-proxy, you guy!
<bdx> that is awesome!
<bdx> magicaltrout: have you seen that^?
<bdx> it accomplishes something similar to what you are trying to do I think
<beisner> bdx, if your ears were burning, it's because in the review of that this week i reminisced one of your first questions - "i've got this existing ceph cluster..."  :-)   there's your baby.
<beisner> bdx, that's hot off the press from icey
<bdx> beisner, icey: I'm speechless
<bdx> beisner, icey: sooo awesome
<bdx> thats all
<bdx> but also, the implementation is so smart! a great way to handle pre-existing ceph!!!
<bdx> this is so useful, and opens up a whole new world of possibilities for those deploying ceph w/juju!
<bdx> I owe you guys a round at the next summit
<bdx> you guys should try and blow that one out on the marketing side ..... if only the masses could understand how unique/useful that really is
<bdx> It will be an even bigger deal when the lxd puts its ceph wings on
<bdx> :-)
#juju 2016-07-17
<magicaltrout> So.... I walk into a snaps meeting tonight and say I do a bunch of stuff with Juju and I get people looking at me like I just spat in their face.... do you guys not get on ? :)
#juju 2017-07-10
<Neepu> Hi, im trying to setup openstack with conjure-up, but have trouble because of proxy settings. Can anyone please help me out?
<Neepu> Do i need to create a juju controller with juju bootstrap --config http-proxy=....?
<stokachu> Neepu: conjure-up --help, there are options to enter proxy
<cnf> Neepu: proxies are a pain
<cnf> Neepu: if you set http-proxy, make sure the proxy can access all openstack services or your openstack won't work
<Neepu> right ty for quick answers
<Neepu> Hm.. that didn't work out. Still recieving "2017-07-10 14:04:06,492 [ERROR] conjure-up/openstack-novalxd - common.py:36 - Error bootstrapping controller: ['ERROR Get https://10.19.53.1:40179/1.0: Service Unavailable']"
<cnf> what needs a prozy?
<cnf> proxy
<Neepu> the deployment stage, juju bootstrapper
<cnf> so for the juju command to connect to the cloud provider?
<Neepu> I was assuming the IP was external, but it might be locally
<Neepu> but i think my HW is capable of virtualization hmm
<cnf> Neepu: because juju bootstrap --config http-proxy supplies proxy settings to the controller
<cnf> NOT to your juju command
<Neepu> i ended up using conjure-up --http-proxy
<cnf> so you need export http-proxy="http://proxyip:port"; juju bootstrap...
<Neepu> https://pastebin.com/DvYnkZHR
<Neepu> does this make any sense, for anyone?
<Neepu> Hi. Can anyone please help me setup conjure-up openstack? I'm having trouble connecting to my juju controller. It's stuck connecting.
<stokachu> Neepu: what does `conjure-up.lxc list` show
<Neepu> nothing, my .cache/conjure-up/conjure-up.log says this:
<Neepu> connecting to LXD remote "remote": "10.191.151.1:41641"', 'ERROR Get https://10.191.151.1:41641/1.0: Service Unavailable', '15:29:04 DEBUG cmd supercommand.go:459 error stack: ', 'Get https://10.191.151.1:41641/1.0: Service Unavailable', 'github.com/juju/juju/tools/lxdclient/client.go:278:
<stokachu> Neepu: so you dont have any containers running, meaning your controller is not available, can you `rm -rf ~/.local/share/juju`
<stokachu> and retry conjure-up openstack
<Neepu> again.. stuck connecting to LXD remote "remote": "10.191.151.1:41641" :(. I'm running behind a proxy, but i assume that doesn't matter given that the IP is the container IP (on a All-in-one setup)
<Neepu> https://pastebin.com/x6mmUqj1
<stokachu> Neepu: i added some more lxd fixes in edge, can you do `sudo snap refresh conjure-up --edge`, and then re-try?
<Neepu> will do sec
<Neepu> same error
<Neepu> I'm running this inside a virtual server, would that make any difference?
<stokachu> Neepu: shouldnt, whats the output of `conjure-up.lxc config show`; `conjure-up.lxc network list`; `ip addr`
<Neepu> https://pastebin.com/4iw2aBwn
<stokachu> ok that all looks fine
<stokachu> Neepu: what about just running `conjure-up.lxc launch ubuntu:16.04 test1`
<Neepu> error: Get https://cloud-images.ubuntu.com/releases/streams/v1/index.json: lookup cloud-images.ubuntu.com on 10.76.1.10:53: read udp 10.76.1.10:55334->10.76.1.10:53: read: connection refused
<stokachu> ok
<stokachu> export HTTP_PROXY=http://193.71.180.81:80; export HTTPS_PROXY=http://193.71.180.81:80; export http_proxy=http://193.71.180.81:80; export https_proxy=http://193.71.180.81:80
<stokachu> Neepu: ^
<Neepu> mi missing HTTPS_PROXY
<Neepu> im* might be it.. :-p
<stokachu> Neepu: that worked?
<Neepu> going to reboot and see whether that helps. if it does, your help is very appreciated
<stokachu> ok
<Neepu> written the vars to my /etc/enviroment
<stokachu> ok cool
<Neepu> https://pastebin.com/ydCv6nVY
<Neepu> no effect :(
<Neepu> but given that i get errors at even this, i assume my proxy is at fault?
<stokachu> Neepu: yea it's some sort of proxy error
<stokachu> Neepu: not specifically a lxd/conjure-up/juju error
<Neepu> hmm
<Neepu> dns requests works fine when using curl -v etc
<Neepu> but conjure-up doesn't
<Neepu> regardless of proxy settings set
<stokachu> well neither does lxc
<Neepu> aye
<Neepu> just tried lxc config set core.proxy_http http://193.71.180.81
<cnf> how do i use juju to replace a broken machine? o,O
<triccardisystran> kjackal: ping regarding https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/286
<cory_fu> stub, stokachu, tvansteenburgh: https://code.launchpad.net/~johnsca/juju-wait/+git/juju-wait/+merge/327122
<kjackal> thank you  triccardisystran you will hear from us soon
#juju 2017-07-11
<blr> hey there, does anyone have any advice for debugging actions? When my action status is 'failed', I can see a line in my debug-log that reads "Traceback", however there's no traceback.
<cnf> morning
<Neepu> Hi @stokachu i had trouble with proxy and juju bootstrapper yesterday. I had trouble with even lauching test lxd containers with ubuntu, but resolved that today. Any chance you can help me today?
<Neepu> Given that lxd now works, i assume juju is the remaining half.
<ybaumy> haying a very strange problem
<ybaumy> since the last update i loose connections in juju status from services and machines
<ybaumy> status is either unknown or down
<ybaumy> but when i log onto openstack
<ybaumy> everything seems to be working
<ybaumy> anyone had this too?
<ybaumy> root@openstacksa2:~/kube# juju version
<ybaumy> 2.2.1-xenial-amd64
<ybaumy> agent status is lost
<wpk> jam: ^^^
<ybaumy> ah and when i restart the whole machines they reconnect agents and everything is green for a day or so
<wpk> ybaumy: do you have controllers in HA setup?
<ybaumy> wpk: yes
<ybaumy> Machine  State    DNS            Inst id  Series  AZ       Message
<ybaumy> 0        down     10.14.162.72   mt4cyg   xenial  default  Deployed
<ybaumy> 1        down     10.14.162.78   g6kfkb   xenial  default  Deployed
<ybaumy> 2        started  10.14.151.121  w4qxnp   xenial  default  Deployed
<ybaumy> ic
<ybaumy> ;)
<ybaumy> somehow my controllers seem to be  dead
<ybaumy> but machines are running
<ybaumy> and strangely they seem to be on different subnets
<ybaumy> hmm
<ybaumy> they have the same vlan
<ybaumy> i think at least
<jam> ybaumy: bug 1703526 is tracking this issue
<mup> Bug #1703526: agent lost, even though agents are still responding <juju:Triaged by jameinel> <juju 2.2:Triaged by jameinel> <https://launchpad.net/bugs/1703526>
<jam> ybaumy: is it possible for you to add some debugging info to that bug?
<ybaumy> jam: of course .. what kind of information should i provide
<ybaumy> there also seems to be a problem with maas dhcp
<ybaumy> because of the different subnets
<jam> ybaumy: so doing: juju model-config -m controller logging-config="<root>=INFO;juju.state.presence=TRACE" and then saving a few minutes of "juju debug-log -m controller" output would probably be useful
<ybaumy> but those vlans are interconnected
<ybaumy> so connections are possible
<ybaumy> jam: will do
<jam> ybaumy: from what we can tell, all the agents are connected, its just that our 'Ping to keep alive' logic is wrong
<jam> so we start reporting 'agent is lost' even though it is happily responding to requests
<ybaumy> jam: but i will have to wait for now since i restarted all machines like 30 minutes ago. the error is not yet happening
<ybaumy> jam: or doesnt it matter
<jam> ybaumy: well, maybe data-from-now and then data-from-when-it-happens will be useful for us to track what's going on
<jam> it can be useful to see the delta
<ybaumy> jam: how much data is generated in a day when trace is on?
<jam> ybaumy: well, every ping from every agent gets a line in the log file
<jam> and we ping every 20s or so
<jam> (and there are some other bits of info)
<wpk> ybaumy: it was working on 2.2.0 without problems?
<jam> and there is a line every second from PingBatcher about how much stuff it had to write out
<ybaumy> wpk: yes
<jam> so, its fairly noisy
<ybaumy> jam: well then i will attach a volume from my nas in order to store the data
<ybaumy> i dont have that much space on OS
<jam> ybaumy: napkin math says about 500MB
<jam> ybaumy: but I don't think we need the entire time
<jam> ybaumy: if you could do say 30min now, and then 30min tomorrow might be sufficient
<ybaumy> ok
<jam> or even 10min or so now, and then 10min when you see the issue present itself
<ybaumy> jam: last question how to turn loggin to default after trace was enabled
<jam> ybaumy: default logging is logging-config="<root>=WARNING" I believe
<jam> (though we'd *like* it to be INFO)
<ybaumy> jam: ok
<ybaumy> but that with the IP addresses is also very very strange
<ybaumy> 10.14.151 vlan is 500 ... and 10.14.162 is vlan 503
<ybaumy> normally there shouldnt be a conflict or addresses from on net in the other one
<ybaumy> never seen this until now on the juju controllers
<ybaumy> hmm where does it get the vlan 503 from
<ybaumy> i dont get it
<jam> ybaumy: generally we get the vlan ids from the MAAS config
<ybaumy> hmm
<ybaumy> jam: i know it must be maas who is responsible for this
<ybaumy> jam: but i dont see the error. its just the first 2 controller nodes who are in the wrong subnet
* rick_h changed the topic of #juju to: STATUS: charmstore is currently experiencing errors, the team is correcting | #juju Juju as a Service Beta now available at https://jujucharms.com/jaas | https://review.jujucharms.com/ | https://jujucharms.com/docs/ | http://goo.gl/MsNu4I || https://www.youtube.com/c/jujucharms
<ak_dev> hello, seems that the charm store is down, says service unavailable
<ak_dev> while deploying
<ak_dev> same while searching for a charm on web
<ak_dev> ERROR cannot deploy bundle: cannot resolve URL "cs:~containers/easyrsa-12": cannot resolve charm URL "cs:~containers/xenial/easyrsa-12": cannot get "/~containers/xenial/easyrsa-12/meta/any?include=id&include=supported-series&include=published": cannot unmarshal error response "<html><body><h1>503 Service Unavailable</h1>\nNo server is available to handle this request.\n</body></html>\n": invalid character '<' looking for
<ak_dev> beginning of value
<ak_dev> ^^ error
<rick_h> ak_dev: there's a current outage the team is chasing.
<ak_dev> oh okay cool :-)
<rick_h> ak_dev: will keep the topic up to date and update on twitter as we get things back and going. https://twitter.com/jujuui
<ak_dev> Okay! looking out for it, thanks
<rick_h> np, apologies for the unexpected issue
* rick_h changed the topic of #juju to: Juju as a Service Beta now available at https://jujucharms.com/jaas | https://review.jujucharms.com/ | https://jujucharms.com/docs/ | http://goo.gl/MsNu4I || https://www.youtube.com/c/jujucharms
<rick_h> ak_dev: should be back now
<ak_dev> Hey thanks, will check soon :-)
<cnf> hmz
<cnf> openstack with juju is torture
<ybaumy> cnf: i feel you
<cnf> what a load of bs
<ybaumy> im already using for production redhat
<ybaumy> im testing suse currently
<cnf> we are in RFI rounds
<cnf> but canonical is looking unlikeley atm
<ybaumy> whats RFI if i may ask?
<cnf> Request For Information
<ybaumy> ah ok i thought so.
<ybaumy> cnf: i only had problems with juju with scale out
<ybaumy> cnf: and other stuff
<cnf> redhat and mirantis had a strong story, canonical next week will really have to step up.
<ybaumy> cnf: maybe im too stupid but os-charmers should put out a documentation out IMO
<cnf> i have had nothing but trouble with juju / charms myself :(
<ybaumy> cnf: im a ubuntu guy normally but this just didnt work out
<cnf> "Placement API service is not responding" is what i'm stuck at, atm
<cnf> ybaumy: yeah, i'm thinking the same atm
<ybaumy> cnf: im using juju and openstack at home for personal training but thats all.
<cnf> uhu
<ybaumy> at work i also moved from maas to https://theforeman.org
<cnf> maas i do rather like
<ybaumy> well do many bugs that came up and was tired getting them fixed. currently i have a bug open in relation to juju and im waiting now over a week for response. i  mean how can i work with something like that
<cnf> oh yeah, juju is just tiresome
<kwmonroe> hey tvansteenburgh, any objection to a PR that turns down the noise on nvidia-cuda?  the -x is making a big haystack in my logs:  https://github.com/juju-solutions/layer-nvidia-cuda/blob/master/reactive/cuda.sh#L2
<ybaumy> i like it
<cnf> maas is much quicker in reacting and fixing
<ybaumy> but ...
<tvansteenburgh> kwmonroe: no objection
<ybaumy> i found the integration of chef and puppet with foreman very useful
<cnf> hmz, what the hell is the problem with this BS >,<
<beisner_> hi cnf ybaumy - are there specific issues that you're running into with openstack charms?
<cnf> tons, atm my compute nodes apparently can't talk to the placement API
<ybaumy> beisner_: the reason i switched from juju os-charms to redhat cloud was scale out/down and HA. i had problems adding nodes, removing nodes from the config. then HA setup from the charms should be default. i had problems with mysql HA and much more other stuff.
<ybaumy> ybaumy: i must say i put in a lot of work to get it to run. but then there is no piece of good documentation .. here a piece in the net then go there to find something out...
<ybaumy> beisner_: and so on. i would really like to give it another chance but in the end its management who says ok this is useful or not
<cnf> all i get atm is "Placement API service is not responding", and I can't figure out why
<cnf> ybaumy: it's a mess
<beisner_> interesting.  appreciate the input.  these things are in circulation in production in lots of places, perhaps there are configuration issues which might be more clear with more docs.
<ybaumy> beisner_: and in my presentation i had problem with scale out and they said ok how should this work in production if not in the a presenation
<beisner_> LP bug pointers with logs are most helpful in these scenarios
<cnf> in my experience, when something goes wrong with a juju deploy, you are on your own figureing out what went wrong
<ybaumy> beisner_: and that was it. management said the project is dead and i had to switch to redhat and im happy with it
<cnf> well, canonical RFI presentation next week, we'll see what they say
<beisner_> sorry to hear that didn't work out for you.  if there are specific technical issues that need attention, please do raise a bug and ping here or on #openstack-charms
<ybaumy> beisner_: i will. im still using it at home only though but at least i having giving up on it
<cnf> it's not the most active channel during european time
<ybaumy> cnf: true CEST its like dead
<beisner_> if there is already a canonical person working with you, i'd be happy to help connect people.  lmk in a priv msg if so.
<beisner_> but also, LP bugs are how issues are raised/tracked/prioritized with the charms.
<cnf> beisner_: i find my issues take weeks if not longer to even get looked at
<cnf> i don't bother anymore
<ybaumy> the thing is .. if only one person has a bug or problem attention is not good ..
 * D4RKS1D3 hi!
<beisner_> if there is a specific bug or issue, please holler here with a link.  thank you.
<cnf> right now, i just want a working openstack
<cnf> never gotten to a functional openstack with juju
<cnf> right, i'm done
<cnf> i'll look at it more tomorrow
<ybaumy> https://bugs.launchpad.net/maas/+bug/1666521 this is my maas bug .. but related to juju ... no response since 4th of july
<mup> Bug #1666521: MAAS does not detect RAM in newly commissioned VMWARE VM's <MAAS:Incomplete> <https://launchpad.net/bugs/1666521>
<ybaumy> there is a workaround but its just plain annoying
<cnf> you are using MaaS to manage vmware vm's? o,O
<ybaumy> then  bug 1703526
<mup> Bug #1703526: agent lost, even though agents are still responding <juju:Triaged by jameinel> <juju 2.2:Triaged by jameinel> <https://launchpad.net/bugs/1703526>
<ybaumy> im still collecting logs here
<cnf> anyway, i'm going home
<cnf> enough frustration for one day
<ybaumy> cnf: bye good luck with your  setu
<ybaumy> p
<ybaumy> beisner_: i will submit my openstack issues this week. i will collect my problems im haying with the charm setup
<ybaumy> to be honest without jamespage's help i would have gotten nowhere
<julen> Hi there!
<julen> I got stuck trying to bootstrap juju with MaaS
<julen> from the juju command line I get the error:
<julen> ERROR unable to contact api server after 1 attempts: unable to connect to API: Forbidden
<ybaumy> did you juju add-cloud .. and add credentials correctly?
<ybaumy> julen: you have to add the api key
<julen> ybaumy, I think I did that already...
<ybaumy> julen: the error message points that you didnt but im not the expert here
<julen> while doing "juju add-cloud"
<ybaumy> julen: you need to provide username and api key
<ybaumy> root@maas:~# cat .local/share/juju/credentials.yaml
<ybaumy> credentials:
<ybaumy>   homemaas:
<ybaumy>     baum:
<ybaumy>       auth-type: oauth1
<ybaumy>       maas-oauth:
<ybaumy> this is a example of the credentials file
<ybaumy> maas-oauth: <apikey>
<ybaumy> i didnt paste that
<julen> hmm... so I have to create the credentials.yaml file manually?
<ybaumy> julen: no normally not but you can check the file if its correct
<julen> and, it should be generated during bootstrap, right?
<ybaumy> no during add-cloud
<julen> oh! .. true.. yes
<ybaumy> you can always make juju add-credential
<julen> well... I got a little confused. Sure, I have the credentials file, what I was missing is the old "environment.yaml" file, but I think that it should not be there in the newer versions
<julen> and the credentials file does look like your example
<ybaumy> julen: ok
<ybaumy> hmm
<ybaumy> did you enter the enpoint correctly
<ybaumy> endpoint: http://10.14.151.4/MAAS in ~/.local/share/juju# cat clouds.yaml
<julen> and the key string on the credentials file does match the one on the "admin"  site or the "maas apikey --username admin"
<julen> ybaumy: I think so... http://192.168.122.139:5240/MAAS
<julen> I also tried without the port, with the same result
<ybaumy> well that looks good
<julen> the only clue I get from the juju instance is, on the /var/log/juju/logsink.log
<julen> machine-0 2017-07-11 16:09:56 DEBUG juju.apiserver.logsink logsink.go:205 logsink receive error: websocket: close 1006 (abnormal closure): unexpected EOF
<ybaumy> well here you have to ask the developers  then
<ybaumy> if nobody answers here open up a bug report
<ybaumy> sorry
<julen> I'll try... but the problem is, that I don't even know if it is a bug. Probably I'm doing something wrong, but it's been already a few days, and I can't manage to work around it
<ybaumy> julen: you can also write to the mailing list
<julen> uff... too many mailing lists already... I'll try here first
<ybaumy> good luck
<julen> beisner, beisner_, jamespage? any idea about where would I look?
<julen> ybaumy: thanks :)
<cnf> aaand home
<Budgie^Smore> o/ juju world
<julen> The juju-gui seems to get stuck while trying to "Deploy changes". The "Choose a cloud to deploy to" dialog has the circle spinning.
<julen> I probably has something to do with the http-proxy. Isn't there a way to configure the juju-gui to work properly behind a proxy?
<julen> I didn't find anything on the config section, and the server does have already the http/s/no_proxy variables set on /etc/environment
<tvansteenburgh> hatch ^
<julen> (I mean the server/instance running the juju-gui)
<hatch> julen what version of Juju are you using?
<hatch> thanks for the ping tvansteenburgh
 * tvansteenburgh waves
<julen> hatch: juju  2.2.1
<hatch> julen ok and are you using the GUI charm, or the one that ships with Juju?
<hatch> ala `juju gui`
<julen> the juju-gui on a MaaS instance
<hatch> julen in the top right of the GUI there should be a circle with a question mark in it, can you click there and then click "Keyboard Shortcuts" it'll tell you the version of the GUI
<julen> on the top right of my juju-gui there is only "search store" and "Logout"
<hatch> ok then the version of the GUI you're using is very old
<hatch> you'll want to run the one that ships with Juju and not a charm
<hatch> you can get the path to that by running `juju gui` in the cli
<julen> GUI 2.7.4
<hatch> and does that version work? It will have displayed a URL and a u/p
<julen> yes, that's the one I am logged into
<hatch> hmm
<julen> but the version 2.7.4 is at least relatively recent.. isn't it?
<hatch> it's the current release yes
<hatch> which does not have Logout in the top right :)
<rick_h> hatch: julen if the GUI is on a MAAS and the controller needs a proxy to get out it might not be configured in Juju yet causing thigns like add-charm to fail to get the charms from the store?
<julen> I belive it has something to do with the proxy again... It has been making me crazy
<rick_h> julen: have you tried to see if you can juju deploy from the CLI?
<rick_h> julen: and what are you looking to deploy?
<hatch> rick_h that may very well be - but the GUI that julen is using is quite old - so trying to figure out why it's not running 2.7.4 as the CLI states
<julen> juju deploy did work for the juju-gui
<hatch> oh
<rick_h> hatch: :)
<hatch> so then you're not connected to the one from the CLI
<julen> I just wanted to test the openstack charm
<hatch> julen from the CLI when you type `juju gui` it'll print a URL and a username/password - visit the url listed there and log in using the credentials provided
<julen> but the instance running the juju-gui does have the http/s/no-proxy variables properly set in /etc/environment...
<hatch> you can also run `juju remove-application juju-gui` since that version is not supported on the Juju 2   you have
<julen> hatch: Allright! this looks better! :D
<julen> now I seem to have the GUI you mentioned
<hatch> haha there we go!
<hatch> now can you please re-try what you were doing before to see if it's still not working
<julen> for some reason, I just went to the plain IP, without the port and the rest
<hatch> no problem at all
<julen> hatch: Aha!! not it totally works! :D
<hatch> assuming s/not/now
<hatch> \o/
<julen> it's funny that the URL without the port also gives you a web interface, almost like the good one
<julen> thank you very much hatch !!
<hatch> no problem at all, sorry about that - we'll update the charm to fail obviously in unsupported versions of Juju to avoid this problem for others :)
<hatch> julen also, when new GUI versions are released you can simply run `juju upgrade-gui` and it'll upgrade for you :)
<julen> that's useful, thanks!
<hatch> glad it all worked out for you
<hatch> issues and feature requests can be filed here if you run into any more things - https://github.com/juju/juju-gui/issues
<julen> sure, I was just a little bit unsure, because I kind of knew that I was doing something (relatively trivial) wrong
<hatch> :) no problem
<jam> ybaumy: I have a potential patch https://github.com/juju/juju/pull/7626 assuming the way I triggered the bug is representative of what is going on for you
<jam> namely, if the worker that writes pings to the database gets restarted, it looses sync with the Pingers that were feeding it data
<jam> I caused it by manually injecting bad data, so I can't guarantee that it is the same root cause that you are seeing
<jam> but it might be a fix
<ybaumy> jam: will look into it tomorow and will give you feedback
<jam> ybaumy: so 'juju debug-log -m controller --level ERROR' might show something about pingbatcher worker dying
<jam> if it does, then it fits the symptoms really well
<tvansteenburgh> rick_h: you still around?
<rick_h> tvansteenburgh: out and about. What's up?
<tvansteenburgh> rick_h: wanted to ask some questions about `charm set extra-info`, but if it's a bad time i can wait :)
<rick_h> tvansteenburgh: getting the boy from summer camp. Can you email questions and I can poke at it when I get back?
<tvansteenburgh> rick_h: yeah np
<tvansteenburgh> rick_h: if you don't here from me it means i poked until i figured it out myself :D
#juju 2017-07-12
<NotDavid> Hi. I'm having an issue bootstrapping juju on a private openstack environment. It seems to be unable to initiate the mongodb replicaset. Anyone had this problem before?
<cnf> morning
<NotDavid> Anyone know where I can find juju's bootstrap logs? Bootstrapping keeps failing.
<admcleod> NotDavid: hrm, well juju debug-log may show something, but otherwise you can --debug and --verbose the bootstrap?
<NotDavid> I've tried --verbose, trying --debug now
<NotDavid> Thanks!
<NotDavid> I've found the command that gives me an error
<NotDavid> It seems to fail on this action: juju.worker.peergrouper initiate.go:42 Initiating mongo replicaset; dialInfo &mgo.DialInfo{Addrs:[]string{"localhost:37017"}, Direct:false, Timeout:300000000000, FailFast:false, Database:"", ReplicaSetName:"", Source:"", Service:"", ServiceHost:"", Mechanism:"", Username:"", Password:"", PoolLimit:0, DialServer:(func(*mgo.ServerAddr) (net.Conn, error))(0xae73a0), Dial:(func(net.Addr) (net.Conn, error))(nil)}; memberHostport
<NotDavid> "10.0.0.12:37017"; user ""; password ""}
<NotDavid> Resulting in this: 2017-07-12 09:13:05 INFO juju.worker.peergrouper initiate.go:64 finished InitiateMongoServer
<NotDavid> ERROR failed to start mongo: cannot initiate replica set: cannot dial mongo to initiate replicaset: no reachable servers
<admcleod> NotDavid: hmm. well, im going to assume its a networking related thing
<admcleod> NotDavid: do the instances automatically get external ips? and, can they automatically connect to the internet? (maybe to download a package or something)
<NotDavid> My instances can communicate with the internet. Openstack NAT's them. They're not accessible from outside the cloud, but my bootstrapping machine is in the same openstack project, so it's able to reach all the instances it creates.
<NotDavid> If they do need to be externally accessible they'd need to have floating ip's assigned to them and juju would then have to know about them. I'm not sure how I would do that
<admcleod> NotDavid: shouldnt need that no..
<NotDavid> Right, especially since juju's already ssh'ed into the new controller instance.
<admcleod> NotDavid: and does 10.0.0.12 check out?
<NotDavid> Yeah, it creates itself an instance. That instance is called 10.0.0.12
<admcleod> NotDavid: are you able to ssh into it? maybe see if mongo is running and bound to that ip?
<NotDavid> It is fully able to update and install packages
<NotDavid> I would log into it, but the instance gets destroyed when the bootstrap fails
<NotDavid> Could it be a timeout issue. Mongo can take a while to initialize.
<admcleod> hrrrrm.....it could be, but it shouldnt be or it would be more frequently reported. what version of juju?
<NotDavid> 2.2.1-xenial-amd64
<NotDavid> I'm going to re-check my secgroups, might be some blockages there. Shouldn't be though
<NotDavid> The correct ports should be open. But i've added ingress rules for all TCP and UDP traffic.
<NotDavid> I'm gonna rerun the bootstrap now
<admcleod> nod
<NotDavid> Nope ... same error
<NotDavid> So it's definitely not a network or firewalling issue
<NotDavid> well ... I'm stumped. Can't see why it shouldn't work
<admcleod> jamespage: tinwood any ideas ^^?
<admcleod> NotDavid: well. i guess you could try bootstrap-timeout
<admcleod> NotDavid: https://jujucharms.com/docs/2.0/controllers-creating
<ak_dev> Hello all, I am developing a charm for kubernetes with OVN using this documentation : https://github.com/openvswitch/ovn-kubernetes
<ak_dev> The charm I have developed is : cs:~aakashkt/ovn-2
<ak_dev> This acts as a subordinate charm to the already existing kubernetes-master and kubernetes-worker, much like flannel
<ak_dev> The problem is everything installs correctly, but in the end, the master stalls at "waiting for kube-system pods to start"
<ak_dev> What I could figure out is that the worker is not registering with the master for some reason
<admcleod> NotDavid: bottom of the page
<NotDavid> found it
<NotDavid> trying it now
<ak_dev> Here is the bundle file for the deployment https://usercontent.irccloud-cdn.com/file/U1pzdevl/bundle.yaml
<admcleod> kjackal___: you around?
<NotDavid> I've set the timeout to ten minutes and rerunning it
<admcleod> ak_dev: i think kjackal___ may be able to help or point you in the right direction but not sure if he's around
<ak_dev> admcleod: Hey, thanks for the reply
<ak_dev> will wait for him to come around :-)
<admcleod> ak_dev: there are other kubes guys here but they're US timezone
<ak_dev> admcleod: oh, will have to be around at night for them then, thanks, need to fix this soon
<admcleod> SaMnCo: around?
<NotDavid> admcledo: Getting the same error after the same time duration with a longer timeout. So it's not a timeout issue
<NotDavid> adcleod*
<admcleod> NotDavid: can you pastebin the full bootstrap output?
<NotDavid> admleod*
<admcleod> haha
<NotDavid> Tiny keyboard, giant hands, major issues
<admcleod> lol
<kjackal___> admcleod: hi, give me 2 mins
 * tinwood reading scrollback
<kjackal___> hi admcleod, ak_dev let me see
<ak_dev> kjackal___:  Hey, thanks, one more thing, I talked to Guru from ovn-kubernetes, he told me that I need to pass the correct options to kubelet, kube-apiserver, kube-scheduler and kube-controller manager
<tinwood> admcleod, NotDavid it looks like you're looking at everything I would have checked.  Anything else in the logs?
<admcleod> NotDavid: oh yeah, pastebin?
<NotDavid> Yeah, rerunning it with a longer scrollback. Give me a sec
<NotDavid> The problems of not working on your normal workstation
<kjackal___> ak_dev: this looks great! Deploying your bundle on aws now
<kjackal___> ak_dev: a couple of questions why would you deploy 1.5 kubernetes? We just released 1.7
<ak_dev> yes, that was because the recommended version to use with this was 1.5, told to me by the openvswitch guy
<ak_dev> glad you liked the charm :-)
<ak_dev> oh, you will have to give access to all ports in aws firewall rules, i had to do that in GCE
<kjackal___> ak_dev: waitup... kubernete-master and worker are patched locally by you so I cannoot deploy (/home/aakash/Desktop/k8s-official-charms/xenial/kubernetes-master)
<NotDavid> admcleod: Here's the pastebin log: https://pastebin.com/YFFT0Aub
<kjackal___> So... ak_dev we will have to do this remote ly
<ak_dev> oh, sorry for that, forgot to change them
<ak_dev> cs:~containers/kubernetes-master-35
<ak_dev> cs:~containers/kubernetes-worker-40
<ak_dev> sorry for the mistake
<kjackal___> ak_dev: you can juju ssh on the master and kubectl get no to see why/if the nodes are up
<kjackal___> updating he bundle now
<admcleod> NotDavid: can you try (long shot) --config use-default-secgroup=true
<admcleod> NotDavid: and perhaps use-floating-ip=true (after)
<NotDavid> now that i'm looking at it ... I notice it's trying to connect to mongo on port 37017. Isn't 27017 the default monogdb port
<kjackal___> ak_dev: I need to give access to which ports on which nodes?
<stub> tinwood: Do you know the status of moving charm-helpers to github?
<ak_dev> kjackal___: 6641, 6642 on master, 8080 on both master and worker
<stub> or anyone really (I think it was alex?)
<tinwood> stub, I don't sorry.  I know the work has started (jamespage) but it got hung up on transferring the history and email addresses.  I don't know the status though.
<ak_dev> i think that should be enough, I actually allowed all ports so can't say exactly which
<kjackal___> admcleod:
<stub> tinwood: I'm not sure why historic data needs to match to current email addresses, but I'll land this on LP then
<tinwood> stub, jamespage will know more.  what's 'this'?  the nrpe change?
<admcleod> NotDavid: pretty sre 37017 is ok
<stub> https://code.launchpad.net/~peter-sabaini/charm-helpers/bcache-helpers/+merge/323616 , which just became ready
<jamespage> tinwood, stub: just target the bzr branch on LP for now; the export/import takes seconds to complete so we'll do that right before switchover
<NotDavid> admcleod: Trying your suggestion now
<kjackal___> ak_dev: there is the juju run --application kubernetes-master open-port 6641/tcp that we might be able to use
<tinwood> jamespage, kk.
<ak_dev> kjackal___:  oh, I was not aware of that
<kjackal___> ak_dev: it _might_ do what we want, not sure for now. Still deploying
<NotDavid> admcleod: No luck, i'm afraid.
<NotDavid> amdcleod: Anyway, i've got a meeting now. I'll pick this back up tomorrow
<NotDavid> amdcleod: If you have any sudden realisations please let me know
<admcleod> NotDavid: hmm ok sure, will do
<kjackal___> ak_dev: if you look at the /var/log/syslog on workers, do you see any thing suspicius?
<ak_dev> kjackal___: hm, I don't know what to look for to find anything suspicious though
<ak_dev> i am going to redeploy in some time, made some changes
<kjackal___> ak_dev: I have an error on the juju unit of ovn
<kjackal___> http://pastebin.ubuntu.com/25074590/
<kjackal___> ak_dev: ^
<ak_dev> kjackal___: oh sorry i should have mentioned before, there is an config option in the OVN unit
<ak_dev> gateway-physical-interface
<ak_dev> you will have to set it to the default interface the machine uses
<ak_dev> in GCE, it is ens4
<ak_dev> ip route | grep default shoud give u the interface name I suppose
<ak_dev> kjackal___: my sincere apologies, I know its a pain to redeploy everything again and again
<magicaltrout>   /join #maas
<magicaltrout> meh
<admcleod> hugs
<kjackal___> ak_dev: redeployed only ovn and got http://pastebin.ubuntu.com/25074659/
<kjackal___> should be an easy fix
<ak_dev> that mkdir error is okay
<ak_dev> no problem with that
<kjackal___> ak_dev: the node did not register
<ak_dev> yes, that was the problem I was facing, don't know why it isn't registering
<ak_dev> is the master stuck on "waiting for kube-system pods to start" ?
<ak_dev> the network OVN creates is fine, the guy from openvswitch tested it
<ak_dev> I have no idea about why the node isn't registering
<ak_dev> kjackal___:  ^
<kjackal___> ak_dev: do we need to start the node services using extra params?
<kjackal___> Cynerva: and ryebot may be interested in this ovn work
<ak_dev> yes, there are some he has mentioned in the readme, which I couldn't see passed in the charm code
<kjackal___> ak_dev: ah, the README! Let me read!
<ak_dev> I am trying that out now
<ak_dev> yes just a sec
<ak_dev> https://github.com/openvswitch/ovn-kubernetes
<ak_dev> this is the overall readme
<ak_dev> https://github.com/openvswitch/ovn-kubernetes/blob/master/docs/INSTALL.K8S.md
<ak_dev> this is for setting up k8s
<ak_dev> kjackal___:  ^ (sorry keep forgetting to tag you)
<kjackal___> ak_dev: on the master if you go to /var/snap/kube-apiserver/current/args you can add the params manually and restart the respective service like  systemctl restart snap.kube-apiserver.daemon
<kjackal___> the same goes for kube-controller-manager and kube-scheduler on the master
<ak_dev> kjackal___: oh thanks, that will help a lot! Will try and set the proper args and see if it works
<ak_dev> so in args, how do i specify the arguments?
<ak_dev> like how we normally do in command line or is there any other format?
<kjackal___> ak_dev: for example --master "http://127.0.0.1:8080"
<ak_dev> kjackal___: ah okay, that way then
<kjackal___> ak_dev: as soon as you have the right params in place please go ahead and submit a PR so we add them on the charms. There is also a PR to add a config option for custom params...
<ak_dev> kjackal___: oh, that config option thing will be great
<ak_dev> i will once I am able to get this up and running
<kjackal___> ak_dev: What you are doing is really interesting. If you get into trouble and you do not find anyone in this room open an issue here: https://github.com/juju-solutions/bundle-canonical-kubernetes so we follow up
<ak_dev> kjackal___: sure will do, thanks for helping out :-)
<kjackal___> Usualy eu timezone I am around and later us hours you can ping Cynerva or ryebot
<SaMnCo> admcleod: yes back
<SaMnCo> what's up?
<ak_dev> kjackal___: will do
<iguez> Hi all. Juju has the feature of setting an APT mirror URL in the model config, which affects sources.list in LXC containers (juju model-config apt-mirror="URL"). Does anyone here know how to set a custom apt gpg key along with this mirror URL?
<ak_dev> kjackal___: i put in my args for kube-apiserver, and restarted the daemon, but it quits just after restart
<ak_dev> any reason why this is happening?
<ak_dev> everything else restarted correctly
<kjackal___> there is nothing in the service logs?
<kjackal___> ak_dev: /var/log/syslog ? anything interesting there?
<ak_dev> kjackal___: looks like apparmor denied starting service
<ak_dev> https://www.irccloud.com/pastebin/blb6zoKf/
<kjackal___> ak_dev: can you try restarting again?
<ak_dev> https://www.irccloud.com/pastebin/SNV9V6MA/
<ak_dev> kjackal___: ^
<kjackal_> ak_dev: we need to look into this in more detail. Can you start kubeapi-server from the commandline: like /snap/kube-apiserver/77/kube-apiserver with --v 9
<kjackal_> ak_dev: and all your args
<ak_dev> kjackal_: oh okay, will do that now
<ak_dev> kjackal_: okay i think it started
<ak_dev> will do the same for worker and see if it connectws
<kjackal> ak_dev: nice
<ak_dev> kjackal: curious, what is the --v 9 for?
<ak_dev> in my args, he has specified --v 2
<ak_dev> kjackal: okay, so i restarted with my args
<ak_dev> and kubectl get pods returned the worker
<ak_dev> looks like it is running then?
<ak_dev> kjackal: 'kubectl get nodes' i mean
<ak_dev> this is a confirmation of sorts, that it runs ! all i need to do is now modify kubernetes-master and kubernetes-worker code with my args i guess
<ak_dev> kjackal: kjackal___: i need to figure out how to add parameters to the charms, how do i do that?
<ak_dev> I am not sure what i did differently when i restarted
<ak_dev> except that i restarted without the SSL
<kjackal__> ak_dev: nice to hear you got it working!
<kjackal__> for args... let me show you....
<kjackal__> ak_dev: https://github.com/kubernetes/kubernetes/blob/master/cluster/juju/layers/kubernetes-master/reactive/kubernetes_master.py#L833 here is where we set the params for some services
<kjackal__> Since you are adding a new cni that replaces flannel it might make sence to start a discussion on how we do this the right way...
<kjackal__> ak_dev: I will bring it up to the rest of the team. We should discuss this. I think the best place for this would be an issue on the bundle
<ak_dev> kjackal__: I did add some things at the place you mentioned, but I couldnt see my args when it actually ran
<ak_dev> kjackal__: yes, we can discuss this in an issue
<ak_dev> great idea :-)
<ak_dev> just for reference, I am working with Narinder Gupta from canonical, my mentor for the OPNFV project
<ak_dev> under JOID
<kjackal> ak_dev: would you be able to open an issue describing exactly what params you need available on which services? It would also be nice to have some pointers on the charms you have including the source so we can see exaxtly what is happening. For example opening specific ports should be easy.
<ak_dev> kjackal: yes, I am writing it up right now
<ak_dev> will ping you once done :)
<kjackal> thank you
<ak_dev> kjackal: kjackal__ : done
<ak_dev> here is the link : https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/350
<kjackal> ak_dev: awesome thank you
<ak_dev> do tell me if you require me to edit anything, and thank you the most :-)
<ak_dev> you helped a lot
<kjackal> Anytime ak_dev. We have some more things to do. Thank you for your work
<ak_dev> :-)
<catbus> Hi, how long does it take for charms to show up on jujucharms.com? I tried both charm and bzr, still don't see the charm on jujucharms.com
<rick_h> catbus: the charmstore no longer uses ingestion to pull from bzr. The charm command is used to push things up. Once up you need to publish them and set the permissions such that everyone can see them
<rick_h> catbus: let me find the docs page real quick
<rick_h> catbus: https://jujucharms.com/docs/stable/authors-charm-store#submitting-a-new-charm
<catbus> rick_h: ok, I will try it with 'charm' again.
<catbus> thanks.
<catbus> rick_h: it works now, thanks.
<rick_h> catbus: <3 good to hear
#juju 2017-07-13
<NotDavid> Hi
<cory_fu> stub: https://code.launchpad.net/~johnsca/juju-wait/+git/juju-wait/+merge/327334 updated, thanks for the catch
<stub> ta
<stub> 3rd time lucky?
<cory_fu> stub: ha, hopefully
<cory_fu> stub: If you think it's worth changing it to use json format, I can do that
<stub> not much point now.
<stub> if you need to touch it again, sure
<cory_fu> Ok
<cmars> hi, are there any layers/interfaces that help with deploying j2ee webapps? like, if i've got a war file and i want to turn that into a charm?
<tvansteenburgh1> cmars: https://github.com/juju-solutions/interface-java
<kwmonroe> cmars: the java interface (and associated openjdk layer: https://github.com/juju-solutions/layer-openjdk) are all about making it easy to swap out JREs on a unit.  if you really want to charm a WAR, you'll need something like tomcat to serve it.  ~spicule (tom barber's crew) has done some work in that space: https://jujucharms.com/u/spicule/saiku-basic-mariadb/
<kwmonroe> cmars: it's not reactive, but you can see in his ./hooks/install how he gets the war into the appropriate container:  http://bazaar.launchpad.net/~spicule/charms/trusty/saikuanalytics-enterprise/trunk/files/head:/hooks/
<magicaltrout> i have a reactive version somewhere
<magicaltrout> also i had a suggestion for a WAR <-> Webapp server relation on the mailing list a long time ago, never really went any where but i think it would be cool
<cmars> kwmonroe, ok, thanks!
<cmars> magicaltrout, thanks, if you find that reactive version, please send my way
<Budgie^Smore> o/ juju world
#juju 2017-07-14
<antdillon> whats the best solution when some units have lost there agents? reboot the machine?
<Spads> antdillon: restart the agents
<dakj> hello guys, someone can help me? after to deploy Openstack Base via juju, my issue is to create a new instance. It gives me that error: "No networks defined." I've also open this post https://askubuntu.com/questions/934780/no-networks-defined-on-openstack.
<dakj> anyone can help me?
<Budgie^Smore> o/ juju world, what a wonderful day it is :)
<kwmonroe> \o Budgie^Smore
<bob____> hey - juju nubie here - i keep getting a "Multiple possible networks found, use a Network ID to be more specific." error when using a private openstack cloud. How do I set the Network Id?
<hml> you can do ââconfig network=<network-name>â
<hml> on the bootstrap command
<bob____> That worked for the bootstrap, but what about the deploy of a model
<hml> youâll want a private network, not an external network here
<hml> you can set the model config to do the sameâ¦ let me check htec ommand
<hml> or the same âconfig when you do an add-model
<bob____> ok - thanks - i'll try that
<hml> and at bootstrap, you can do a âmodel-default network=<>
<hml> if network is listed in juju model-config - you can change it there for an exisitng model as well.  too many choices?
<bob____> perfect thats - I'm getting another error - cannot update resource catalog: read tcp 192.168.1.33:47542->192.168.1.33:37017: i/o timeout
<bob____> any thoughts?
<bob____> this was in deploying a bundle
<hml> that one iâm not sure of.  :-/
<ak_dev> Hi, where do I make changes to kubernetes-master and worker to pass args to their services? I made some changes in the configure functions, but it seems that the args didn't pass to the respective services
<ak_dev> kjackal:
<ak_dev> ^
<tvansteenburgh> ak_dev: kjackal is out for a few days - it would be best to post that question on your open bug
<ak_dev> tvansteenburgh: oh okay, sure will do that, thanks!
<tvansteenburgh> ak_dev: np :)
<dakj> hello guy, one question why I dont' view juju gui on a VPN connection while I see MAAS dashboard an Openstack? someone can help me? here the screen https://pasteboard.co/GAWHSRn.png
<dakj> anyone can help me?
<dakj> any suggests?
<dakj> hello guys, I dont' view juju gui on a VPN connection, while with other dashboard I 've not issue. someone can help me? thanks. I've open also a post here https://askubuntu.com/questions/936248/not-view-juju-gui-on-vpn-connection
#juju 2017-07-15
<setre> so I ran conjure-up kubernetes on my ubuntu vps with only 1GB of memory (didn't find system requirements) and now I can't seem to do anything. How can I uninstall the things
<setre> e.g. juju status doesn't respond
<stokachu> It's all containers so you can do 'conjure-up.lxc delete --force contsiner' then just 'rm -rf .local/share/juju'
<stokachu> setre: ^
<setre> stokachu: thank you muchly
<setre> lxc list shows nothing. should it?
<stokachu> Did you run lxc list or conjure-up.lxc like I wrote
<setre> ah conjure-up.lxc list shows them
<stokachu> :)
<setre> thanks again
<setre> this is all voodoo to me
<setre> i.e. I didn't read up
<setre> do you happen to know the memory requirements for conjure-up kubernetes for localhost?
<stokachu> which kubernetes?
<stokachu> there is canonical-kubernetes and kubneretes-core
<setre> kubernetes-core
<stokachu> hmm with that one you may be able to get away with around 4G mem
<setre> thanks
<stokachu> but you need 60G or more disk space
<stokachu> roughly
<setre> I see
<stokachu> i haven't tested the minimum disk space required for kubernetes-core so you may be able to get away with less
<setre> i could delete all but one container using your method. one container is in state freezing. currently waiting on conjure-up.lxc delete it has been a few minutes
<stokachu> setre: whats output of `cat /proc/swaps`
<setre> stokachu: /dev/dm-2                               partition       1048060 344048  -1
<setre> memory usage has gone down
<stokachu> yea container is hung, can you reboot?
<stokachu> that should remove the swap
<setre> yeah ok
<setre> thanks
#juju 2017-07-16
<ybaumy> hi guys.
<ybaumy> jam: the new release fixed the juju status problems. you to let you know
<ybaumy> question. can i deploy ceph-osd and nova-compute on on machine or doesnt it make sense
<Dmitrii-Sh> ybaumy: sure it does, sure you can
<ybaumy> Dmitrii-Sh: will high load affect storage performance not too much?
<Dmitrii-Sh> ybaumy: depends
<ybaumy> Dmitrii-Sh: thats what im worried about
<Dmitrii-Sh> ybaumy: it is a sizing exercise in general
<Dmitrii-Sh> ybaumy: if you have an all-flash array, you have to be careful
<Dmitrii-Sh> ybaumy: as CPU load will increase due to a larger number of IOPS (or interrupts)
<Dmitrii-Sh> ybaumy: + you need to process replication-related network interrupts which is also additional CPU load
<ybaumy> Dmitrii-Sh: i probably have to test it in my lab first
<Dmitrii-Sh> ybaumy: there is no general advice in terms of what's best. There are many things involved: the number of disks, their speed, CPU characteristics, NICs, jumbo frames, PCIe standard version (max speed on a bus), number of FileStore and osd threads
<Dmitrii-Sh> ybaumy: and a workload of course
<Dmitrii-Sh> if you stick a block-level cache there (e.g. bcache), it will affect CPU performance even more
<ybaumy> Dmitrii-Sh: hmm there are alot of parameters to look for.
<Dmitrii-Sh> ybaumy: yes, exactly. That's why it is worthwhile to know what is the desired result and have some fio-based test cases (https://github.com/axboe/fio)
<Dmitrii-Sh> ybaumy: I haven't mentioned everything though, there are also things like instance CPU overcommit ratio and a number of instances on a compute node, RAID controller caches (if you use those), network switches' performance (whether they have a good backplane and can do line-rate switching on all interfaces at the same time), storage driver quality and other things
<ybaumy> Dmitrii-Sh: you are alot of help for my thinking process. i will test this in test cloud and then i will see how everything plays together
<Dmitrii-Sh> ybaumy: yw, it's a lot of parameters but it's good to try it out first and then optimize
<ybaumy> Dmitrii-Sh: when i add-unit nova-compute it add a second ntp apperantly though port 123 is already used. can i just remove-unit ntp on the machine?
<blahdeblah> ybaumy: There's a bug in some versions of ceph charms which installs NTP unconditionally
<ybaumy> blahdeblah: it seemms that ceph-osd already has ntp installed
<blahdeblah> https://bugs.launchpad.net/charms/+source/ceph/+bug/1690513 <-- that probably explains why you're seeing port 123 already used
<mup> Bug #1690513: ceph-mon charm incorrectly embed ntp package installation <OpenStack ceph charm:New> <OpenStack ceph-mon charm:Fix Committed by thedac> <OpenStack
<mup> ceph-radosgw charm:Fix Committed by thedac> <charms.ceph:Fix Committed by thedac> <ceph (Juju Charms Collection):Invalid> <https://launchpad.net/bugs/1690513>
<ybaumy> ok thanks
<Dmitrii-Sh> might be worth a backport to stable/17.02
<ybaumy> how do i juju deploy hacluster mysql-cluster --to machine ?
<ybaumy> its not supported
<ybaumy> is there any other way or how to proceed
<ybaumy> got it
<ybaumy> its a meta package
<ybaumy> or something
<ybaumy> how do i retry status when its blocked .. resolved doesnt work
<ybaumy> would it be possible to display vip in status
<ybaumy> how to resolv blocked status
<ybaumy> or retry
<ybaumy> or whatever
<ybaumy> haproxy is up
<ybaumy> but status says its blocked because haproxy is missing
<ybaumy> i dont get it
<ybaumy> https://bugs.launchpad.net/charms/+source/keystone/+bug/1599636
<mup> Bug #1599636: pause failing on HA deployment: haproxy is running <landscape> <OpenStack ceilometer charm:Triaged> <OpenStack ceph-radosgw charm:Triaged> <OpenStack cinder charm:Triaged> <OpenStack glance charm:Triaged> <OpenStack keystone charm:Triaged> <OpenStack neutron-api charm:Triaged>
<mup> <OpenStack nova-cloud-controller charm:Triaged> <OpenStack openstack-dashboard charm:Triaged> <ceilometer (Juju Charms Collection):Invalid> <ceph-radosgw (Juju Charms Collection):Invalid> <cinder (Juju Charms Collection):Invalid> <glance (Juju Charms Collection):Invalid> <keystone (Juju Charms
<mup> Collection):Invalid> <neutron-api (Juju Charms Collection):Invalid> <nova-cloud-controller (Juju Charms Collection):Invalid> <openstack-dashboard (Juju Charms Collection):Invalid> <https://launchpad.net/bugs/1599636>
<ybaumy> jamespage: what is the workaround here
<ybaumy> i did pause and resume
<ybaumy> its resolved but why is this not a bug?
<ybaumy> i had to pause/resume this on neutron-api hacluster and on every instance of neutron-openvswitch
<ybaumy> in  order to get rid of the blocked status
<ybaumy> this seems to be a bug
#juju 2018-07-09
<veebers> wallyworld: sweet, looks like I can remove the patch and just use the bootstrapped-ed-ed config for charmstore
<vino> wallyworld: stub calls check u have mentioned is done via CheckCall/ChaeckCallNames
<kelvin_> hi wallyworld can i get ur 5 minutes on HO?
<wallyworld> kelvin_: talking to vino, give m 5
<kelvin_> wallyworld, yup, thanks
<veebers> wallyworld: I've pushed the test fix up as a non-squashed commit. You're a popular guy today though, I'll ask babbageclunk to take a quick look if he's free https://github.com/juju/juju/pull/8896/commits/eff1dc23ed0e400a21afa0d74e3a8c764e34ce39
<babbageclunk> veebers: I'm free enough!
<veebers> babbageclunk: awesome, cheers!
<wallyworld> kelvin_: free now
<wallyworld> veebers: yeah, "popular"
<kelvin_> wallyworld, c u soon
<wallyworld> veebers: that worked out nicely by the looks
<wallyworld> was worth the time to avoid another patch of a global var
<veebers> wallyworld: aye, wanted a sanity check on it to make sure the creation of that session wasn;t going to introduce some obscure issue
<veebers> aye, just fixing another test (might get the same treatment) and should be able to land it
<babbageclunk> Sorry, got distracted - it looks nice to me too.
<veebers> wallyworld, babbageclunk sweet, I did the same for UpgradeCharmStoreResourceSuite too
<wallyworld> great ty
<veebers> wallyworld: where are controller config options documented? For now I'll file a bug and assign it to me to follow up (for charmstore url)
<wallyworld> there's a page in juju docs somewhere
<wallyworld> not sure of exact url off hand
<veebers> wallyworld: ack, I;ll file bug and keep track
<wallyworld> ty
<veebers> wallyworld: if a test does this: s.AddCall("NewCharmAdder", conn, bakeryClient, csURL, channel), can I do a check that "NewCharmAdder" was called, but I only care about one of the args? (i.e. csURL)
<wallyworld> i think you can get specific args for a given call from the stub
<wallyworld> and then assert on that
<veebers> wallyworld: ack, cheers
<babbageclunk> wallyworld, thumper: What serialisation format do you think I should use for the FSM commands and snapshots? Might just make it yaml for now, it would be easy to change it (before release, I mean). Or gob would be another option.
<wallyworld> i guess yaml is easier to debug? it's not like it will be huge quantities of data
<veebers> wallyworld, babbageclunk: Whats the best way to debug this test failure :-( http://ci.jujucharms.com/job/github-check-merge-juju/2171/consoleFull (FAIL: machine_test.go:1021: MachineSuite.TestControllerModelWorkers)
<veebers> introduced in a commit that I've since squashed up (yay)
<babbageclunk> veebers: havin' a look
<veebers> cheers
<wallyworld> veebers: loks like a build error
<wallyworld> error: 820: package build failed: FAIL	github.com/juju/juju/apiserver/facades/controller/charmrevisionupdater
<veebers> wallyworld: I've sorted that issue out. This test fails locally too
<wallyworld> do toy have a run without the build error?
<veebers> wallyworld: not a complete one no. I can push up my fixes for the build error issue and get one though
<babbageclunk> ugh
<wallyworld> veebers: that looks like a significant root cause because the test output says waiting for [charm-revision-updater]
<wallyworld> and that's the thing that doesn't compile
<veebers> wallyworld: ah, interesting. Ok I'll start looking there
<wallyworld> also, there's a npe in the firewaller
<babbageclunk> and the panic in instancepoller sounds bad
<wallyworld> the build error once fixed should address the worker bit of the failure
<veebers> babbageclunk, wallyworld ah right, I'm seeing build issues I didn't see earlier. I have something to go on now, thanks!
<wallyworld> good luck
<babbageclunk> veebers: Oh, but also the "[LOG] 0:18.065 DEBUG juju.worker.dependency "charm-revision-updater" manifold worker stopped: empty charmstore URL not valid" seems like it would be related to what you're doing.
<veebers> babbageclunk: indeed! thanks
 * vino going for lunch.
<veebers> babbageclunk, wallyworld yay in the end an easy fix, had to set CharmStoreURL in the controllerConfigAttrs before the rest of the setup (the conns suite sets a default one which doesn't have that value)
<wallyworld> gr8
<veebers> micro-gr8s
<babbageclunk> nice
<kelvin_> wallyworld, r u free to talk about the bugs?
<wallyworld> kelvin_: in a call, soon
<kelvin_> wallyworld, yup, just ping me when u r ready, thanks.
<veebers> wallyworld: ugh, my "microk8s.kubectl -n veebers delete po,svc --all" command has hung there for ages now :-\ seeing some DENIED in dmesg. Will explore after dinner
<wallyworld> kelvinliu: finally free. jump in standup HO?
<wallyworld> veebers: that happens to me sometimes too
<wallyworld> i think i reinstall, not sure now
<kelvin_> wallyworld, yup,
<veebers> wallyworld: ack, will kill it shortly and try again
<babbageclunk> wallyworld: do we have a standard way to represent times and durations in yaml (so they can be roundtripped)?
<wallyworld> hmmm. not sure
<wallyworld> i know we tend to use fake times for that sort of thing
<wallyworld> or we nil out times before asserting
<wallyworld> we assrt that time value is not nil then make nil then assert
<wallyworld> kelvin_: just a coouple of small comments
<babbageclunk> I mean, I can't do that because I need the time values for the leases.
<wallyworld> babbageclunk: hmmm, i can't recall where we might do that
<babbageclunk> wallyworld: It looks like maybe it just does the right thing actually, just checking.
<wallyworld> hope so
<stickupkid> manadart: where we at with this, did you manage to test this locally? https://github.com/juju/juju/pull/8879
<manadart> stickupkid: I tested it out with the latest changes. Looks good to land and iterate on.
<stickupkid> manadart: wanted to land this one before my others, so that's nice :D
<manadart> stickupkid: I think all of yours are approved now.
<stickupkid> manadart: perfect, thanks
<stickupkid> should we be noting down which tests are flakey?
<stickupkid> probably a question for rick_h when he comes online I guess
<rick_h_> stickupkid: definitely, please file a bug for those
<rick_h_> stickupkid: and see if you can find a tag that works for them
<zeestrat> morning rick_h_, who do I poke for support on the new discourse.jujucharms.com? It doesn't seem to want to pull in my gravatar icon. Also are there some guidelines for what will/should be put there? Will existing things from the mailing lists and askubuntu be imported so it's actually consolidated?
<rick_h_> zeestrat: otp, sec
<rathore_> all: how can i force juju to install lxd 3.0+ on xenial nodes?
<rathore_> rick_h_: Can you please help?
<rick_h_> rathore_: howdy, otp with the team. sec
<rathore_> rick_h_: I am good thanks. Take your time
<rick_h_> zeestrat: so, is 3.0 not the default in xenial after upgrade? Maybe it requires the backports PPA I guess.
<rick_h_> or sorry, rathore_ that is
<rick_h_> zeestrat: yea, not sure why the gravatar doesn't work. Please file a post in the issues section and I'll see if we can get the web folks to investigate.
<rick_h_> zeestrat: as for porting stuff over, I'm not sure what we can do with the mailing list.
<rick_h_> zeestrat: we are working to port over things like the Juju wiki pages, stuff in the juju/docs directory, etc.
<rick_h_> zeestrat: and I don't think we'll pull askubuntu as that format kind of works there with the voting/etc. I'm not sure I'd want to pull all those over.
<zeestrat> rick_h_: right, but it is supposed to replace the mailing lists?
<rick_h_> zeestrat: yes, it is
<rick_h_> zeestrat: not sure if we can put them in archive mode/etc. There's not an import/tooling to pull out the history I know of atm.
<rathore_> rick_h_: No still installs 2.xx
<zeestrat> rick_h_: Gotha, thanks. I hope there's a way to pull the archives in some sort of way for searchability. Would hate to lose the history and context.
<rick_h_> zeestrat: definitely, it'd be nice. There's scripts for importing user accounts from the email lists in mailing lists but not seeing anything for the topics. We'll see if anything comes up.
<manadart> jam stickupkid: https://github.com/juju/juju/pull/8902
<zeestrat> rick_h_: Dumb question, is there a issues section/category on discourse that I'm not seeing?
<rick_h_> zeestrat: oh hmm, thought there was. /me looks again
<rick_h_> zeestrat: must have been cleaned out. I guess just go uncategorized please
<zeestrat> rick_h_: Roger.
<stickupkid> so it seems like it's the same issue over and over that's failing on for CI, I'm going to spend some time fixing it once I've finished my new PR, as it's currently a hindrance atm
<rick_h_> stokachu: k, the action timeout thing?
<rick_h_> stickupkid: that is
<stickupkid> rick_h_: I believe it's in `juju/cmd/juju/application` - and it's around some mongo issue
<stickupkid> rick_h_: the bigger issue is that we're hitting mongo at all, but that's another story... we're correcting as we go :)
<rick_h_> stickupkid: always better than we found it and get there eventually :)
<stickupkid> rick_h_: bingo!
<veebers> Morning all o/
<hml> babbageclunk: ping
<thumper> rick_h_: morning
<rick_h_> thumper: morning
<thumper> rick_h_: do you have a few minutes to chat?
<rick_h_> I was waiting in the QA call
<rick_h_> thumper: if that's not going down I do
<thumper> chris declined
<rick_h_> ah missed that
<rick_h_> k, omw then to 1-1?
<thumper> kk
<thumper> rick_h_: I'm in the rick hangout because it looks like our 1:1 is missing a hangout/meet
<rick_h_> thumper: I added it in, not sure what happend.
 * rick_h_ must have not added it recurring last week
<thumper> I see it now
<thumper> wonder what happened
<rick_h_> thumper: sorry, might have to swap the axis there to get it to show up right
<rick_h_> brb, getting the boy
<thumper> kk
<rick_h_> kwmonroe: do we have this? https://twitter.com/esacteksab/status/1016428675930247174
<rick_h_> kwmonroe: as you mentioned a more concise changelog summary vs the 40 pages of stuff with the official release?
<rick_h_> thumper: you still hacking on the graph?
<thumper> no
<thumper> I don't understand the underlying data, so hard to construct a query
<rick_h_> thumper: ok, just wanted to make sure I wasn't stepping on your graph if I played with it
<thumper> you're all good to play
<babbageclunk> hml: so, the feature flag worker
<babbageclunk> Where does your new worker run?
<hml> babbageclunk: in the machine agent
<babbageclunk> cool
<babbageclunk> That's the easiest option then
<babbageclunk> Ok, so you have a feature flag set up to determine whether your worker should run?
<hml> babbageclunk: yes
<babbageclunk> You can see the version I made for the raft enabled flag - you can just tell it the feature flag and whether it should invert the sense of the flag.
<hml> babbageclunk: for a normal FT, I donât want to invert yes?
<hml> or correct
<babbageclunk> hml: yeah, that sounds right - the disable-raft one was a bit of a weird case.
<hml> babbageclunk: k - then i need the equivalent of ifRaftEnabled?
<babbageclunk> hml: yup - that enables you to wrap a given manifold so it only runs when the flag is true.
<hml> babbageclunk: diving inâ¦ :-)
<hml> babbageclunk: thank you!
<babbageclunk> hml: no worries - give me a yell if you have any more questions!
<hml> babbageclunk: :-)
<wallyworld> would love a review in anyone is free https://github.com/juju/juju/pull/8905
<babbageclunk> wallyworld: I'll take a look after my chat with thumper
<wallyworld> you rock
<wallyworld> ty
<thumper> vino: hey, got a few minutes for a chat?
<vino> sure thumper.
<thumper> 1:1?
<vino> ok.
#juju 2018-07-10
<veebers> wallyworld: ok, so docker login and docker pull work with the image, it's something me or m-k8s is doing. Will dig deeper after food
<wallyworld> ok
<babbageclunk> wallyworld: sorry, haven't looked at that pr yet - some roofers have turned up to fix a leak.
<wallyworld> no rush
<wallyworld> kelvin_: here's a small PR to add support for docker cmd/args https://github.com/juju/juju/pull/8908
<kelvin_> wallyworld, yup, looking now.
<kelvin_> wallyworld, LGTM. thanks
<veebers> wallyworld: I *think* this originally succeeded getting the image, but container creation failed and it tried again and failed to pull image (TTL for image access?) https://pastebin.canonical.com/p/9khpdhpxCy/
<wallyworld> veebers: i have to head out to lunch in about 30 - need any input before i go?
<veebers> wallyworld: no, all good. making progress
<wallyworld> awesome
<wallyworld> you got secret sorted?
<veebers> wallyworld: I thought I did, still working on it. Made progress though
<wallyworld> onward and upward
<veebers> ah shoot, I didn't read the docs (shocker) and appparently you need to run microk8s.reset before snap removing the thing 0_0 I wonder if a reboot will help
<thumper> veebers: oops
 * thumper goes to make a coffee
<balloons> Tell veebers he should really experiment in a sandbox so he doesn't have to reboot his entire machine :p
<veebers> wallyworld: would you have some time to chat about the docker bits?
<ybaumy> ok this is kinda rant about the localhost kubernetes deployment option with juju or conjure-up... short: it just doesnt work.. longer: why on earth is there a option to deploy on localhost if your tools just cannot do it. has anyone of the devs lately tried to deploy on localhost eg. kubernetes-core? just a small cluster. probably not because its broken.
<ybaumy> ok so i dont give up easily.. i read lxd tutorial here for localhost and tried to configure it like that.. then i read github issues of other ppl.. tried that too
<ybaumy> i just cant get it to run... then i post on github on a similar problem. but the issue is closed. closed but not answered
<ybaumy> there is no tutorial for localhost deployment which just says do this and do that because our software if not able to
<ybaumy> s/if/is
<ybaumy> annoying is the word im looking for.
<ybaumy> its not the first time that open source just fails to provide for users in documentation and so on.
<ybaumy> if developers are not able to write documentation then just dont offer options that do not work out of the bo
<ybaumy> x
<ybaumy> now everybody will say .. heh did you open a issue yet?
<ybaumy> no i havent. why? because i was wasting my time on other projects and didnt get a solution or even the devs give an answer that they also dont know what to do
<ybaumy> that would be honest and straight forward
<ybaumy> so if anyone reads this here. take it as feedback or leave and do whatever you devs do
<ybaumy> and this might also be news to you.. system administrator/engineers/architects are not there for you to be the single source of quality control of your code. yes we understand that there are bugs here and there.. but we are not mainly there to deliver feedback about broken software. and yes we know how to use google but if you have to read 4 different websites to be able to use a feature that is not well
<ybaumy> documented in the official doc on the software website then you have to realize that something is really not working as intented
<wallyworld> ybaumy: i do it every day. what's the issue you are seeing?
<wallyworld> my setup is a lxd cloud and then i deploy kubernetes-core bundle. one tweak i do make is to not nest one of the lxd containers
<thumper> wallyworld: is that a local tweak to the default bundle?
<wallyworld> since support for that i think is kernal dependent (not sure), and it only matters when deploying to real vms
<wallyworld> yeah
<thumper> perhaps a short discourse post on getting it working?
<wallyworld> yup. i didn't realise it was an issue
<wallyworld> i just did it for expediency
<wallyworld> no need for nested lxd when testing things out
<thumper> perhaps we should have a CDK local bundle in the store for people testing it out?
<thumper> one that doesn't use nested lxd
<thumper> well, one that doesn't specify containers in the bundle
<thumper> ybaumy: sorry that you had such a negative experience with it
<ybaumy> ok so first /var/run/kubernetes is not created on the master .. then i had to follow this https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/507 https://github.com/juju-solutions/bundle-canonical-kubernetes/wiki/Deploying-on-LXD https://github.com/lxdock/lxdock/pull/49/commits/39b19f90ad8f7331c5e49ba27fba7446be254ea7
<wallyworld> thumper: i *think* the guys saif they were going to remove the nested lxd container anyway
<ybaumy> https://askubuntu.com/questions/863675/lxc-lxd-and-apparmor-permission-denied-attempted-to-load-a-profile-while-confi https://stackoverflow.com/questions/48190928/kubernetes-pod-remains-in-containercreating-status https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/262
<wallyworld> ybaumy: so that's CDK not kubernetes-core?
<ybaumy> ybaumy: didnt matter for me.. had the same issues
<wallyworld> the kubernetes-core is what i'd recommend to play with
<ybaumy> i just searched google
<ybaumy> for similar problems
<ybaumy> was using kubernetes-core
<ybaumy> first stable then edge
<ybaumy> i pretty much ran from error to error
<thumper> wallyworld: have you changed your default lxd profile like the wiki linked above suggested?
<ybaumy> https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/262 this is the latest state i was in
<ybaumy> on the bottom
<wallyworld> ybaumy: here's my bundle that i tweaked; i simply deployed easyrsa to a new machine (2) instead of a nested lxd https://pastebin.ubuntu.com/p/5p5W6YnrHF/
<ybaumy> the system pods were not starting and then i gave up 2 weeks ago
<ybaumy> ok have to try that tonight since i have to go to work in half an hour
<wallyworld> i'm not a k8s expert - hyave not seen the error you mention
<wallyworld> but i know my tweaked bundle seems to work everytime i have tried
<wallyworld> the only change i made is to introduce that new machine 2 instead of using a nested lxd
<wallyworld> as deploying locally uses lxd for the top level vms
<wallyworld> so no value in nesting
<kelvin_> ybaumy, it's worth to have a check if ur lxd version >= 3
<ybaumy> wallyworld: well this is the thing i guess. lxd is not working properly
<wallyworld> nesting does require special kernal things / privilieges that i do nit fully understand
<ybaumy> http://pastebin.centos.org/931976/
<ybaumy> those version im using now
<ybaumy> juju is beta because i tried stable first and thought that might fix it
<thumper> ybaumy: funnily enough the beta channel is behind the release channel just now
<thumper> :(
<ybaumy> wallyworld: and yes you are right without the changes to lxd i did .. the lxd containers were not even starting
<ybaumy> thumper: good to know
<thumper> ybaumy: release is 2.4.0
<thumper> stable I mean
<ybaumy> thumper: i remember getting the mail for the release yes
<ybaumy> but the problem is either kube-core or lxd
<thumper> to be honest though, rc3 == .0 except the version number
<wallyworld> ybaumy: i would be very interested to see if the tweaked bundle file without nested lxd works. let us know
<wallyworld> let's rule out nesting as an issue
<ybaumy> wallyworld: will post my feedback tonight here in the channel
 * thumper has to go make dinner for minions
<wallyworld> if there's still an issue wil be easier to find
<thumper> see y'all tomorrow
<wallyworld> o/
<wallyworld> i may be out tonight but will check tomorrow
<ybaumy> will be online tomorow morning from 0500-0700 CET here
<wallyworld> i'm GMT+10
<ybaumy> gotta go work later
<kelvin_> wallyworld, can i get u a few minutes?
<wallyworld> sure
<kelvin_> HO?
<wallyworld> yup
<anastasiamac> kelvin_: wallyworld: i think u may have addressed this one already https://bugs.launchpad.net/juju/+bug/1764649 right? so we can close it?
<mup> Bug #1764649: juju caas remove-relation does not work <juju:New for wallyworld> <https://launchpad.net/bugs/1764649>
<kelvin_> anastasiamac, yes, it's been resolved, we can close it.
<wallyworld> kelvin_: there's a method on application IsRemote() - use that instead of NotFOund check
<kelvin_> wallyworld, ok, ic. thanks
<kelvin_> anastasiamac, I just closed it. sorry for the confusion.
<kelvin_> wallyworld, got a tiny PR, would u help to take a look when u got time? thanks https://github.com/juju/juju/pull/8909/files
<manadart> stickupkid: This one is almost too trivial for review, but here 'tis anyhow: https://github.com/juju/juju/pull/8910
<stickupkid> manadart: haha - to easy :D
<stickupkid> manadart: i've turned on verbosity on tests (-check.v) in a branch, that will hopefully tell me which test is causing most if not all merges to fail
<stickupkid> manadart: commit for reference: https://github.com/juju/juju/pull/8894/commits/abe85287b6053bcc798b49e18a7c846af9a344ae
<stickupkid> manadart: i believe it's down to luck if your merge lands now, 1 out of 3 requests tend to merge
<manadart> stickupkid: OK, thanks.
<manadart> stickupkid: Are you going to land the approved PRs?
<stickupkid> manadart: would love too
<stickupkid> manadart: $$merge$$ just doesn't like me
<stickupkid> manadart: see http://ci.jujucharms.com/job/github-merge-juju/706/consoleFull
<stickupkid> manadart: check out this - https://github.com/juju/juju/pull/8894
<stickupkid> manadart: about 5 merges :(
<stickupkid> mandart: it keeps getting stuck in the same place - github.com/juju/juju/cmd/juju/application
<stickupkid> jam: any thoughts on the hanging tests when trying to merge?
<ybaumy> https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/608
<ybaumy> somebody please take a look at this
<ybaumy> logs from the cdk field agent are attached
<los_> Hi!  I'm using Juju+Maas.  Do I need sudo for any of add-cloud/add-credential as per https://askubuntu.com/questions/1053630/juju-ever-need-sudo-for-install ?
<hml> externalreality: good morning - i looked at the pr and responded to some stuff.  did I miss any outstanding questions?
<externalreality> hml, good afternoon - Let me check I see you've responded to some stuff but 2 minutes ago
<externalreality> hml, let me whats new
<stickupkid> rick_h_: in order to differentiate between lxd and lxd-remote for reporting, you might have to be explicit in the cloud spec about which one you want to interact with
<stickupkid> rick_h_: https://pastebin.canonical.com/p/Y7JNphH8gr/
<rick_h_> stickupkid: looking
<rick_h_> stickupkid: k, interactive isn't the normal interactive from add-credential but used in azure as you're sent over to azure to fill out data
<rick_h_> stickupkid: or is interactive the trust password setup
<rick_h_> ?
<stickupkid> rick_h_: interactive in this case is pointing to a file, but yeah, that will be trust password later on
<rick_h_> gotcha ok
<stickupkid> s/file/cert file/
<stickupkid> rick_h_: it's more the fact that we now have two different lxd providers, which i'm not sure about
<stickupkid> lxd and lxd-remote
<rick_h_> stickupkid: cool
<rick_h_> stickupkid: well I'd ask if it's lxd-remote or lxd-cluster it should be?
<stickupkid> rick_h_: i guess you could have one node in a lxd-cluster
<rick_h_> stickupkid: right, you'd have "turned on lxd cluster"
<stickupkid> rick_h_: https://pastebin.canonical.com/p/TnFHbvgMYG/
<stickupkid> rick_h_: so when adding a cloud, it will come up with two different cloud types
<rick_h_> stickupkid: yea, I think that we need that cluster word since that's the tutorial/wording of setting it up in lxd
<rick_h_> stickupkid: hmm, yea...but can you add a lxd? /me looks if that's there currently
<stickupkid> rick_h_: ok, that's fine, quick change, but we ok with that setup, because it's a bit weird
<rick_h_> stickupkid: right, so lxd doesn't currently show in add-cloud
<rick_h_> stickupkid: so it should just be one lxd in there, and I'd use lxd-cluster vs "remote"
<stickupkid> rick_h_: which branch?
<rick_h_> stickupkid: current 2.4.0 release
<stickupkid> ok, that's interesting
<stickupkid> rick_h_: glad you noticed that, was a nice easy fix :D
<rick_h_> stickupkid: :)
<rick_h_> stickupkid: thank you for bringing up something that didn't quite look right
<rick_h_> appreciate the eye for "hmmm, this isn't ideal"
<stickupkid> rl
<stickupkid> rick_h_: https://pastebin.canonical.com/p/X8zV8gFPNk/
<rick_h_> stickupkid: yea, that looks peachy to me
<stickupkid> rick_h_: that looks better, i'll do some testing, to make sure it works well
<rick_h_> stickupkid: <3
<knobby> how does juju know where to deploy subordinate charms? Does it somehow figure it out from the relation information in the bundle.yaml?
<rick_h_> knobby: exactly. Subordinates don't exist by themselves and only come into play once related to something in the model
<knobby> rick_h_: if you don't mind me digging into specifics here, why is it that in https://api.jujucharms.com/charmstore/v5/canonical-kubernetes/archive/bundle.yaml flannel is created on the masters and workers, but not etcd. How does juju know that the relation to etcd doesn't mean to attach flannel to that machine as well?
<rick_h_> knobby: looking sec
<knobby> no rush, rick_h_
<rick_h_> knobby: so when you look at the relation definitions here: https://api.jujucharms.com/charmstore/v5/~containers/flannel/archive/metadata.yaml
<rick_h_> knobby: you can see that two of them are "container" scoped which basically means it needs to be installed/setup on the machine for those relations
<rick_h_> knobby: but note not for the cni relation which is using etcd for data storage. So it's more like a mysql/postgres db in that relation context. You'd not install your app into the same machine as your data store
<knobby> ok, so if you build a subordinate and don't have container scope, you end up with something that won't deploy without placement?
<rick_h_> knobby: check out https://docs.jujucharms.com/2.4/en/authors-subordinate-applications and the section "Declaring subordinate charms"
<knobby> rick_h_: I completely get the desire not to install on etcd, I just didn't see how juju could determine that was the intent
<rick_h_> knobby: even with placement I don't think it'll deploy tbh
<knobby> ok, thanks
<rick_h_> knobby: so it's doing that because it knows the relation from flannel->etcd is on the endpoint cni, and that the cni endpoint is not container scoped
<knobby> thanks, rick_h_
<veebers> Morning all o/
<hml> morning veebers
<thumper> morning team
<thumper> veebers: seems we have some confusion around the snap build jobs, see rick_h_'s email
<rick_h_> thumper: morning
<veebers> thumper: looking now
<veebers> rick_h_: ah, it was probably disabled in one of the releases and not re-enabled. Seems like a process failure
<veebers> rick_h_, thumper actually I think I may have disabled it during a release as I wasn't so sure myself
<rick_h_> veebers: hmm, ok. I didn't know of any reason for a release we'd have stopped the 2.5 dev builds since I started them up after 2.4.0 final
<rick_h_> veebers: but maybe they were turned off manually as part of that
<veebers> rick_h_: I think I was confused about what might get overwritten and did both jobs,  sorry
<rick_h_> veebers: ok, all good.
<rick_h_> veebers: I'll have to ponder if we can do any sort of warning flag on this. It's so easy to miss it for a length of time because we're used to the snaps being automatic
<veebers> rick_h_: maybe it could be as easy as having a rotating card between teams that we check the output of 'snap info juju' at 1 or 2 standups a week
<rick_h_> veebers: but but but, what about a giant dashboard with pretty pictures and things go red when they're not updated after 3 days and if can email everyone and ... or maybe we just check a couple of times a week :)
<veebers> rick_h_: hah ^_^, we could put an html file in people.c.c that is either red or green as part of the process if you like, <body style="background-color: red"></body>
<hml> whoâs the current expert on the juju/interact/pollster code ?  and juju add-cloud schemas?
<hml> thumper, rick_h_ , wallyworld ^^  :-)
<vino> hi thumper
<thumper> vino: you're up early
<vino> becuase i slept early.
<vino> :)
<vino> have a min
<vino> its regarding the PR.
<vino> thumper: i havent landed it. Apologise. Because the tweaks u have asked me to do. esp the state obj ModelTag().
<vino> What you have mentioned is reasonable to add there. But created lots of ambiguity in other facades.
<vino> which is not relevant to fix for that PR
<vino> however i did push the commit. Still more issues to fix becuase of the ModelTag() addition in state obj.
<thumper> I'm not sure I understand
<thumper> what are the issues to fix?
<vino> ok 1:1
<thumper> sure
<los_> Is sudo needed for add-credential when you first join Juju->MaaS?
<los_> ...I'm getting a permission denied on doing add-credential onto a by-the-book new install
<thumper> los_: I don't think so
<thumper> permission denied on what?
<thumper> los_: and which version of juju?
<los_> "Latest" one sec for details.  This on 18.04 for the control node.
<los__> Juju is 2.4-rc3-bionic-amd64 and MaaS has no --version (I just installed it yesterday)
<los__> I zapped the .local/share/juju between iterations
<los__> MaaS version from the webUI is:  2.4.0~beta2 (6865-gec43e47e6-0ubuntu1)
<veebers> thumper: could the unit test failures be related to the mongo issues mentioned re: the pr check/merge failures? It seems to largely be the same test(s) failing across the arches
<thumper> veebers: which failure is it?
<veebers> thumper: rick_h_ mentioned that it appears to be mongo related, when I asked him if it was a ppa add failure that was causing the PR grief
<thumper> los_: what is the permission denied error? is there more shown than just that?
<los__> thumper: Details here: https://askubuntu.com/questions/1053630/juju-ever-need-sudo-for-install
 * thumper looks
<thumper> hmm...
<los__> thumper: I just zapped my .local/share/juju, did add-cloud, ok, then $ juju add-credentials blah and got "ERROR cannot get current controller name: permission denied"
<veebers> thumper: ok, so looks like the PR failures are the same as we're seeing in the ci unit test failures (just a quick eyeball)
<veebers> as to the reason of failure I dn't have any more info
<los__> This is different than the error in the SO so sorry for that
<thumper> los_: there was a bug around people using sudo to do things by mistake and it changing permissions on the user files to root
<thumper> we had a bug fix for that recently, but I can't remember exactly where it went
<los__> thumper: This page https://docs.jujucharms.com/2.4/en/clouds-maas has the sequence add-cloud, add-credential, bootstrap ... is that right?
<thumper> los_: can you pastbin 'ls -al  ~/.local/share/juju/ ' ?
<los__> thumper: thanks, that's cool...sudo is a button pushed all too often.  The how-to page (above) didn't say to use sudo but....
<thumper> no, it shouldn't need sudo
<los__> thumper: Which pastebin is the one that works this week :) ?
<thumper> pastebin.ubuntu.com
<thumper> that works
<thumper> never fails me :)
<los__> thumper: oh ok thanks :) was shocked (but shouldn't be) that the "real one" is gone.  Didn't notice!
<thumper> there was a real one?
<los__> thumper: you know, the various public ones that got wonky and went poof (full of hacks)
<thumper> the other thing I'm thinking... is around the validation of the oauth token, but I would have though that if the validation failed, it would have a better error message
<thumper> when we add a credential, a validation check is made to the endpoint to check the validity of the credential
<los__> thumper: https://pastebin.ubuntu.com/p/SsBcx4SkJk/
<los__> thumper: https://pastebin.ubuntu.com/p/Wc5XGysbmX/
<thumper> ok...
<thumper> how about running the juju add-credential with --debug?
<thumper> I think you may have found a real bug... but one the developer didn't hit because they already had a current controller
<thumper> but it is weird...
<los__> thumper: Glad to... so I do this to get fresh API key: $ sudo maas-region apikey --username=los
<thumper> ok
<los__> thumper: ...and "los" is a valid (non-admin) user (is that the bug?) that is showing up in the MaaS webUI
 * thumper nods
<los__> thumper: Here's the (getting longer, most-recent on top) paste with that debug: https://pastebin.ubuntu.com/p/HMQcrQzNWF/
 * thumper looks
<thumper> los_: looks like you have another file lying around from a previous sudo
 * thumper gets particular location
<los__> thumper: yay...I was going "Hey, I should strace this..." locations are good tho!
<los__> thumper: (It's been like 2 years since I messed with MaaS / Juju and wow, has it changed for the better!)
<thumper> ok...
<thumper> go and look for /tmp/juju-*
<thumper> there may be something like /tmp/juju-store-lock-(hash)
<thumper> probably owned by rood
<thumper> root
<los__> thumper: "23:08:33 INFO  cmd supercommand.go:465 command finished" wo0t!  Tanks!
<los__> thumper: So, to the "other bug" :)
<thumper> so that was it?
<thumper> I think we need a better error
<thumper> to lead users to the problem
<los__> thumper: I did a bootstrap several times and by the console of the MaaS (I agree!) the config script was "done" in 62 seconds but the lonnnnnnng timeout on the bootstrap had it hang for a go-see-a-movie amount of time
<los__> thumper: I have a getting-longer set of notes about somethings I've seen, also errors that a vague etc.  Will supply!
<thumper> ok...
<thumper> so... when you bootstrap, maas considers it done when it has installed the OS on the machine and handed it off
<thumper> juju gets the machine and runs cloud-init on it
<los__> thumper: like "los@davros:~$ juju add-credential maas-cloud  <newline> ERROR cloud maas-cloud not valid"
<los__> thumper: Right...but the bootstrap command it self takes (1hr?) a long time to "finish"
<thumper> what juju is doing is running apt-get update / upgrade on the os
<thumper> installing a few packages
<thumper> and configuring mongo and the agents
<thumper> it shouldn't take an hour...
<los__> Right it gets to that point...but then
<thumper> unless your internet connection is very small pipe
<los__> thumper: So now I'm doing (150Mb/sec): JUJU_LOGGING_CONFIG="<root>=TRACE" time juju bootstrap daleks davros
<thumper> oh...
<thumper> don't do that
<thumper> root level TRACE is a massive firehose
<los__> thumper: Doh... (and its deploying 16.04...that's normal-good yah?)
<thumper> you only really want to trace particular modules
<thumper> yeah, we won't default to bionic until after 18.04.1
<thumper> you can ask for bionic though
<los__> thumper: nah, its cool, as long as it works :) in a typical way so I can get onto the next (dev) steps...
<thumper> for you 1 hour bootstraps
<thumper> a thing to do is to ssh in after it is done
<thumper> and look at the cloud-init logs to see if we can work out what is taking all the tiem
<thumper> /var/log/cloud-init......
<los__> thumper: what trace level would be helpful?  Right. I read about the ssh (very cool) I will do a no-trace bootstrap right now.  I have a console monitor plugged into that unit.
<thumper> I'm sure one of those has times in it
<thumper> just do this:
<thumper> time juju bootstrap daleks davros --debug
<thumper> that effectively is like <root>=debug
<thumper> the controllers will inherit that config
<thumper> and debug will be enough
<thumper> tracing is too much unless you know what you are looking for, and turn it off again
<los__> thumper: got it running with that --debug
<thumper> los_: is this your first go with juju 2.x?
<los__> (all in all: MaaS is wayyyy faster/better than my previous experiment, and Juju is 10x what it was) Yes.  I was 1.3'ing it I think...lonnnnng time ago
<los__> Back when half the info was "watch Jorge's vids"
<thumper> haha
<los__> thumper: (fetching Juju GUI 2.12.3)
<thumper> 2.x is way better than 1.25
<los__> thumper: Q: I have the MaaS stack on a sep, 2ndary network.  Does routing need to be on between it and the upstream "real" connection?
<thumper> ok, if it is getting to fetch the gui, it is part way there, and I think done after the update/upgrade
<thumper> yeah, juju expects to be able to reach out... there are proxy config you can set up if using proxies
<thumper> it needs to download the agent binaries from streams.ubuntu.com
<los__> thumper: aha, it handled my "no nodes in AZ default" thing well.
<thumper> there are ways to bootstrap completely off-line
<los__> thumper: hmm...ok let's see how this goes.  (obv'ly it'll be a while with 16.04 loading)
<los__> thumper: thanks for the help: I'm glad to get to have a chance at seeing a useful error instead of one of my own making
<thumper> well, if it got to fetching the juju gui, 16.04 is up and running
<los__> thumper: I'm just going by what is the latest message on the juju...
<los__> thumper: well, the MaaS console too says that (Deploying...)
<thumper> I *think* the update/upgrade is before fetching the gui
<thumper> I don't bootstrap onto maas much myself though
<los__> thumper: I think so too.  There'd be nowhere to fetch TO... oh, another thing I noticed, wow, the images are way smaller!
<los__> thumper: this is all for a live demo (with 3 node hardware behind plexi sound barrier for drum risers) of MaaS / Juju on Fri at our OKC LugNuts group
<los__> thumper: Oklahoma City, USA
<thumper> nice
<los__> thumper: the console VGA shows its blazing away installing all kinds of packages (was at libc-bin)
<los__> thumper: I know too many top-down devs (JS, Python) that are not SysAd/DevOps that need this, and so to show "hey this is not brain surgery...run your stack at home on-demand"  SetiAtHome is my 1st charm I'm working on, then ngrok, then the Flamenco render farm controller for Blender rendering.  The last one won't be done (beast mode with MongoDB etc.) by then.
<veebers> anastasiamac: a thought, we could probably update the release process so that a stable release auto updates the bugs (fixed released, move to next milestone if not fix committed etc.). Although I'm not up to speed with the previous discussions surrounding this earlier
<thumper> los_: that is very cool
<los__> thumper: thanks, trying to share since our local scene is cool and helps me more...
<thumper> veebers: we had strong guidance that a bug shouldn't be maked fixed released until it is in a non beta non rc release
<los__> thumper: the classic "mysql/mediawiki/haproxy/expose" demo blew these guys minds, esp. when "oh you can make this 100x bigger in minutes"...like for some viral thing that is blowing up...they made funny faces
<thumper> veebers: so our .0 release process should go back through the older milestones
<thumper> los_: yeah, we need to get better at telling our story around this
<thumper> a big focus for us recently has all been around openstack and kubernetes
<thumper> los_: have you looked at JAAS?
<thumper> jujucharms.com
<thumper> there are canonical hosted controllers, so people can just start using the public clouds
<veebers> thumper: ack, it would only be for stable releases that we do some sort of automated bug updating etc.
<los__> thumper: I tell ya, except for aws being so slow to provision / de- it was a killer demo to these guys esp. when I tore it down to 1/1/1 again.
<los__> thumper: YES!  I was shocked to see JAAS!  Its an obvious idea once you see it but it still surprised me
<thumper> from the user's point of view, it is one controller
<thumper> and many models on that controller, sometimes in different clouds or regions
<los__> thumper: right makes sense.
<los__> thumper: this is where we are, The Time of The Great Pausing: https://pastebin.ubuntu.com/p/CfzDfNbPqW/
<thumper> los_: fyi, we are in the process of moving email discussions to our new discourse instance: discourse.jujucharms.com
<thumper> los_: are you installing juju from a snap?
<los__> thumper: very cool.  Discourse has come a long way too.  Ok the console of the machine (yes, with --beta and --classic) says something like "Cloud init   v 18.2 finished at..."
<thumper> los_: right, you might want to move off --beta to release (or candidate)
<thumper> we need to fix our snap channels...
<thumper> beta still has rc3 whereas stable is .0
<thumper> candidate is latest .1 builds
<los__> thumper: Ok I will then... this is the network config: https://pastebin.ubuntu.com/p/fbqB9Vf7zt/
<thumper> los_: I think the output of fetching the gui is a lie
<thumper> I think it has just looked up the version
<los__> thumper: you know, with messages the "liar" is just an old message...needs more messages?
<thumper> the time at 28 minutes past is when juju bootstrap was able to ssh into the instance
<thumper> and maas should now show it as running
<thumper> however,
<thumper> this is where juju is now doing the apt update / upgrade
<thumper> and installing packages
<thumper> downloading mongo etc
<los__> thumper: MaaS webGUI is showing the unit on, with Status "Ubuntu 16.04 LTS" and my user
<thumper> I *thought* that we had more output on the script when running with --debug
<los__> thumper: NOTE: as per before there is no routing between my 192.168.29.X network (upstream to internet) and the 192.168.4.X net with the workers on it
<thumper> los_: this might be the cause of the great pause
<thumper> do you have a proxy set?
<los__> thumper: 18.04 has some strong differences, and I have two serious netplan bugs brewing (outrageous!) but having LOOKED INTO netplan, wow, there's some powerful stuff in there for "oh bond all this together into a bridge and ..." stuff
 * thumper nods
<thumper> we are rapidly getting out of my knowledge area... sorry
<los__> No proxy set, but, I have seen the "set it in clouds.yaml" ...since the workers can reach out via the HTTP proxy and get their stuff (it seems, since all those packages went whirling by)
<thumper> sorting out the routing etc
<thumper> so...
<thumper> perhaps they have outward routing but not inbound?
<thumper> if that is the case, it should be fine...(ish)
<los__> thumper: no problems... I can set routing between the two interfaces etc...but I had gotten to this point previously by running juju bootstrap with evil sudo...so this is one big improvement that will help me get to the next step
<anastasiamac> veebers: yeah, but we could do it f-2-f at sprint. this only applies to .0 releases and we r not likely to b bitten by it more than once until sep
<los__> Well there's the httpd proxy in MaaS ...that's the only way they can reach out to the world
<thumper> ok...
<thumper> then the instances are probably coming up pointing to that proxy...
<thumper> which means juju should curl the agent binaries just fine
<thumper> los_: I'm going to have to head out shortly, but let us know how it goes
<los__> if I control-\ it there are good clues about what it was trying to do, but, I'm gonna let it go and see what timeout natural gives me.
<los__> thumper: thanks a ton, seriously, this is "phew" for Friday demo, I'm getting there.
<thumper> nice
<los__> thumper: dev'ing the charms with aws provider in parallel
<los__> thumper: gonna have fun hitting a script and having machines turn on in performance mode and be really annoying
<los__> thumper: thanks again.
#juju 2018-07-11
<anastasiamac> simplest review ever, anyone? https://github.com/juju/juju/pull/8913 :D
<veebers> wallyworld: I'm pretty sure I want to pull in and import k8s.io/kubernetes/pkg/credentialprovider as it provides DockerConfigEntry and DockerConfigJson, as simple as adding to dependencies.tsv and godeps-ing right?
<wallyworld> veebers: yep
<wallyworld> veebers: run go get first
<wallyworld> then run godeps
<veebers> wallyworld: ack, cheers
<admcleod> what blatantly obvious and silly thing am i doing wrong/missing here: https://paste.ubuntu.com/p/zvz74BWp68/
 * veebers waits for go get, 550M later . . .
<admcleod> never mind. it was very obvious and silly
<thumper> veebers, wallyworld: we need to fix our snap beta channel
<veebers> thumper: oh?
<thumper> veebers: run snap info juju
<thumper> beta is behind candidate and stable
<thumper> the way the channels are they should be increasing levels of risk
<thumper> so for us, I think beta should match candidate
<thumper> until we are ready to announce a beta for 2.5
<veebers> thumper: there is a snap (snapcraft?) command you can run to point beta -> candidate, I can't recall it right now, let me thinkj
<thumper> veebers: we should have it automated...
<thumper> the interesting bit is how to know when we swith away from having match candidate
<thumper> and on to it's own thing
<veebers> thumper: aye, was just going to ask how we might consider making that decision in an automated fashion
<veebers> thumper: so in this case candidate and beta will be the same, when we're posed to release 2.4.1, candidate should be frozen and beta continue to follow 2.4 branch tip
<thumper> yeah...
<thumper> until we are ready for a 2.5 beta
<thumper> so ... it is a bit awkward
<veebers> right, although, perhaps beta should follow edge (2.5)?
<veebers> sorry, follow 2.5 branch tip (which just happens to be develop at thsi point)
<veebers> thumper: I *think* for now that "snapcraft close juju beta" will make beta follow candidate
<veebers> wallyworld: I might be being dumb, a service has 1 or many units right? So EnsureService will be called first or at least always called, and EnsureUnit called if extra units are added? (i.e. so ensuring secrets are created belongs in EnsureService, which they can then be consumed in EnsureUnit . . .)
<anastasiamac> veebers: i was under impression that we no longer have services but applications? if u mean applications, i believe they can have 0+ units
<veebers> anastasiamac: lol my bad you're right, should have said app. The first line in EnsureService is "creating/updating application . . ." ^_^
<anastasiamac> veebers: \o/ we are working on renaming all service* reference but obviously non-user-visible occurences have low priority... fwiw, it very rare and kind of strange to have an app with 0units.. however we do not prevent it
<thumper> wallyworld: what is externalcontrollerupdater worker?
<thumper> wallyworld: it is failing intermittently on merge
<wallyworld> veebers: not EnsureUnit, that is an old method I have removed
<vino> i am facing that issue
<thumper> vino: yeah, I was looking at your merge
<vino> externalcontrollerupdater worker failure.
<wallyworld> veebers: when a unit is added, juju increases the replica count on the deployment controller
<veebers> wallyworld: lies, I can see it here in my editor
<thumper> vino: just ask for merge again
<wallyworld> veebers: you may not have latest code
<wallyworld> or my PR got rejected again
<vino> i am trying to build again
<wallyworld> nothing calls that method
<veebers> wallyworld: I'm sure I pulled yesterday just before working on this. I'll check
<anastasiamac> or veebers added it himself :D
<veebers> wallyworld: ok cool, I'll ignore it for now
<veebers> hah ^_^
<wallyworld> veebers: even if it is there, nothing calls it
<vino> :D
<veebers> ack, thats something I should have checked as well (is this called)
<wallyworld> thumper: that worker watches for changes to the api addresses of another controller in cmr scenario
<veebers> anastasiamac: I should create a charm called "IDoWhateverIWant" that will have 0 units
<anastasiamac> veebers: i like it but our charms are not camelcased... then again u do indeed do ^^
<veebers> hah ^_^
<veebers> thumper, wallyworld, vino: Huh, I wonder if the charmstore-url config additions introduced that, but surely I would have seen that on the test runs on my PR?
<vino> veebers: after my last commit i was able to see things successfully built. havent touched that part of code.
<veebers> wallyworld: git question, if you and me have been ratting around in k8s.go, should I: commit what I have, git fetch develop, git rebase<some args> develop?
<vino> thumper: just going thru ur review comments. quick question. the exportbundle.go inside cmd/juju/bundle/
<vino> is that corret place to be in or it should be inside cmd/juju/model/ folder
<thumper> vino: I don't really care
<thumper> either is fine by me
<thumper> developer's choice
<vino> ok.
<vino> i am thinking of moving inside the cmd/juju/model folder
<vino> as it is related to model
<anastasiamac> wallyworld: pr for 2.3 https://github.com/juju/juju/pull/8914 to uninstall rather than bounce a worker for bug 1781096 PTAL?
<mup> Bug #1781096: "model-upgrader" manifold worker returned unexpected error: model has been removed <canonical-is> <juju:Triaged> <juju 2.3:In Progress by anastasia-macmood> <https://launchpad.net/bugs/1781096>
<wallyworld> ok
<anastasiamac> ta
<wallyworld> anastasiamac: errors.IsNotFound(err) doesn't apply for facade errors right? we need to use a params IsCodeNotFound() helper?
<anastasiamac> k
<anastasiamac> wallyworld: thnx! updated
<wallyworld> looking
<wallyworld> anastasiamac: done, lgtm, i did request an extra test, see what you think
<vino> thumper: reading thru ur comments just reminded me that I missed a unit test for version chk failure in the Pr just got merged. I have initiated to add the same in bundleSuite and when reverting the changes its lost. apologise. I am adding unit tests for client facade will add here in apiserver facade too.
 * vino going for lunch.
<thumper> vino: that's fine. I figured you'd add one when you start the implementation
<ybaumy> wallyworld: thumper: https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/608
<ybaumy> if you guys have any idea ..
<wallyworld> ybaumy: i asked the k8s guys and they said your setup was vms on a mac and those vms could not write to your disks. if that's the issue, that not something we can really solve as it is a config/setup issue on your end
<wallyworld> you need to configure your vms to get full access to the underlying hardware
<wallyworld> i don't own a mac so can't really help much for that
<ybaumy> hmm i dont understand.. could not write to my disks... but the ubuntu host for for juju localhost is already writing to that disk isnt it? and everything else is just a virtual layer if i understand that?
<ybaumy> if there was a general problem i would see filesystem device errors on my ubuntu vm running in vmware?
<ybaumy> but it aint so
<wallyworld> ybaumy: the k8s guys said that the error logs we full of errors saying something like "write permission denied" when the k8s nodes tried access the disks
<wallyworld> i have no idea how to fix that myself as i don't run a mac
<ybaumy> wallyworld: will test this today on vmware vcloud director which is pretty much vpshere
<thumper> it seems very weird
<ybaumy> this is running on intel
<ybaumy> basic esx
<thumper> ybaumy: this is outside my areas of expertise
<thumper> what is the disk layout of these machines?
<ybaumy> its pretty much the normal vmware vsphere esx environment .. on top we have vcloud director running. i will setup a vm there with ubuntu 1604 and then make juju localhost as i have here
<ybaumy> vcloud director is a overlay for vsphere. its thought to be for service providers
<ybaumy> the disks are vmdk's or ovf
<ybaumy> as far as osx setup goes.. i still believe there is something fishy with the apparmor/lxc when i look at dmesg on boot
<ybaumy> i will get back to that tonight
<ybaumy> have to shower now and get ready for work
<ybaumy> later
<anastasiamac> wallyworld: did u want to check the added test or heppy for me to land as-is?
<wallyworld> nah, i trust you
<anastasiamac> i'll frame it \o/
<veebers> Hmm, adding a dep import has borked my test with a "panic: /tmp/go-build353638742/b001/provider.test flag redefined: log_dir" error, as per https://pastebin.canonical.com/p/tYVSMXYNFV/ any thoughts on how to fix it?
<veebers> wallyworld, could you take a look? ^
<wallyworld> veebers: soon, otp
<veebers> ack
<wallyworld> veebers: do you have a diff?
<wallyworld> did you make any source code changes in juju
<veebers> wallyworld: to "fix" it, remove the "k8s.io/kubernetes/pkg/credentialprovider" import (and remove use of credentialProvider so it compiles) :-) I'll paste diff now for further context
<veebers> wallyworld: http://paste.ubuntu.com/p/rJ3HDVrWQD/
<kelvin> wallyworld, would u take a look this small PR https://github.com/juju/juju/pull/8909 ? thanks
<wallyworld> kelvin: jump in HO?
<kelvin> yup
<wallyworld> veebers: what's the line in dependemcies.tsv?
<veebers> wallyworld: oh, I haven't added anything there yet :-\ I just did a go get
<wallyworld> ok, np
<wallyworld> i can see the error now
<wallyworld> veebers: we need to flatten the dependnecies - multiple k8s packages import the same package. we don't have the tooling for that yet
<veebers> wallyworld: ok, should I just 'vendorise' the structs that I need from it? Shouldn't be much at all
<wallyworld> veebers: for now, i think that's all we can go yeah
<wallyworld> add a TODO
<veebers> wallyworld: it's isolated as we use the structs to  Marshal a json []byte, so don't pass them to anything external
<veebers> can do
<wallyworld> yeah, i check that also and came to same conclusion
<wallyworld> vino: what's your question?
<vino> wallyworld: i am trying to initialize the facade.Context which can be used to be passed in NewFacade. I use mockState and other auth params to initalise the ctx.
<vino> aparanetly it looks for *state.State
<wallyworld> no don't do that
<vino> i am not sure if it is correct way
<wallyworld> you had this solved earlier
<vino> oh ok.
<vino> yes.
<wallyworld> there needs to be 2 New methods
<wallyworld> one that takes context
<vino> yes. correct.
<wallyworld> and another that takes the interfaces for the bits needed
<wallyworld> the tests will use the one that takes the interfaces
<wallyworld> and pass in the mocks
<vino> But for this api verification i am trying to call NewFacedeV1(ctx)
<vino> wallyworld: I resolved the case which u mentioned earlier. But is this feasible using mocktest ?
<wallyworld> you can't do that from tests
<vino> aha.
<vino> ok.
<wallyworld> there should also be a New for V1 that takes the correct params
<wallyworld> not ctx
<vino> i do see in places like facades/client/client_test.go they do initialze. but they do use JUJUConnSuite
<vino> ok. Got it. adding a function as u mention is a good solution.
<vino> ok thanks wallyworld. Thats clear for me.
<wallyworld> vino: no worries, all these New functions get confusing
<vino> Its ok wallyworld as and when it work on those areas its becoming clear. ty.
<wallyworld> great :-)
<icey> I have maas in a little lab setup; I can deploy to it via maas, but when I try to bootstrap the juju controller (targeting a machine that works fine otherwise) the bootstrap bails with "ERROR failed to bootstrap model: bootstrap instance started but did not change to Deployed state: instance "tk36nk" is started but not deployed" - do I just need to
<icey>  increase timeouts or is there possibly something else going wrong?
<icey> looks like it bailed at a hair over 20 minutes
<wallyworld> kelvin: trivial PR to fix cory's service port error https://github.com/juju/juju/pull/8917
<wallyworld> icey: there's a bootstrap-timeout parameter you can try, juju bootstrap --config bootstrap-timeout=1200 <--- time in seconds
<icey> wallyworld yeah, I got it to bootstrap on a higher timeout ; thanks!
<wallyworld> great!
<kelvin> wallyworld, looks awesome!
<wallyworld> gr8 ty, will land and cory will be happy
<los__> icey: I am having something like that too will try that
<los__> icey: on your lab setup: is it routable between the real internet and (assuming) separate workers-net?
<icey> los__ my MAAS vlan can access the internet just fine, yeah
<kelvin> wallyworld, got this PR for fixing https://bugs.launchpad.net/juju/+bug/1777841 and https://bugs.launchpad.net/juju/+bug/1780154 ->  https://github.com/juju/juju/pull/8909, would u take a look tmr? thanks.
<mup> Bug #1777841: unit-remains in goal state after being flagged for removal <canonical-is> <juju:Triaged> <juju 2.4:In Progress by kelvin.liu> <https://launchpad.net/bugs/1777841>
<mup> Bug #1780154: goal-state error on remote relation <cross-model> <juju:In Progress by kelvin.liu> <https://launchpad.net/bugs/1780154>
<wallyworld> sure
<wallyworld> might try tonight if i get a chance
<wallyworld> just finishing a PR
<kelvin> wallyworld, not urgent, take ur time, thanks!
<stickupkid> manadart: yo, have you got 5 minutes?
<manadart> stickupkid: Sure. Stand-up HO.
<stickupkid> manadart: CR please https://github.com/juju/juju/pull/8918
<manadart> stickupkid: Will look in a mo'
<stickupkid> manadart: perfect, thanks :)
<manadart> stickupkid: Approved it.
<stickupkid> manadart: spot on - thanks
<los_> Hey all: seeing "node post-installation failure - 'cloudinit' running modules for config" ...idea on how to find details? (this message masks lots of things from network probs and actual bugs it seems)?
<los_> Box-stock install of latest (non-beta) Juju on MaaS, and 1) no gui was started because 2) juju status shows machine "pending" and Agent "allocating" and App is "waiting"
<los_> Nothing in /var/log/cloud-init.log or -output.log looks fail
<manadart> jam: Looked at the pruning PRs. Approved both, but some comments on the txn one.
<los_> This is weirder: my juju bootstrap "failed" silently, but, the controller is working, and, I remove-application'd juju-gui and a deploy now is firing up another node and provisioning it...!
<rick_h_> los_: the GUI is built in and not something you deploy or remove
<rick_h_> los_: I'm not sure what you're adding there?
<los_> Looks like I was able to reproduce this bug: https://bugs.launchpad.net/juju/+bug/1642868
<mup> Bug #1642868: remove-application does not remove failed application <juju:Triaged> <https://launchpad.net/bugs/1642868>
<los_> But the solution from the duplicate works, my bad! $ juju resolve --no-retry haproxy/0
<los_> rick_h: I'm doing a stock bootstrap, but, I get cloud-init errors and there is no juju-gui.... but my juju controller still works (I can deploy and hit things)
<los_> I ssh onto boxes and ping the world, nslookup, etc. and (after installing lynx) they can hit http,
<los_> I found out that it seems that full networking / routing to the world is now required for the MaaS worker machines
<los_> rick_h_: I'm trying the good ol' mariadb+mediawiki demo out and can't get that to work.  Its been since 1.2x for me on Juju so lots changed
<stickupkid> manadart: this is the lxd default region PR https://github.com/juju/juju/pull/8920
<maaudet> Is there a reason why, when I build a charm using "charm build" I get a different default output folder if I set the path to my layer (builds/) vs if I simply use the name of the layer (trusty/) ?
<manadart> stickupkid: Approved it.
<los_> Hey all.  @thumper: Made progress since last... had to turn on full-routing between the real net and the maas net.  Bootstrap does not hang; but I get cloud-init fail, with no good info in the /var/log/cloud*log
<los_> thumper: the weird thing is juju-gui is down, but, the controller is up (can deploy, etc.)
<rick_h_> los_: what do you mean by the gui is down?
<los_> rick_h: I can't connect to it
<rick_h_> los_: does the command 'juju gui' not give you the address info and that'll load up for you?
<los_> rick_h: I do $ juju gui ... get that URL, and no connection
<rick_h_> los_: what's it say? is it on a different network interface that you didn't see/have access to?
<rick_h_> los_: but you can speak to the controller with the juju client?
<rick_h_> los_: e.g. juju status/etc?
<los_> rick_h: when I ssh to the box(es) I can do all the network things...ping, nslookup, (and after install lynx) hit external web pages etc
<rick_h_> los_: try using the --debug flag on the juju status command and see if the IP address you're connecting to matches the GUI url
<los_> rick_h: Yes, and even deploy NEW things
<rick_h_> los_: right, that's outbound traffic
<rick_h_> los_: right, so compare the addresses your juju client is using to the GUI url please
<los_> rick_h: The IP / port are both the same
<rick_h_> los_: hmmm, I find that darn funny that it won't connect then.
<los_> rick_h: I am embarassed that I'm starting to think its browser->maas_controller->maas problem... but juju is on the maas_controller...so routing
<rick_h_> los_: oh, you're issuing the juju commands from MAAS on the MAAS network while your local browser isn't on that network?
<rick_h_> los_: I use sshuttle to help with that in my MAAS.
<rick_h_> los_: https://github.com/sshuttle/sshuttle
<los_> rick_h: That's a proxy type thing?  I'll check it out.  I'm firing up ngrok to see if I'm nuts.  I (thx!) used maas/juju a while ago when it was "MaaS must be on private network, and maas-controller will proxy..." is that still a true setup idea?
<rick_h_> los_: there's an apt package for it and so my MAAS network is a 10.0.0.0 subnet and I do something like sshuttle -r rick@mymaas.address 10.0.0.0/24
<rick_h_> los_: so MAAS can proxy traffic outbound but won't do anything inbound.
<rick_h_> los_: and honestly it's less maas proxying as you can setup the MAAS node as a forwarder
<rick_h_> los_: when you go to load the GUI you need to get inbound via the maas  and to the address of the juju controller to get at the http server where you get the web pages from
<rick_h_> los_: so yea, sshuttle does a tunnel for you over SSH so that you can get at the private IPs from your local laptop/desktop
<los_> rick_h: OHhhhhhhhh I don't need the iptables shenanigans then!?
<rick_h_> los_: you might need the IP tables bit to allow the MAAS nodes to tunnel out to the internet through the MAAS server. Normally you just need to set up IPV4 forwarding on the MAAS server and set that as the gateway for the MAAS managed nodes.
<rick_h_> los_: but no, to get inbound from your laptop you can skip iptables stuff if you use the sshuttle tunnel. Then you only need inbound ssh on the maas server
<los_> rick_h: Got you, do the iptables if you had some provisioning situation that needed it... I worked this infini-timeout on the bootstrap with @thumper yesterday and had no luck until I had routing going (can't contact juju controller via API?)
<rick_h_> los_: well so that's what I mean. When the MAAS node comes up cloud-init tells it to go get the Juju software it needs to run from streams.canonical.com and such
<rick_h_> los_: if the MAAS nodes can't get out to get them, well then it'll be stuck
<rick_h_> los_: and then the charm will need to be fetched from api.jujucharms.com (charmstore) so you can put it on the MAAS node and execute it
<los_> rick_h: right but I was confused cuz I saw (on the console of the maas worker machine) gazoodles of packages being updated all happy etc.
<rick_h_> los_: right, part of what's run is apt update and apt upgrade to make sure that the latest version of cloud-init and such are available (bugs fixed/etc)
<los_> rick_h: Wowwwww this is transcendental: sshuttle is the grandson of ol' SunOS Term, and then of kermit...its self-running via python!  Awesome!
<los_> rick_h: (Having old guy moment...there's been 1M hours dedicated to getting around dumb networking via these kinds of tools....so cool!)
<rick_h_> los_: lol yea it's a darn handy tool to have in your pocket
<rick_h_> ssh is so ubiquitous at this point
<los_> rick_h: yes yes, I just hope it works #include "crypto_worries.h"
<rick_h_> los_: definitely use the apt package if you can so that it's pre-built for you
<rick_h_> los_: apt get install sshuttle
<los_> rick_h: right, ok, my mind is blown: I run this on my (client, this, laptop, desktop workstation) and point it at a user with -r on the maas controller?
<los_> rick_h: Or on the maas controller pointed to the juju controller?
<los_> Aha, ... on the maas-controller!
<rick_h_> los_: right, you're saying "if I try to hit anything in the 10.x subnet use this ssh connection to the MAAS server and go through it"
<rick_h_> los_: so now you can use the juju client on your laptop, the browser on there, etc.
<los_> rick_h: Mind...pakow!
<rick_h_> :)
<rick_h_> hopefully helps you get along with things
<los_> rick_h: oh wow man,...yep, restarting from scratch (bootstrap) ...I've got a demo for our local LUG on Fri...and I want some time to write a SetiAtHome charm (with the new-to-me reactive model, solving all my RandoStartUpSequenceEventProbs that drove me off of charms a while ago...they got REALLY complicated with lockfiles for each component
<los_> SetiAtHome would be like a "dummy load" in radio
<los_> rick_h: thanks again, for-real!
<rick_h_> los_: no problem, good luck on your project!
<los_> I've taken a lot of notes, down to error messages being confusing etc. and then I'll look at whether they are fileable
<los_> rick_h: Thanks...after that...maybe ngrok, and then after the demo, my real goal: Blender Flamenco
<rick_h_> always happy to get feedback
<los_> rick_h: I think Juju's time is now: hybrid public/private cloud, CloudFlare's Argo in front... always preferring the private cloud (larger) made out of HA MaaS out-of-warranty servers, no RAID, 1xPSU, not "reliable" but the controllers (MaaS/Juju) are old-skool in-warranty/RAID/2xPSU/HA'd...
<los_> 1) if private cloud dies (or connectivity) flops to public cloud and you scale
<los_> 2) if public, or major fraction of networking (like VZ outage) goes, pivot to private and spin another replica on another (out of affected area) public cloud
<los_> If the workload is batchable (e.g. video rendering) then everything is restartable...
<rick_h_> los_: very cool yea we definitely think that flexibility and consistent experience across clouds is important
<los_> rick_h: Its a very neat time, lots to learn and can get done.  This Blender Flamenco thing is to produce a local render for a small co of friends of mine--they don't have the bandwidth to upload to pay services, let alone....the pay!
<los_> rick_h: ok, maximum whiney mode ON: juju gui is up (thx!) but I get a red warning bubble "Unable to list models: read tcp...connection reset by peer"
<los_> rick_h: (on my workstation) $ sshuttle -r user@maas-on-my-same-network othernetwork.0/24
<los_> rick_h: A clue: more pop-ups of "unable to retrieve model list: unknown version (4) of interface "ModelManager"
<rick_h_> los_: hmm, that sounds like the GUI doesn't know/talk to the API version. might have to ask hatch and company
<los_> rick_h: Yeah...I will check into that.  Many the googles etc.  its all working great so thanks rick!
<rick_h_> los_: <3 that's good to hear
 * hatch waves at rick_h_ 
<rick_h_> los_: hatch here is the GUI expert and might have an idea on the "unable to retrieve model list: unknown version (4) of interface "ModelManager"
<hatch> los_ what version of the GUI/Juju are you using?
<veebers> Morning all o/
<hml> morning veebers
<veebers> How are things going hml ?
<hml> veebers: pretty good - you?
<veebers> hml: heh, bit of a broken nights sleep and now the fire is being a prick to get going ^_^  All good otherwise
<veebers> There, fire sorted. I used a little known technique called: "swearing at it a bunch"
<veebers> rick_h_, thumper was going to as re: snap tracks updating but thought I would try out the disource discussion
<veebers> kelvin: when you grabbed the caas mysql charm for testing, it was as easy as cloning it and running "charm build ." or so, right?
<kelvin> veebers, yes
<wallyworld> anastasiamac: https://pastebin.canonical.com/p/wR46sTqpXJ/
<veebers> kelvin, wallyworld I need to "ln -s" microk8s.kubectl to, um, $JUJU_DATA right, then I can add-k8s with config?
<kelvin> veebers, microk8s.config | juju add-k8s microk8s
<kelvin> is ur JUJU_DATA in a different place?
<wallyworld> what kelvib said is all you need
<kelvin> wallyworld, got one question, does charm-upgrade work for caas?
<veebers> awesome, thanks kelvin, wallyworld
<kelvin> veebers, np
<veebers> wallyworld, kelvin: sorry to pester, do I need to do anything different to get the unit logs? i.e. I see message: "Hook failed: "install"", it's the changes I made, but want to see the stack trace
<wallyworld> kelvin: it is supposed to yeah
<veebers> juju debug-log -m <model> doesn't show anything
<wallyworld> veebers: kubectrl -n <model> log -f <operator pod name>
<veebers> wallyworld: awesome, that's the business. I can see how I've borked up now ^_^
<wallyworld> :-)
<kelvin> wallyworld, ic, thx
#juju 2018-07-12
<anastasiamac> wallyworld_: looking at cosmic deploy/bootstrap, it is kind of hard without cosmic images... i think i'll park until they are available... all i can do at this stage is just blindly add 'cosmic' as a string to our OS collection...
<anastasiamac> wallyworld_: "blindly" because i cannot really test that it works ;)
<anastasiamac> a review anyone? https://github.com/juju/os/pull/3
<los_> (as an outsider: I would suppose its mosdef time since 18.04 is really really out...right?)
<wallyworld> anastasiamac: lgtm
<veebers> wallyworld, kelvin: Sorry for dumb questions; How do I see the k8s container created when deploying the caas charm. Juju status shows 'Creating mysql container' for ages
<kelvin> veebers, kubectl get po -n model
<wallyworld> veebers: from where did you get the myql charm? did you have it locally?
<wallyworld> if you have got the latest copy from my repo you'll need to setup storage
<veebers> wallyworld: Aye, I have it locally, I built from a cloned branch (with changes, now changing the built one and dploying)
<wallyworld> or hack the metadata.yaml to remove the storage bit
<wallyworld> jusyt check the built copy has no storage in metadata.yaml
<wallyworld> that will do for now
<veebers> I pulled it yesterday or so, no mention of storage in metadata
<veebers> err, storage
<wallyworld> in that case there's something else amiss
<veebers> get po only shows juju-operator-mysql
<wallyworld> so you'll need to check the operator logs and juju debug-log
<veebers> wallyworld: Err, probably something I've introduced, I'll add more logging and up the logging factor
<wallyworld> if there's just the operator it means that juju has not been told how to make the pods
<wallyworld> ie the charm has not sent the pod spec yaml to juju via the pod-spec-set hook command
<veebers> wallyworld: ack, I suspect I've added something that breaks that. Not sure why no logging coming in yet
<wallyworld> you won't see operator logs in juju
<veebers> sorry, controller logs
<wallyworld> nothing to log until the charm runs
<wallyworld> and that happens in the operator not the controller
<veebers> wallyworld: yeah, IK suspect juju misbehaving: https://pastebin.canonical.com/p/sTwBPpRWMF/
<wallyworld> veebers: there's nothing amiss with that log. is that all there is?
<wallyworld> there should be a log of the pod spec yaml
<veebers> wallyworld: It's that repeated over and over, I see this though (at the end there) juju-log Invoking reactive handler: ../../application-mysql/charm/hooks/relations/mysql/provides.py:25:_handle_broken:server
<wallyworld> that's nothing
<veebers> ah o
<veebers> ugh, why can't I remember how to set logging to DEBUG for the controller, it's a model config or so right?
<wallyworld> yeah
<wallyworld> juju model-config logging-config="<root>=DEBUG;"
<veebers> awesome, thanks
 * veebers adds another model and starts again :-0)
<veebers> wallyworld: (I hate to pester, I know you have heaps on): Trying a deploy, describe pods has this error: Error: cannot find volume "juju-operator-mysql-config-volume" to mount into container "juju-operator"
<veebers> state is Terminiated
<wallyworld> veebers: otp to kelvin, give me a sec
<veebers> ack
<wallyworld> veebers: it goes to terminated griefly and then back to creating
<veebers> wallyworld: I pulled microk8s down and re-installed and added a modek with a differnt name (hence diff namespace) and that's working. I caught an issue that should have been caught via unit tests, so continuing
<wallyworld> veebers: great
<wallyworld> thumper: head for lunch, but wouild love a review of https://github.com/juju/juju/pull/8919 if you get a chance
<wallyworld> bbiab
<thumper> wallyworld: still finishing up with eric's one
<veebers> kelvin: how long does it take to deploy that k8s cluster bundle on lxd locally (roughly)
<kelvin> veebers, 20-40mins
<veebers> kelvin: ok thanks, wondering if that would be more stable than microk8s at the mo, I keep mucking it up :-\
<kelvin> veebers, do it on ur host machine directly, no vm
<veebers> kelvin: ack, yeah I would deploy to local host. Then I would scp the kubectl bin, and config over right? (as per the ci test)
<kelvin> veebers, i did't test microk8s for complex charms yet.
<kelvin> veebers, yes
<veebers> sweet, cheers kelvin
<veebers> I think the microl8s issue is an apparmor thing (it being beta and all) and I just want to tear everything down to start from scratch etc.
<kelvin> veebers, np
<xavpaice> anyone about and able to take a look at https://bugs.launchpad.net/juju/+bug/1781322? I'm about to throw a workaround in, and only affects us when we remove a subordinate, but it's just broken a model for me
<mup> Bug #1781322: Upgrade to 2.4.0 caused tools symlinks to be in a subordinate charm dir <canonical-bootstack> <juju:New> <https://launchpad.net/bugs/1781322>
<anastasiamac> a dependency update for juju side, PTAL   https://github.com/juju/juju/pull/8921
<wallyworld> anastasiamac: lgtm
<anastasiamac> tyvm \o/
<veebers> wallyworld: https://github.com/juju/juju/pull/8922 please don't giggle at the branch miss-naming :-\
<anastasiamac> m not sure wallyworld can giggle
<anastasiamac> :)
<veebers> hah :-)
<wallyworld> lol, i mistype the same thing all the time
<veebers> hey, I said no giggling
<veebers> ;-)
<wallyworld> frankban: hey, you around?
<frankban> wallyworld: hey
<wallyworld> frankban: question - i want to do a one line patch to the GUI to add kubernetes series support. but trying the follow the hacking howto and make guio, i get an error. error: Error: file to import not found or unreadable: normalize.css/normalize
<wallyworld> i think all i need to do is add a line to urls.js?
<frankban> wallyworld: I think so yes, but weird error...
<wallyworld> maybe you could whip up a quick PR for it so i don't need to figure out how to get things compiling?
<frankban> wallyworld: sure
<frankban> wallyworld: so the name of the series is "kubernetes", correct?
<wallyworld> frankban: the unit renders but the js console has an error
<wallyworld> yeah
<frankban> wallyworld: ok is there a k8s charm in prod cs?
<wallyworld> on staging charm store i think
<frankban> or staging
<frankban> ok
<wallyworld> veebers has one uploaded. i just deploy locally
<wallyworld> frankban: since i can't compile it, is there a tarball or something you can send me and i can test?
<wallyworld> i think there's a way to deploy a local gui from a tarball?
<frankban> wallyworld: yes, i'll send it to you
<wallyworld> yay you rock
<wallyworld> tyvm
<wallyworld> and a line to tell me what to type
<frankban> wallyworld: then you can do "juju upgrade-gui /path/to/gui.bz2" on your controller
<frankban> heh
<wallyworld> awesome, easy
<frankban> wallyworld: the branch is https://github.com/juju/jaaslibjs/pull/1
<frankban> wallyworld: I don't have perms to merge it, but will try to figure out something, or I'll have to wait for americans
<kelvin> wallyworld, can i get ur a minute?
<jam> kelvin: I would guess he's gone off for now. anything I can help you with?
<kelvin> jam, got a question about allwatcher. i am not very sure how does it work. i saw juju gui uses 2 websockets. one of them for allwatchers.
<jam> kelvin: so the intent of the allwatcher is that whenever something changes in a model, it sends a message to on the allwatcher so that things like the gui can react to it
<kelvin> jam, it seems the payload returned from unit change for example is not always consistent, in my case, the Tools does not always present, but i can see .tools presents in all doc in mongo
<kelvin> jam, can i get ur a few minutes on HO? :-)
<manadart> stickupkid: Small one for review when you've time: https://github.com/juju/juju/pull/8926
<wallyworld> frankban: great tyvm. do you need to build a tarball or if i try will i get an error again?
<frankban> wallyworld: I need to release that on npm, I'll have to wait for jeff as I don't have perms, so yes sorry we'lll have to wait
<wallyworld> kelvin: no worries
<wallyworld> frankban: oop, meant you. no worries, thanks for doing pr
<wallyworld> kelvin: you all sorted out now?
<kelvin> wallyworld, i just re boostrapped ctl again to test it.
<kelvin> wallyworld, do u mind to have a quick chat?
<wallyworld> sure
<wallyworld> kelvin: am in standup HO
<kelvin> thx
<jam> wallyworld: want me there as well? or yo ugot it?
<wallyworld> jam:  just started talking, ty for offering, will let you know
<jam> k
<wallyworld> jam: all sorted. i helped identify the root cause of the watcher issue. the fix is quite simple as it turns out
<jam> wallyworld: great!
<manadart> What's a good charm to test Cosmic machines/units with?
<wallyworld> kelvin: we talked about backingUnit, same would apply for backingMachine I expect
<kelvin> wallyworld, yup, sure. thanks
<kelvin> thanks, jam as well
<stickupkid> manadart: LGTM
<anastasiamac> manadart: i was using usbuntu with "--series cosmic --force"
<anastasiamac> ubuntu even
<jam> manadart: afaik, we don't have any charms today that support cosmic, but you could force/edit something like ubuntu-lite to include cosmic
<manadart> anastasiamac jam: I've got Cosmic machines and containers deployed fine using image-stream and container-image-stream respectively.
<jam> \o/
<anastasiamac> manadart: having said that, i saw that rick_h_ has a personal cosimc charm :) maybe because rick_h_ is an astronaut ?
<jam> manadart: with anastasiamac's patch ?
<anastasiamac> manadart: on 2.4? or 2.5-bX?
<manadart> jam anastasiamac: 2.4 HEAD.
<anastasiamac> manadart: could u plz then also update bug 1781301 as it looks like we support it
<mup> Bug #1781301: Juju needs to support cosmic <juju:In Progress by anastasia-macmood> <https://launchpad.net/bugs/1781301>
<anastasiamac> manadart: yes! this is awesome news as my patch did land on 2.4 and soon to be on 2.5
<anastasiamac> thnx for verifying :)
<manadart> anastasiamac: NP.
<manadart> stickupkid: Ta.
<anastasiamac> manadart: actually m updatignt he bug now... nm :)
<manadart> anastasiamac: Ack.
<anastasiamac> manadart: jam: really appreciate u taken over both th symlink bug and verification of cosmic deploys! great team work :D
<stickupkid> anastasiamac: i believe you're right with your theory about the jujuConnSuite...
<jam> manadart: stickupkid: I'm seeing a bunch of conflicts merging 2.4 into develop around lxd code
<jam> stickupkid: is one of them supposed to supersede? (I'm guessing the 2.4 code is the 'best' code, but I'm guessing)
<stickupkid> anastasiamac: there are changes in the commit diffs that change how the session is created for tests
<stickupkid> jam: manadart: ouch, hmmm - yeah, for most cases
<manadart> jam: There will be one that I know of - usage of IsInstalledLocally and IsRunningLocally. The utils module was deleted from both, but 2.4 supersedes develop in using it from container/lxd.
<manadart> Not sure about other conflicts.
<jam> stickupkid: looks like there are some things that are only in 2.5 like "ServerSpec" vs "RemoteSpec"
<jam> and defaultProfileWithNIC vs defaultProfile
<anastasiamac> stickupkid: i'd imagine difference in session creations would indeed b top suspect...
<stickupkid> jam: ServerSpec, RemoteSpec is being removed and manadart should know about the latter
<jam> stickupkid: is ServerSpec being replaced by RemoteServer ?
<jam> you need *one* of those
<manadart> jam: Stays as ServerSpec in develop.
<stickupkid> the other way around, ServerSpec is replacing RemoteServer
<jam> providerSuite.createProvider is a test suite
<jam> stickupkid: manadart: kk. I did look to switch to ServerSpec, so that's good.
<manadart> jam: 2.4 is behind for LXD generally. After the release freeze, enough was back-ported to support constraints. Clustering enhancements are all going into develop.
<manadart> I'd like to sync them, because it is so much cleaner without tools/lxdclient. But that's a conversation...
<jam> manadart: lots of conflicts in the test suite, unfortunately
<jam> maybe not so many. just a couple tests that end up interleaved somehow
<manadart> jam: If the conflicts are all in LXD land, want me to give it a lash?
<jam> manadart: I'll push something up in a sec, I'm close to done
<manadart> jam: Ack.
<stickupkid> anastasiamac: so I believe this is the commit https://github.com/juju/juju/commit/e95762d1c094c3a6b41e9ab98f1068b0aaea240e
<veebers> stickupkid: huh, I notice that's a commit of mine, you suspect the extra session usage there is causing grief?
<stickupkid> veebers: yeah, no idea why yet
<stickupkid> veebers: i've not touched anything to do with mongo in juju yet, so I'm have a poke atm
<veebers> stickupkid: I wonder if the cleanup isn't ironclad or something along those lines, there is a session created outside of the setupTest for instance
<stickupkid> veebers: yeah - exactly
<veebers> stickupkid: well, if it's something obvious and silly I owe you a beer in Brussels :_P
<stickupkid> veebers: haha
<stickupkid> so the test that repeatedly fails is CAASModelDeployCharmStoreSuite.SetupTest and suite composes the new changes of that commit.
<jam> manadart: stickupkid: can you look at https://github.com/juju/juju/pull/8927 and see if everything makes sense? the test suite passes in container/lxd and provider/lxd on my machine
 * jam away for lunch
<veebers> stickupkid: I wonder if it's a mongo/session thing or if it's a proper bug and a worker or something is borked due to the new controller config?
<stickupkid> veebers: i wonder if i skip the test and see if the problem goes away?
<stickupkid> veebers: then we can at least know that the test is buggy
<veebers> stickupkid: true. It passes sometimes though, right? (it must have for it to get landed, and I ran the suite a couple of times etc.)
<stickupkid> veebers: yeah, but it seems to be getting worse - it never fails locally, note - that it's not your test that fails, but someone composing that test suite that you changed
<veebers> stickupkid: interesting, I wonder if the testTeardown is doing something in an order that borks things. But I'm just stabbing in the dark :-) I'll leave you too it as you have eyes on the code ^_^
<jam> back
<stickupkid> jam: LGTM
<jam> thxn
<stickupkid> So I'm skipping the test that "seems" to be causing the CI issue, but, unfortunately it's intermittent - so only time will see
<stickupkid> https://github.com/juju/juju/pull/8918/commits/ec595f73202dd65ee842823d0e50b52083c53753
<anastasiamac> stickupkid: thank u for looking at tests. fingers crossed that skipping will make a difference \o/ at the very least, it'll finger-point which ones need to be addressed :)
<stickupkid> anastasiamac: np - yeah, let's hope
<anastasiamac> stickupkid: and really appreciated the comments on the bug :) i'll add the skipping PRs for future tracking too
<stickupkid> anastasiamac: welcome
<anastasiamac> stickupkid: i've added further comments as I believe that the issue is caused by having s.State.Model() calls
<anastasiamac> stickupkid: but cannot look into it further (must eod)...
<stickupkid> anastasiamac: awesome! well it built and merged without failure, that's the first time in a week or so
<stickupkid> anastasiamac: i'll have a quick look, but i'm not sure what I'm really looking at though :)
<stickupkid> anastasiamac: thanks for the help, enjoy the rest of your day
<anastasiamac> stickupkid: gr8 about landing
<anastasiamac> stickupkid: "looking" would probably involve the why-is-State.Model()-causing issue and can-the-test-survive/be-rewritten-without-State.Model()-call
<anastasiamac> stickupkid: but yeah, i'll go away for now before my head explodes \o/ ttyl
<stickupkid> anastasiamac: \o/
<anastasiamac> o/
<hfp> Hey, I can't get juju going. This is what I'm getting on ubuntu 17.10: https://dpaste.de/hgRs
<hfp> is it about the lxd profile default having an ipv6 or is it something else?
<hfp> This is my default profile: https://dpaste.de/MQ9s, it's as default as they go
<manadart> hfp: Looks like IPv6. The profile is OK AFAICT. Try "lxc network set lxdbr0 ipv6.address none".
<manadart> Work checking with "lxc network show lxdbr0". Ensure ipv4.address is something and ipv4.nat is true.
<jam> i need to EOD, but if someone could give a look at https://github.com/juju/juju/pull/8928 I would appreciate it.
<rick_h_> manadart: any chance you can give ^ a look before your EOD? /me checks clocks
 * manadart pulls his punch card back out of the slot.
<manadart> rick_h_: Looking.
<rick_h_> manadart: if you're EOD let it go and please grab it in the AM
<manadart> rick_h_: It's fine. I got it.
<manadart> rick_h_ jam: Approved it. One comment.
<rick_h_> ty manadart !
<rick_h_> have a good night
<los_> Can I get a pointer to a reference Reactive Pattern charm that has no dependencies?
<hfp> manadart: lxbdr0 has an IPv4 and an IPv6. Juju doesn't do IPv6?
<manadart> hfp: LXD integration will ultimately support IPv6, but at the moment we eschew it.
<zeestrat> Hey rick_h_, you know of a way to cross post stuff on discourse? Would love to get some input from the maas folks on https://discourse.jujucharms.com/t/ideal-use-cases-for-maas-and-pods-vs-lxd-esp-with-clustering-with-juju/68/3
* cockmaster changed the topic of #juju to: Hey, I think you guys might enjoy my new blog post https://bryanostergaard.com/blog/2018/07/09/donald-trump-and-the-darkies/
* manadart changed the topic of #juju to: https://jujucharms.com https://discourse.jujucharms.com
<rick_h_> zeestrat: hmm, not really. Just have to ask them to chat. What are you looking for them to fill in?
<rick_h_> zeestrat: the maas vs pods vs cluster plans? I mean really their plans are just to make stuff work so folks can get machines provisioned from their DC as easy as possible
<zeestrat> rick_h_: right, but as someone that's  been using both for a while I'm still missing a more simple and unified approach to deploy both maas and juju controllers. I've also seen a couple of folks around here and #maas that have been confused or struggled with figuring out how to deploy juju controllers without using manual kvm or umpteen physical machines. A common question is why they can't use lxd containers as juju
<zeestrat> controllers on their physical maas controllers.
<zeestrat> Was interested in hearing in their plans as it looks like their moving towards snap and lxd containers as preferred deployment methods
<rick_h_> zeestrat: understand. My point is that the maas folks aren't worrying about how to load juju controllers on there.
<rick_h_> unfortunately there's not an easy fix yet for the chicken and egg of "I need a cloud, I need to run stuff on my cloud" by having the cloud be both control plane and target for workloads for that cloud
 * rick_h_ rereads that and wonders if he needs more coffee
<rick_h_> zeestrat: we'll see. at the moment I'm looking at the lxd cluster stuff going "cool the controllers can be on the same plane of hardware as the workloads" so it helps with the "I need three machines in MAAS just for Juju HA"
<rick_h_> much more like an openstack setup tbh
<rick_h_> but it's still means you need to setup the lxd cluster which is a manual thing atm
<zeestrat> Hah, and I need some more beer! I gotcha, but at least the path towards being able to enlist and commission lxd clusters/containers in maas needs some work from the maas sife
<rick_h_> yea
<rick_h_> it'd be darn cool if you could ask maas for a machine to come up in a cluster
<zeestrat> The more easy and fun it is to get started with juju on maas the better.
<rick_h_> and that expanding that cluster was just asking maas for another machine
<rick_h_> but that's not on roadmap atm
<rick_h_> just in the "cool ideas" phase
<zeestrat> OK, so the ideal use case of bootstrapping juju controllers on maas will be physical machine or manual kvm's for the time being?
<rick_h_> zeestrat: yea, there's some toys that might open up more possibility but not there yet.
<hfp> manadart: Noted, thanks
<wallyworld> veebers: did my comments on the PR make sense?
<veebers> wallyworld: I haven't seen them yet, I'll ping if I have questions
 * veebers wonders how he missed that email come through
<wallyworld> veebers: sorry, should have pinged but it was very late her and you would have been AFK
<veebers> wallyworld: no worries, I normally see the review email come in and respond. I must have skimmed over it in the morning cleanup
<veebers> wallyworld: just sorting out a vsphere query from thumper, then will continue debugging the resource-get issue I'm seeing (relevant to this PR) and attack those comments (they all make sense)
<wallyworld> gr8, ty
<thumper> babbageclunk: ping
<babbageclunk> thumper: hey
<thumper> babbageclunk: noticing your email, wanna chat?
<babbageclunk> yes please!
<thumper> jump in 1:1
<magicaltrout> random question for a charmer, that will likely make them sad. Is there a sane way to execute a command on another service from within another charms hook
<magicaltrout> for example, I need to stick a new unix user into another charm and ideally i could do with a way to do this without adding stuff to the existing relations
<thumper> magicaltrout: I don't think so
<thumper> magicaltrout: it is almost like you want one unit to be able to run an action on another unit?
<veebers> Now why would none of the debugging logging that I've sprinkled around not show up at all :-|
<babbageclunk> veebers: is it going to a controller log and you're looking in the default model?
<veebers> babbageclunk: no I've def got debug-log -m controller there, I wonder if it's not getting paste the cmd context part
<veebers> but surely that should show up in the hook logs for the operator pod
<babbageclunk> hmm, not sure about k8s stuff but that might be in the model log, not the controller one
<veebers> yeah, for that I should be able to see it with something like "microk8s.kubectl -n aaaa log -f juju-operator-mysql"
<veebers> (do you like my naming scheme? aaaa, bbbb, I think there is a zyx as well as a xyz)
#juju 2018-07-13
<veebers> wallyworld, kelvin : ahh, I think I get it, the jujud run in the operator pod is from the operator image right? So if I want to update the logging on the client end I need to build an image, push it and overwrite the one used somehow right?
<kelvin> veebers, there is a handy cmd in makefile to replace the image cache on k8s node. so u just build the image on ur host, then push to the k8s node, k8s will use the cache always if it represents
<veebers> kelvin: mean thanks!
<kelvin> veebers, or u can kubectl exec into the pod, then change the python source code, and test it.
<veebers> kelvin: its jujuc code I've added logging
<kelvin> if it's charm py lib
<veebers> and now thinking about it, I think I have some ideas as to whats going wrong
<kelvin> ok
<veebers> ugh me need type faster
<kelvin> yeah 1st thing is for go bin, the 2nd is for py charm
<anastasiamac_> wallyworld: ping
<veebers> WTF, does anyone else see this error when 'make install'-ing? service/systemd/service.go:61: syntax error: unexpected = in type declaration
<veebers> hmm, seems an env issue?
<veebers> kelvin, wallyworld can I set controller config caas-operator-image-path to point at a local docker?
<veebers> (my juju status -m ${JUJU_K8S_MODEL} kubernetes-worker has no machines :-\ want to use the image from the start)
<veebers> nw, pushing to docker hub, will use that
<kelvin> veebers, i don't know how to do that. what i would do is either to ensure the node image cache is ur build or scp ur jujuc into the operator pod(assume ur image build host is Ubuntu same as the operator os)
<veebers> kelvin: ack, if this fails (or if I need to operator quicker) I can do that cheers, need to fully get my head around the operator pod etc.
<veebers> kelvin: yay I now get the logging I was expecting, cheers!
<kelvin> veebers, or u can work on the k8s node directly, clone juju to the host, change, build bin, build image, and redeploy the charm, then u don't need to push then pull images
<veebers> now to actually figure out and fix the issue
<kelvin> veebers, awesome
<wallyworld> anastasiamac_: hi, sorry was immersd in code, missed ping
<wallyworld> veebers: operator pod logs don't go to controller
<wallyworld> i think i gave you the command yesterday?
<wallyworld> kubectl log -f ....
<veebers> wallyworld: aye, sorted now, needed the operator image updated with the new jujud
<wallyworld> ok
<wallyworld> veebers: you figured out that caas-operator-image-path can point to your own image on dh?
<veebers> wallyworld: yep, I can get the new image and juju there fine, so I have my loggin now, just need to determine why it's complaing
<wallyworld> gr8 ok
<veebers> wallyworld: I have this error message, I wonder if it's something to do with how a caas model httpgetter does something? https://pastebin.canonical.com/p/pfP3dMDY2M/
<wallyworld> veebers: it is, i can explain, HO?
<veebers> wallyworld: yay yep standup omw
<balloons> Happy Friday to all you people from the future!
<babbageclunk> yay! Happy Friday balloons!
<blahdeblah> \o balloons - how's it going?  Where are you working now?
<balloons> I hope you're still keeping veebers on his toes babbageclunk.
<balloons> hey blahdeblah, heh, never forget that handle :p
<balloons> I'm enjoying my time presently working for DO. And yes, no provider for DO means I've been juju free for several months now
<balloons> I'm clean, I swear it.
<blahdeblah> cool
<veebers> hey balloons o/
<anastasiamac_> wallyworld: PTAL https://github.com/juju/juju/pull/8929 - disabled users access check
<thumper> balloons: I thought you'd be writing a DO provider?
<blahdeblah> haha
<anastasiamac_> or thumper, PTAL at https://github.com/juju/juju/pull/8929? would b awesome to land it in 2.4.1..
<wallyworld> anastasiamac_: lgtm ty
<anastasiamac_> wallyworld: \o/
<anastasiamac_> wallyworld: fco... apiserver tests fail coz apparently disabled users have login access... as it makes no sense to me - disabled users should not be able to login, m fixing the tests.... i might need u to have another look unless u r happy as-is
<wallyworld> hmmm, i sort think they should have no access
<anastasiamac_> wallyworld: exactly :)
<wallyworld> veebers: i want to keep some aws instances running for demo under the juju-qa account, remind me, so i just go in and mark them in aws console as don't termnate or something
<veebers> wallyworld: yep, set termination protection
<veebers> wallyworld: if you wanted to be super extra sure you could just disable the aws cleanup job for now
<wallyworld> ta. i think i just lost them all
<veebers> wallyworld: oh shit :-( hopefully not a biggie to get back?
<wallyworld> it's juju, just redeploy :-)
<veebers> hah true ^_^
<anastasiamac_> wallyworld: and disabled users do not have access to application offers either, right? oh well, shouldn't since they do now...
<wallyworld> yeah, shouldn't
<veebers> wallyworld: is "Labels:    map[string]string{labelApplication: appName}}," important for a secret? (if so I'll pass in app name to EnsureSecret too
<wallyworld> yeah, we should label it with app name
<veebers> cool, can do
<anastasiamac_> wallyworld: updated PR to ensure no access for disabled user, PTAL?
<wallyworld> ok
<anastasiamac_> wallyworld: also i think we have a bug in that we still should be able to provide means to list access for disabled users when admins want to see what they'd have when re-enabled... currently i don't think it'll work: t'll come back with "none"... i'll file a bug and work on it accroding to my pririties :D
<wallyworld> sgtm
<wallyworld> anastasiamac_: just a typo
<anastasiamac_> phew! that's good news \o/ tyvm for review :D
<veebers> wallyworld: FYI have pushed the fixes and the requested changes to the PR
<wallyworld> looking
<wallyworld> veebers: just a couple of small things
<veebers> wallyworld: cool, on it
<veebers> wallyworld: hub.docker.io or just docker.io?
<wallyworld> docker.io
<veebers> cheers
<wallyworld> i tested with docker pull
<veebers> ah right, I can see that in my terminal backscroll. /me wonders if hub.docker.com redirects to docker.io
<wallyworld> kelvin: lgtm, just a couple of small things
<veebers> wallyworld: ok just fixing a couple of unit test failures that fell out of that and will squash && push && merge
<wallyworld> ty
<kelvin> wallyworld, yup thanks
<veebers> It seems there are occasional test issues with github.com/juju/juju/cmd/juju/machine.TestPackage (from github.com_juju_juju_cmd_juju_machine)
<anastasiamac_> wallyworld: m pretty sure we de-dup local charms when they r deployed multiple times, right? i seem to reacll ppl doing the work...
<wallyworld> the blob contents i think so
<stickupkid> manadart: you go 5 minutes?
<stickupkid> s/go/got/ ?
<manadart> stickupkid: Sure HO?
<stickupkid> sure
<stickupkid> one sec got to restart
<rick_h_> stickupkid: I do want to say let's keep this method around though. This feels like the right autoload-credentials type thing where if you've got it, great!
<manadart> Need a review for: https://github.com/juju/juju/pull/8933
<valentina_> Hello All,
<valentina_> would anyone give me a hint please: I'm using pylxd in my charm: https://git.launchpad.net/charms-6wind/tree/charm-layers/6wind-common/lib/charm/openstack/utils.py
<valentina_> I want to add a constraint: that my charm installs and uses only pylxd>=2.2.7 from PyPy repository not python3-pylxd from official ubuntu's repos.
<valentina_> I've found small notice about wheelhouse.txt file in official doc
<valentina_> I'm hesitating, where I should put this constraint, shall I create wheelhouse.txt in 6wind-common layer directory: https://git.launchpad.net/charms-6wind/tree/charm-layers/6wind-common
<valentina_> Or I should put it in charm's dir here:  https://git.launchpad.net/charms-6wind/tree/virtual-accelerator-compute
<valentina_> The second question: actually there is no any wheelhouse.txt files in charms-6wind repo, but when I build the charm, the build folder is created and I can see wheelhouse.txt generated here. How it is generated by charm build and which template it takes, how it takes decision which python libraries it have to put to wheelhouse.txt as a needed dependencies ?
<valentina_> Thanks for any help
<stickupkid> manadart: that worked
<stickupkid> * goes for lunch with joy
<manadart> stickupkid: Nice.
<stickupkid> manadart: i need to just make sure, it seems rather convoluted tbh, but it is what it is
<stickupkid> :)
<alephnull> Could someone point me to some explanatory guide about relations? I'm looking at https://jujucharms.com/rabbitmq-server/ and it extracts information from relations and I am not entirely sure where this information is coming from.
<stickupkid> rick_h_: after finalize cloud when adding a credential, do you think we should update the credential file?
<stickupkid> rick_h_: the issue we have is that trust.password isn't assured to be always available, it might be turned off because of security reasons
<stickupkid> rick_h_: we have the server cert, so we should remove the trust.password and swap it with that
<rick_h_> stickupkid: hmm, so we go through add-credential and ask for the trust password, setup the keys. Do we setup the keys on bootstrap? Or as part of the add-credential call?
<rick_h_> stickupkid: e.g. do we actually need to write out that trust pass to anything persistent?
<stickupkid> rick_h_: the problem is, we don't finalize the cloud, if you're not in interactive mode. It's only when we bootstrap that we finalise the cloud...
<stickupkid> rick_h_: so we need to either finalize the cloud when we add-credentials for all credentials added (maybe add it optionally so i don't break other providers) or a re-write the credentials at bootstrap
<stickupkid> rick_h_: that latter feels wrong
<rick_h_> stickupkid: yea, I wouldn't expect us to wait until bootstrap to do something with creds
<stickupkid> rick_h_: i'll propose it, see if people hate it :)
<rick_h_> stickupkid: can you raise an email to the team about finalizing at add-credential time? It feels like the right place but if we've never messed with that...I mean what does azure do?
<rick_h_> it has an interactive add-credential that walks back/forth and such
<rick_h_> I wonder if there's lessons/style to crib from there
<rick_h_> stickupkid: kk, on the propose and get feedback method
<stickupkid> rick_h_: so interactive works nicely, it's when you pass a file it assumes that you know what you're doing?
<stickupkid> rick_h_: quick HO?
<rick_h_> stickupkid: sec
<rick_h_> stickupkid: I see...yea the file path. Hmmm
<rick_h_> stickupkid: still around?
<rick_h_> actually, just go have a good weekend stickupkid
<stickupkid> rick_h_: haha, i'm still around, if i get this sorted, i want have to think about it all weekend :)
<rick_h_> stickupkid: sounds like a plan
<rick_h_> stickupkid: with a cool beverage in hand to assist the thinking :)
<stickupkid> HO if you want
<rick_h_> stickupkid: no, I want you go to enjoy your weekend and get out of here
<rick_h_> stickupkid: appreciate your thinking on the problem.
<stickupkid> rick_h_: muhahaha - got it working
<rick_h_> stickupkid: lol
#juju 2018-07-15
<veebers> Morning o/
<veebers> babbageclunk: would you have any idea where/why one might see this error "permission denied (unauthorized access)" when attempting to make a FacadeCall? (seems it may be caas specific here, as a IAAS model is fine)
<babbageclunk> veebers: Sorry, missed your question - generally that means that an auth check failed. What facade & method is it?
<veebers> babbageclunk: It's a UnitFacadeClient call to "GetResourceInfo", in resource/api/private/client/client.go
<veebers> babbageclunk: I'm sure it's something like that, maybe like ApplicationTagKind needs to be added somewhere (I had to do something similar a little earlier) but for the life of me I can't find where that may need to happen
<veebers> (or a list updated or something etc.)
<babbageclunk> veebers: ok, let's just take a look at the checks the server is doing
<babbageclunk> hmm, resources code tends to be pretty twisty-turny
<veebers> babbageclunk: aye
<babbageclunk> doing a few find-implementations...
#juju 2019-07-11
<timClicks_> ideas welcome! what are the features of juju that you quite like but which would not appear in many checkbox matrix comparison with other tools? am trying to compile a list here https://discourse.jujucharms.com/t/some-hidden-features-of-juju/1649?u=timclicks
#juju 2019-07-12
<timClicks> what's the easiest way to debug the apiserver? I want to know what's on the other side of the facade call
<timClicks> ended up using this: juju debug-log -m controller --replay --include-module juju
<babbageclunk> timClicks: for more detail you can turn logging in the apiserver up to trace using `juju model-config -m controller logging-config="juju.apiserver=TRACE"`
<timClicks> anastasiamac: I think that this change might be harder than expected
<timClicks> the code is all fine on the server-side, but the client-side API is lossy
<timClicks> (c *Client) FindTools(majorVersion, minorVersion int, series, arch, agentStream string) (result params.FindToolsResult, err error)
<timClicks> we loose the alpha/beta/rc and build number when we look for tools
<timClicks> because c.AgentStream is "", the server defaults to released
<hpidcock> If I'm adding a new field to a facade request params struct, should I bump the facade version?
<babbageclunk> hpidcock: yes, particularly for a client facade (where there are other clients than just the juju CLI)
<timClicks> hpidcock: in particular, the juju gui and pylibjuju also rely on that version number
<timClicks> babbageclunk: btw your panic debugging method is pretty effective
<hpidcock> +1 panic is great for debugging
<babbageclunk> cheers! even more fun than printf debugging
<hpidcock> more fun because it yields better results ;)
<babbageclunk> who doesn't love a stack trace?
<anastasiamac> timClicks: m happy to discuss further ur monday since m guessing u r eod now
<anastasiamac> at eow even :D
<hml> manadart: thereâs something odd about what weâre doing with providerID for spaces.    will look more.
<hml> manadart:  weâre adding spaces with an undefined name and -1 providerID.
<rick_h> hml:  so I think that's the MAAS "undefined" space
<manadart> hml: Got a ref in code? We have the default space + MAAS undefined space.
<manadart> What rick_h said.
<rick_h> hml:  manadart just for reference https://bugs.launchpad.net/juju/+bug/1785314
<hml> manadart:  no code ref, i was looking at the DB
<mup_> Bug #1785314: maas spaces are mis-translated <track> <juju:Incomplete> <MAAS:Incomplete> <MAAS 2.3:Incomplete> <MAAS 2.4:Incomplete> <https://launchpad.net/bugs/1785314>
<hml> rick_h: is the âundefinedâ space the default or something?
<hml> there can be only 1?
<rick_h> hml:  yea, I think so. I have to refresh my brain
<rick_h> hml:  +1 to there being only 1
<rick_h> highlander space
<hml> :-D
<hml> rick_h: time to play queen
<rick_h> wfm!
<manadart> rick_h hml: I am leaning towards ignoring "undefined" when loading spaces and making the juju default space the unifying concept for the no/default/undefined/whocares space.
<pmatulis> is not providing accurate information by default for the 'controllers' command really a good thing (need --refresh option to do that)? don't people always want to ensure they are getting accurate information?
<rick_h> pmatulis:  the issue is that controllers pulls a list and that info doesn't change much so a cache is usually ok
<rick_h> pmatulis:  otherwise calling each one (and timing out on ones you can't reach for say behind a vpn/etc) makes controllers risky to use
<pmatulis> rick_h, if a client has a controller registered shouldn't we assume the client can reach it? anyway, implementing a short timeout doesn't seem too bad
<pmatulis> anyway, i just upgraded a controller model and couldn't see the results. until i finally reached for the --refresh option. seemed like an odd UX moment is all
<rick_h> pmatulis:  no, again because it could be over a vpn, on a user's laptop and they can only reach it on the work network, etc
<rick_h> pmatulis:  yea, I wish we had a way to push from controller to clients like "you've just connected, I've got news for you"
<rick_h> that would be a nicer way to handle stuff like that
<pmatulis> rick_h, i see, ok
#juju 2020-07-06
<SachinKulkarni> Launchpad team membership not picked up by `charm whoami`
<SachinKulkarni> Tried login/logout multiple times, no use, charm version 2.7.5, how to resolve this?
<wallyworld> SachinKulkarni: i just tried it and it's broken for me too it seems, so someting that they'll need to look into
<icey> I also just tried and could not reproduce this issue :)
<icey> although, honestly, I have no idea how I have half of these groups :-P
<achilleasa> wallyworld: https://github.com/juju/juju/pull/11804 the back-port to 2.8
#juju 2020-07-07
<stickupkid> achilleasa, CR if you're around? fixes your concerns around reading stdin https://github.com/juju/juju/pull/11796
<achilleasa> stickupkid: looking
<achilleasa> stickupkid: got more questions
<stickupkid> achilleasa, because it's expected to use the very annoying options in the command
<stickupkid> achilleasa, that parseOneArg does more than you think
<stickupkid> achilleasa, also your code - os.Stdin isn't an io.Reader
<achilleasa> it's not?
<achilleasa> it should be an *os.File
<stickupkid> let me try
<achilleasa> stickupkid: so, does the ignoreagentversion bit also work for stdin inputs? I am confused :D
<stickupkid> achilleasa, works for everything
<stickupkid> achilleasa, if you don't add the ignore flag you get this error message
<stickupkid> juju model-config --format=yaml | juju model-config -
<stickupkid> ERROR "agent-version"" must be set via "upgrade-model"
<stickupkid> achilleasa, you free for a sec?
<achilleasa> stickupkid: sure; meet you in daily
<zeestrat> Hey Juju folks, I have an existing model (v 2.5.8) with MAAS backend where I just added a new AZ and machines in that AZ but when I try to deploy new units it fails when provisioning as it does not recognise the new AZ and the machines in it. I tried `juju update-cloud <nameofmymaascloud>` but that didn't do the trick. How do I get Juju to recognise/update AZs from MAAS?
<stickupkid> achilleasa, ^ that's reload spaces right?
<zeestrat> I presumed reload spaces only reload the network spaces from MAAS and not the AZ?
<achilleasa> stickupkid: I think that reload-spaces only refreshes subnets and spaces. Not sure about AZs though
<stickupkid> yeah, that's why I asked, I'm not sure either
<manadart_> zeestrat: We are working on independent modelling of AZs this cycle, but at present AZs are stored as part of subnet data, which is discovered during `reload-spaces`.
<manadart_> zeestrat: If that does not work, it might be a MAAS provisioning bug.
<zeestrat> manadart_: I see. I'll give it a try. Thank you. P.S Is there a way to inquire what AZs juju knows about?
<manadart_> zeestrat: That is precisely the work we have on the table, including notification when a new one becomes available :)
<zeestrat> manadart_: Great :) Any bugs or PRs I can subscribe to to follow along?
<zeestrat> manadart_: Unfortunately it looks like `reload-spaces` didn't do the trick.
<manadart_> zeestrat: Got some logs you can put in a pastebin?
<zeestrat> manadart_: I tried scouring the machine logs, but not a lot to find. Here's what I have: https://paste.ubuntu.com/p/QhzdvNwBs7/ Let me know if there is something else I should look at
<manadart_> zeestrat: I need to look at the (old ;)) 2.5 code to get the real work on this. But have you tried using placement instead of a constraint? I.e. `--to zone=x`.
<zeestrat> manadart_: Much appreciated! Yes, I tried `juju deploy ubuntu ubuntu --to zone=hcc-dev-rack4` for example, but that just hangs on pending: https://paste.ubuntu.com/p/MDWhGt5tPh/
<manadart_> zeestrat: Are you running HA?
<zeestrat> manadart_: If you mean HA controllers, yes, 3x.
<manadart_> zeestrat: OK, so what you need to do is restart each of the controller machine agents.
<manadart_> zeestrat: This is a bug in the provisioner, which has a cache of distribution groups for distributing new machines across AZs.
<manadart_> zeestrat: So as per the cycle work, we need to make it aware of the fact that new AZs can come online.
<manadart_> I replicated your situation and restarting my controller fixed it.
<zeestrat> manadart_: I can work with that :) Is the `reload-spaces` still required in addition to the restarts?
<manadart_> zeestrat: No.
<manadart_> zeestrat: If you create a bug for this, I'll triage it and add it to the feature task list.
<zeestrat> manadart_: Gotcha, will do. I'll give it a spin in dev here just to check. Thank you very much for digging in! (And apologies for the old version. Had this one since 2.0 and we're slowly catching up)
 * manadart_ nods.
<zeestrat> manadart_: Worked as a charm in dev, thanks again! For writing up the issue, is it a general provisioner issue or limited to HA and/or MAAS?
<manadart_> zeestrat: Glad you're up. It's a general provisioner error.
<zeestrat> manadart_: Created https://bugs.launchpad.net/juju/+bug/1886666 Please edit as you see fit.
<mup> Bug #1886666: juju 2.5.8 does not recognise new AZs created in cloud after deployment of controller <juju:New> <https://launchpad.net/bugs/1886666>
<manadart_> zeestrat: Great, thanks.
<jam> stickupkid, thanks for the review
<stickupkid> jam, nps
<manadart_> achilleasa: Got time to look at some more link-layer mechanics? https://github.com/juju/juju/pull/11807
<achilleasa> manadart_: looking
<achilleasa> manadart_: got a small nit about DocID(). Take a look at my comment and let me know what you think
<stickupkid> hml, I updated my PR to rename charm to entity
<hml> stickupkid: ack
<stickupkid> hml, but I left the json tag for the client as "charm" so it will still work with their API
<hml> :-)
<stickupkid> see here https://github.com/juju/juju/pull/11793/commits/a0a9060221f382d83648a63427d513094114b543#diff-0c3b53c2399932098ef150096b7df011R15
<hml> stickupkid: iâve started working on the review
<stickupkid> i'm still unsure if we want an entity or a charm or bundle type.
<stickupkid> but for now let's do this
<hml> stickupkid: in my rework of where info convert is doneâ¦ i used entity inside the apiserver, charm/bundle outside
<manadart_> achilleasa: Replied to your comment. Have to head home now, so will look tomorrow.
#juju 2020-07-08
<manadart_> achilleasa: I did you see my latest change on that patch?
<achilleasa> manadart_: approved; thanks for the change. Can you take a look at https://github.com/juju/juju/pull/11788? (subnets on lxd)
<manadart_> achilleasa: Yep.
<manadart_> achilleasa: If we could populate parent interfaces for KVM, we could remove the provisioner logic for setting link-layer devices prior to container creation.
<achilleasa> manadart_: I believe that's doable (that would be the next card on my todo list btw) but I am not entirely sure where this is supposed to happen
<achilleasa> so in the meantime, I am working on the firewaller spike
<manadart_> achilleasa, stickupkid: Forward merge: https://github.com/juju/juju/pull/11808
<achilleasa> manadart_: looking
<achilleasa> manadart_: missed a VirtualPort field ;-)
<stickupkid> achilleasa, https://discourse.juju.is/t/multichecker-for-unit-tests/3320
<manadart_> achilleasa: Damn. Thought I picked it up in the 2 places you mentioned...
<achilleasa> there were 3 of them
<manadart_> achilleasa: Stand by.
<manadart_> achilleasa: Amended it.
<stickupkid> hml, CR for find https://github.com/juju/juju/pull/11809
<hml> stickupkid: ack
<hml> stickupkid: reviewed
<stickupkid> hml, so, this is what I wanted to chat about, I'm unsure we should be doing so much in the client
<hml> :-)
<stickupkid> hml, thinking about this stuff https://github.com/juju/juju/blob/develop/cmd/juju/charmhub/infowriter.go#L100-L112
<hml> stickupkid: me too
<stickupkid> hml, I'm going to make some more dramatic changes then
<hml> stickupkid:  daily?
<stickupkid> sure
<achilleasa> wallyworld: any particular (performance?) reason why we use https://github.com/juju/juju/blob/develop/worker/firewaller/firewaller.go#L798 instead of collecting all CIDRs and attempting to merge at the end?
<stickupkid> hml, in relation to "Output from not found charm is confusing, there is no mention that the search term failed, nor that the list is of interesting charms?"
<stickupkid> hml, that's because the find endpoint is canned response
<stickupkid> hml, I update my PR
<hml> stickupkid: right, so itâs not even doing not found?  bleh
<stickupkid> nope
<stickupkid> yeah, love this, moving target
<hml> stickupkid: weâll have to watch that when things go live
<stickupkid> yeah
<hml> w00t!
#juju 2020-07-09
<kelvinliu> hpidcock: or tlm a small pr for python linting enhancement, +1 plz https://github.com/juju/juju/pull/11811
<hpidcock> kelvinliu: looking
<kelvinliu> ty
<hpidcock> kelvinliu: LGTM
<tlm> cheers kelvinliu
<kelvinliu> ty4rv
<stickupkid> manadart_, CR if you've got a chance... trying to correctly model a charm so we can use that information with the refresh API that's upcoming - https://github.com/juju/charm/pull/311
<manadart_> stickupkid: Yep, will look in a mo'.
<achilleasa> manadart_: any particular reason for having ListSubnects (api/subnets) return a V1 result whereas the SubnetsByCIDR returns a V2 result?
<achilleasa> I want to build a subnet ID -> CIDR map and ListSubnets does not return the ID back :-(
<manadart_> achilleasa: Doesn't appear to be any reason other than the new API version came after subnet ID was added, and prior use of the command did not use the ID.
<achilleasa> manadart_: so I can simply just change the payload without really having to bump anything, right? It's a new field that nothing (except the new spike bits) will be using
<manadart_> stickupkid achilleasa: I guess technically we should bump the version for a new return type, but it is only additive...
<achilleasa> it could cause issues with the python bits though...
<stickupkid> achilleasa, manadart_ so maybe
<stickupkid> depends, if it's purely addative, then you *can* get away with it
<achilleasa> manadart_: hmmm... so the firewall worker does not have permission to list subnets. Does this mean that I need to copy the list subnets functionality in its facade?
<achilleasa> oh wait. I might be using the wrong api connection here
<achilleasa> nope... btw, where does the model manifold execute? The controller?
<manadart_> stickupkid achilleasa: Need a review: https://github.com/juju/juju/pull/11812
<stickupkid> manadart_, https://github.com/juju/juju/pull/11812#discussion_r452227586
<hml> stickupkid: fixing the merge conflicts between your change and mine is going to be fun.  :-).  git is not doing a great job of it.
<stickupkid> 3 way merges never are
<stickupkid> hml, ping when you do have 5 minutes
<hml> stickupkid:  ack
<manadart_> stickupkid: Thanks. Fixed the mask sig and the logging.
<hml> stickupkid: daily?
<manadart_> stickupkid: https://github.com/juju/juju/pull/11813 merges that one patch forward.
<manadart_> achilleasa: Mechanical: https://github.com/juju/juju/pull/11814
<achilleasa> manadart_: done
<manadart_> achilleasa: Thanks.
#juju 2020-07-10
<manadart_> achilleasa: Forward merge of the gateway patch - https://github.com/juju/juju/pull/11817
<achilleasa> manadart_: looking
<stickupkid> achilleasa, manadart_ CR https://github.com/juju/description/pull/83
<achilleasa> stickupkid: got a question around typed nils
<stickupkid> achilleasa, no idea, i copied and pasted
<stickupkid> I did wonder about that
<stickupkid> I don't mind removing it, it's just seems convention, similarly to the HORRID underscore usage in the variable names
<stickupkid> @achilleasa, ^
<stickupkid> hml, this wasn't as painful as I was expecting https://github.com/juju/juju/pull/11818
<hml> stickupkid: nice.
<hml> stickupkid: i have one up for you when youâre back
<hml> stickupkid: https://github.com/juju/juju/pull/11816
<manadart_> achilleasa: Real small address additions - https://github.com/juju/juju/pull/11819
<stickupkid> hml, so the reason for the storeurl is for json and yaml (real) output
<stickupkid> hml, as a link back to original content
<stickupkid> hml, this isn't the download url
<hml> stickupkid: okay on one, you lost me on 3.  HO?
<stickupkid> sure
<manadart_> achilleasa: https://github.com/juju/juju/pull/11820 merges that one forward.
<achilleasa> hml: can you point me to an example for using a pre-upgrade step?
<stickupkid> hml, if we don't find the series in metadata yaml, wat do?
<hml> achilleasa:  sure, let me find it
<hml> achilleasa:  https://github.com/juju/juju/pull/11542 - it worked due to environs depending on your reasons
<achilleasa> hml: thanks! it's exactly what I need as the pre-upgrade step is provider-specific
<hml> achilleasa:  sweet!
<stickupkid> hml, considering this metadata doesn't contain series information... https://api.snapcraft.io/v2/charms/find
<hml> stickupkid:  itâs not real metadata.  had the same issue with info.  put it in test only
<achilleasa> hml: on the other hand I could make it a normal upgrade step I guess; we should probably refresh the subnets each time we upgrade anyway...
<stickupkid> hml, updated my PR
<hml> stickupkid: ack
