[07:25] <h0mer> hey can anyone help with me trying to SSH into a glance server (deployed using Cannonical openstack/juju)?  I dont know what key or username to use
[11:12] <hazmat> h0mer: juju ssh glance/0  .. user is typically 'ubuntu' on the cloud images used by juju.
[11:55] <h0mer> yep got it, but I had to ssh into the landscape server first (I'm using the cannonical openstack distro), which is what puzzled me
[11:55] <h0mer> thanks
[13:04] <h0mer> anyone know how I can restart the keystone component from juju?
[13:13] <coreycb> h0mer, I'm not sure there's a direct way to just restart services, but you could toggle a config option on and then off to restart them.  gnuoy, do you know a better way?
[13:15] <coreycb> h0mer, assuming verbose is already set to false.  juju set keystone verbose="true"; juju set keystone verbose="false".
[13:18] <coreycb> h0mer, you could also juju ssh in to the units and manually restart services.  that should be fine.
[14:30] <stub> Can I get a fresh run of http://reports.vapour.ws/all-bundle-and-charm-results/lp%3A%7Estub%252Fcharms%252Ftrusty%252Fpostgresql%252Frewrite ? I think the remaining rough edges are gone from the integration tests.
[14:38] <jose> stub: sure, I'll kick the tests in a bit
[14:38] <stub> jose: ta. whenever convenient - I won't be looking at any results tonight.
[14:39] <jose> stub: they should start running soon. just clicked the butto
[14:39] <jose> niedbalski: ping
[15:21] <niedbalski> jose, hey :)
[15:21] <jose> niedbalski: have a min for a quick PM?
[15:21] <niedbalski> jose, sure.
[16:08] <pmatulis> when destroying a juju environment, what is the point of the '-e <environment>' if you can specify the environment like this: juju destroy-environment <environment-name> ?
[16:29] <ddellav> pmatulis, i'm not sure what the actual reason is but If i had to guess It's either 1 of 2 things. Either the -e or inline option are deprecated to maintain functionality with old scripts, OR the -e option allows you to specify multiple environments where the inline option does not.
[16:29] <ddellav> again, just a guess.
[16:31] <lazyPower> pmatulis: its a positional arg now, but hositorically it was not
[16:31] <lazyPower> i beleive that is an artifact
[16:33] <ddellav> right, deprecated option from early dev.
[16:33] <ddellav> makes sense
[16:34] <lazyPower> ddellav: watching this plumgrid deploy on bare metal is kinda mesmerizing... lots of services lots of scrolling text
[16:35] <ddellav> you should deploy openstack sometime ;)
[16:35] <lazyPower> ddellav: plumgrid contains openstack <3
[16:35] <lazyPower> they are a bolt on SDN for carrier grade virtual network functions (NFV in teleco terms), you'll be seeing more of this after i finish my review(s) today
[16:36] <ddellav> do I have a video review to look forward to?
[16:36] <lazyPower> Possibly, but not in the immediate future. I'm routing through some internal cloudy type stuff that I Would have to capitalize on, and i'm pretty sure beisner has only let me the resources for the time being
[16:36] <lazyPower> but with some coordination, sure
[16:36] <lazyPower> https://insights.ubuntu.com/2015/04/15/plumgrid-joins-canonical-ubuntu-openstack-interoperability-lab/
[16:37] <lazyPower> here's the press release when they signed up for CPP and their overview
[16:37] <ddellav> nice
[16:43] <pmatulis> ddellav, lazyPower: muchos
[16:48] <lazyPower> denada
[17:16] <pmatulis> lazyPower: is it 'destroy-service' or 'remove-service'? another deprecation?
[17:19] <lazyPower> juju destroy-service is the perferred nomenclature i would think
[17:50] <marcoceppi> pmatulis: neither are being deprecated?
[18:32] <pmatulis> marcoceppi: why are there 2?
[18:32] <marcoceppi> pmatulis: same reason there's juju init and juju generate-config
[18:32] <marcoceppi> or juju terminate-machine and juju destroy-machine
[18:32] <pmatulis> marcoceppi: which is?
[18:32] <marcoceppi> aliases help improve discoverability and people probably couldn't decide on the best verbiage
[18:34] <pmatulis> marcoceppi: from a user's point of view, and from the Doc team's POV, it's bad to have duplication of commands. i suggest standardizing
[18:35] <marcoceppi> pmatulis: well that's not going to happen at all until juju 2.0 because we don't break backwards compatibility
[18:35] <marcoceppi> pmatulis: I haven't heard any users complain
[18:39] <pmatulis> marcoceppi: i'll follow up somehow. thanks for the info
[18:39] <marcoceppi> pmatulis: What problem are you trying to solve?
[18:43] <pmatulis> marcoceppi: globally, making juju easier to use. specifically, getting the documentation in shape. i don't want to have to write 'use this command or that command, they're the same' all over the place
[18:44] <marcoceppi> pmatulis: then just pick one, that's what Nick's done in the past.
[18:45] <marcoceppi> they're aliases, not slightly different invocations
[18:57] <pmatulis> this is beyond my mandate on the official docs but i would *like to* avoid users following some online doc that uses one and then having them encountering another one, possibly the official ones, that use another. it's just confusing and, to me, leaves a bad taste in the mouth b/c i'm not sure whether they are equivalent or whether one is a different invocation. the commands.md file also uses 'destroy-service' and then ...
[18:57] <pmatulis> ... underneath it uses 'remove-service'
[18:58] <lazyPower> pmatulis: i'm +1 for having consistent verbiage used throughout our docs and help commands
[18:58] <lazyPower> pmatulis: but i also think to marcoceppi's point, since we're maintaining backwords compat in the 1.x series the path forward today is to file bugs where appropriate to make it consistent, update the docs to use that same bit, and turn a blind eye to the aliases. We can address those as people ask
[18:59] <pmatulis> lazyPower: i'm fine with waiting until 2.x but we should just decide at that time and then go forward
[19:35] <ted> I heard a rumor on the street that Juju does some type of YAML validation.
[19:35] <ted> Does it? How does it do that?
[19:35]  * ted may have just ended up in the wrong part of town
[19:45] <wolsen> skylerberg, ping
[19:46] <lazyPower> ted: hey there o/
[19:46]  * ted waves
[19:46] <lazyPower> ted: when you say juju does yaml validation, can you expand on what you're expecting with that statement? as it seems pretty broad
[19:47] <ted> lazyPower, Like has a schema and checks to see if the YAML conforms to that schema.
[19:47] <lazyPower> ted: well it does some ridumentary things like check for sub keys of units, and it has a standardizd format for bundles
[19:47] <lazyPower> but aside from that, the yaml validation is largely on trial/error with deployer and quickstart depending on your flavor of the moment
[19:48] <ted> Okay, but there's no definition format that you're using.
[19:48] <lazyPower> https://jujucharms.com/docs/stable/charms-bundles
[19:48] <lazyPower> this is the overview of that format, and if i dig hard enough I may be able to surface an old bundles format doc
[19:49] <lazyPower> we're currently changing that spec and work is underway (and may have been completed) to finalize teh bundle v4 spec. Whats on thta page is the bundle v3 spec
[19:49] <lazyPower> but if you're looking for a pure schema document, I don't beleive one exists today
[19:49] <lazyPower> but i could be wrong
[19:49] <lazyPower> rick_h_: do you have anything to add here? we're talking bundles and specs ^
[19:50] <ted> Ah, okay. I won't be able to steal anything then :-)
[19:50] <lazyPower> ted: the other side of this is metadata/config in charms, and we do have schema validation on those baked into juju
[19:50] <ted> That file is getting complex, you guys are gonna need XML soon.
[19:50] <lazyPower> Ayyyyy
[19:50]  * JoshStrobl throws up at XML
[19:50] <lazyPower> ted: i doubt we'll convert to XML :)
[19:50] <JoshStrobl> Oh wait...did I do that out loud?
[19:50] <lazyPower> JoshStrobl: i would expect no less ;) o/ how are ya
[19:51] <JoshStrobl> lazyPower, doing well, how are you?
[19:51] <lazyPower> JoshStrobl: trying to complete my todo list so i can get into the audio lab
[19:51] <lazyPower> so good :) but busy
[19:51] <JoshStrobl> lazyPower, yea I caught the latest vibes you put up, loved it :)
[19:51] <lazyPower> THe raw studio sessions?
[19:51] <lazyPower> man those were terribad
[19:51] <JoshStrobl> lazyPower, any pointers to where I can catch up on Juju stuff? Like actual Youtube content to grind through.
[19:52] <lazyPower> new deck, new software, new everything... and hooooo i twas rough.
[19:52] <JoshStrobl> lazyPower, nah it wasn't bad man
[19:52] <lazyPower> JoshStrobl: yeah, the juju office hours for the last 3 months are a brilliant place to catch up
[19:52] <JoshStrobl> lazyPower, figured as much :D
[19:53]  * JoshStrobl has been out of the Juju loop for way too long and trying to catch up on the mailing list archive (still subscribed to juju mailing list) is like a needle in a haystack :D
[19:55] <lazyPower> yes, yes it is
[19:55] <lazyPower> we got chatty while you were away
[19:56] <lazyPower> we're publishing the current state of the union more often, including review-q highlights et-al
[19:56] <wolsen> skylerberg, I added a comment to your mp, ping me if you have questions on it/want to chat about it a bit
[19:58] <JoshStrobl> lazyPower, yea I noticed as much (about the chattiness, changed to daily digests due to the activity - which is awesome because it is lively)
[19:59] <lazyPower> :) that makes me happy
[19:59] <lazyPower> if we're getting so chatty you went to digest vs the 12 emails a month it used to be
[19:59] <JoshStrobl> It is also nice because I always know it is 1500, my phone chimes with the Juju daily digest :DD
[20:00] <lazyPower> its the little things ;)
[20:05]  * JoshStrobl begins watching playlist of Juju office hours to get up-to-speed
[20:20] <JoshStrobl> That moment when you see Jorge pound the up key and enter...then 5 minutes later finally opting to use "watch" :DD
[20:21] <JoshStrobl> Or was it Marco...
[20:21] <JoshStrobl> Oh...it was Marco. Thanks non-intuitive Hangouts UX
[20:22] <jcastro> JoshStrobl: plenty of time for the juju charm summit
[20:22] <jcastro> see the list
[20:22] <jcastro> lmk if you want to apply for sponsorship
[20:22] <skylerberg> wolsen: I read your review. I think your approach makes sense, the only reservation I have is that it is more complex than my current approach.
[20:23] <JoshStrobl> jcastro, no thanks :) doing this for my sanity mainly :D
[20:23] <jcastro> ack
[20:24] <wolsen> skylerberg, there's no doubt that it is slightly more complex and it results in having to make changes to more charms, but I do think its the right approach and provides the best overall user experience
[20:26] <skylerberg> wolsen: Yeah, I agree. I will change the code and update the merge request.
[20:26] <wolsen> skylerberg, if there's anything I can do to help, let me know
[20:27] <skylerberg> wolsen: Will do. Thanks.
[20:27] <wolsen> skylerberg, and sorry I wasn't on the same page with you before :(
[20:29] <skylerberg> wolsen: No worries, man.
[20:46] <rick_h_> lazyPower: sorry, sprinting and just now trying to catchbacklog
[20:47] <rick_h_> lazyPower: ted the juju actions work uses a spec called "json schema" and that's used for a pure schema validation and it's on the todo to add that to the GUI, update juju config schema to use it down the road, etc. http://json-schema.org/ and https://github.com/juju/gojsonschema
[20:49] <ted> rick_h_, Cool, thanks!
[21:07] <lazyPower> thanks rick_h_ :) i knew you'd have the magic answer
[21:07] <rick_h_> lazyPower: :)
[21:08] <rick_h_> lazyPower: fyi, email reply inbound to the big thread I'd love to get your feedback on
[21:13] <skylerberg> When a new relation is created does it trigger a relation-changed event after triggering relation-joined?
[21:16] <JoshStrobl> skylerberg, I do believe it is ran after -joined.
[21:16] <JoshStrobl> https://jujucharms.com/docs/stable/authors-charm-hooks#[name]-relation-changed
[21:16] <lazyPower> skylerberg: it does
[21:16] <lazyPower> skylerberg: the sequence is -joined, -changed (optionally run more than once depending on relation-set commands)
[21:17] <skylerberg> JoshStrobl, lazyPower: Thanks
[21:17] <lazyPower> inversely, -broken (runs when you remove relation, they still have communication established between the two), and -departed (no connectivity between the units. ship has sailed, adios)
[21:23] <cholcombe> ok question time
[21:24] <cholcombe> with relation_get am i supposed to return if i don't get the info i need in the hopes that the charm gets called again with more info?
[21:28] <marcoceppi> cholcombe: yes
[21:29] <cholcombe> marcoceppi, ok.  how do i know the difference in code between i didn't get a value and i'm never getting that value and i should fail?
[22:07] <marcoceppi> cholcombe: you don't, that's why we have extended status
[22:07] <marcoceppi> cholcombe: ie status-set waiting "waiting for x, y, z value to continue"
[22:07] <marcoceppi> cholcombe: and as long as the other charm implements the relation protocol properly (and isn't in an error state) all should be swell
[22:10] <JoshStrobl> oh lol. So catching up on Juju Office Hours. In the 30th July episode, when Jorge said "dog might wander in and out and talk about dev ops", literally lol'd. And suddenly makes me want to have some sort of Juju dog sweater...and I don't even have a dog.
[22:11] <marcoceppi> JoshStrobl: if jcastro has anything to say about it, he will tell you to get a beagle
[22:11] <JoshStrobl> :D
[22:15] <cholcombe> marcoceppi, ok cool i'll set the status so that people know what's going on
[22:15] <marcoceppi> cholcombe: +1 always use status all the time and everywhere
[22:15] <cholcombe> :)
[22:15] <marcoceppi> it's basically my drop in replacement for juju-log and it's amazing
[22:15] <cholcombe> interesting
[22:16] <cholcombe> that sounds like quite a good idea to me
[22:16] <cholcombe> you can see at a glance with status what is goign on
[22:16] <marcoceppi> cholcombe: yeah, and with juju-run you can have processes out of band of hooks set status :D
[22:16]  * marcoceppi picks up all the lightbulbs falling off cholcombe's head
[22:16] <cholcombe> marcoceppi, fancy :)
[22:16] <cholcombe> haha
[22:17] <cholcombe> marcoceppi, yeah this is giving me a lot of ideas of code i need to chance
[22:17] <cholcombe> change*
[22:20] <marcoceppi> cholcombe: as a protip, you can query the current status with status-get from the hook, as to prevent friendly "non-blocked" status from updating a blocked, waiting, or maintenance state `juju help-tool status-get`
[22:20] <cholcombe> marcoceppi, nice tip!
[22:21] <cholcombe> marcoceppi, i feel as though you just leveled me up haha
[22:21] <marcoceppi> yeah, extended status is like the best kept secret in charming
[22:21] <marcoceppi> I want to dedicate an entire summit session to "secrests in juju that shouldn't be secrets"
[22:22] <cholcombe> yeah i like that idea
[22:23] <marcoceppi> jcastro: ^