/srv/irclogs.ubuntu.com/2016/05/25/#juju.txt

=== redir is now known as redir_afk
=== scuttle|afk is now known as scuttlemonkey
=== scuttlemonkey is now known as scuttle|afk
jamespageurulama, morning - I'm working through https://github.com/juju/charmstore-client/issues/61 whilst beisner is on leave08:07
jamespageurulama, is there a nice way I can login once, and them propagate the usso credentials to a number of machines so that they can all push and publish charms?08:07
urulamajamespage: hm. if you copy the store-usso-token in ~/.local/share/juju across machines, this should do the trick08:21
urulamawe need to provide you with better instructions how to hook CI08:22
jamespageurulama, ok tried that, but charm whoami still thinks I'm not logged in on machines other than the one I generated that file on08:29
urulamajamespage: hm. seems like ~/.go-cookies are used still. try copying that file08:30
jamespageurulama, trying that now08:33
jamespageurulama, +1 that fixed me up08:34
jamespagethanks for the help08:34
jamespagetinwood, thedac, gnuoy, beisner: OK charm push on change landing for master and stable branches is now live.08:44
tinwoodjamespage, excellent!08:44
jamespagethanks to urulama for helping get the auth sorted out08:45
jamespage+1 ta08:46
tinwoodurulama, excellent too! :)08:46
urulamai think proper way would be to create a "bot" user to be used by CI08:46
urulamatinwood: ty, it has some rough edges still, but, we'll get there :)08:47
jamespagegnuoy, https://review.openstack.org/#/c/320817/08:47
jamespageurulama, agreed - we already have a bot user08:47
jamespagegnuoy, if you have time :-)08:48
=== Guest6887 is now known as BrunoR
godleonHi all, I have a question about openstack charms, do you have any plan to develop charm for projects in big tent other than core projects? e.g. magnum, murano ... etc08:54
jamespagegodleon, we're working on a way to make it easy to charm said projects - and the current team may pick off a few of those, but we'd love to have other contributors who know and use those projects working on the charms :-)08:57
jamespagegodleon, find that works best rather than the 'read the docs -> write the charm' approach :-)08:58
godleonjamespage: thanks! I will spend some time to read the docs.08:59
jamespagegodleon, still wip but worth a look - https://github.com/openstack-charmers/openstack-community/blob/master/openstack-api-charm-creation-guide.md09:00
godleonjamespage: And I have another question about nova-compute with LXD, is it possible to have two virt-type(KVM & LXD) simutaneously on the same openstack platform?09:00
jamespagegodleon, yes - but not on the same servers09:01
jamespagegodleon, one sec - letme pick out the reference for that09:01
godleonjamespage: wow, you are so kind. :)09:04
jamespagegodleon, http://bazaar.launchpad.net/~ost-maintainers/openstack-charm-testing/trunk/view/head:/README-multihypervisor.md09:05
jamespagenp :-)09:05
godleonjamespage: can I manage multiple hypervisor's workload in one Horizon portal?09:09
jamespagegodleon, yes09:09
godleonjamespage: How about the performance comparison between LXD and docker, havr you ever done this kind of test?09:12
jamespageno09:12
jamespagegodleon, they target different spaces ...09:12
jamespagesystem containers vs application containers09:12
jamespagemutable vs immutable09:12
godleonjamespage: ok, I didn't have this concept, sorry about that.09:13
godleonjamespage: ok, I will dig into the LXD and multiple hypervisor architecture to evaluate if it can help me solve the problems in my project. Really appreciate for ur infomation. :)09:16
jamespagegodleon, I did a talk about this in austin - letme dig out the video09:16
godleonjamespage: great09:17
jamespagegodleon, https://youtu.be/u511z0BGnw409:17
jamespagegodleon, enjoy my shirt :)09:18
jamespagegodleon, the demo is missing due to some video problems - I'll ping gsamfira to see if he's re-recorded the demo for us yet...09:19
godleonjamespage: haha, will do. Many thanks!09:19
godleonjamespage: wow, good! Thanks!09:19
godleongodleon: should I leave my email here?09:20
=== urulama is now known as urulama|swap
gnuoyjamespage, do you happen to know if the juju native bundle unit placement syntax is documented anywhere?09:50
jamespagegnuoy, probably but not sure where09:50
jamespagegnuoy, what are you trying todo?09:50
gnuoylxc:nova-compute=109:50
gnuoyjamespage, fwiw I know it's lxd now09:51
jamespagegnuoy, that does not work09:51
jamespagegnuoy, you have to target the actual machines09:52
gnuoyjamespage, ok, I can live with that, whats the syntax for targetting actual machines09:52
gnuoy?09:52
jamespagegnuoy, read this - https://api.jujucharms.com/charmstore/v5/openstack-base/archive/bundle.yaml09:52
gnuoyjamespage, ta09:52
jamespagegnuoy, could you take a peek at https://code.launchpad.net/~james-page/charm-helpers/newton-opening/+merge/29569310:44
jamespage?10:44
coreycbjamespage,  I fixed up the cinder.conf commit message.  I never realized you could edit it directly within gerritt.11:51
=== BlackDex_ is now known as BlackDex
jamespagegnuoy, https://review.openstack.org/#/c/320817/12:39
jamespageall good to go12:39
gnuoyjamespage, approved your ch change too12:40
jamespagegnuoy, ta12:41
gnuoytinwood, I really like the clean look of the baribcan charm. The only thing that jars a little for me are the setup_amqp_req, setup_database and setup_endpoint being part of barbican.py. they seem standard and not specific to barbican at all. Can we push them down into the layer or module?12:54
* tinwood hadn't considered that.12:55
tinwoodgnuoy, I'll take another look.  I sure there's a dependency on one of them on the charm, but the other two could probably move.12:56
gnuoytinwood, do you agree in principle to moving them?13:00
tinwoodgnuoy, setup_amqp_req() and setup_database() are both independent of the charm and could happily go elsewhere.  setup_endpoint() seems more problematic, in that it needs access to some of the charm's properties.  I'm wondering whether that might be better elsewhere?13:04
gnuoytinwood, it was originally part of the charm class wasn't it? do you feel uncomfortable with it going back there?13:06
tinwoodgnuoy, I'm not sure.  The `keystone` object is an interface class instance.  It would be possible to have a `register_endpoints` with a sig register_endpoints(keystone : `keystone-interface`) which then turns around a calls the register_endpoints() on the interface, assuming all OpenStackCharms will have service_type, region ... admin_url.13:11
gnuoytinwood, It's safe to say all charms calling register_endpoints will have tose attributes13:13
gnuoys/tose/those/13:13
tinwoodI'm actually in favour of pushing the setup_amqp_req() and setup_database() basck to the handlers file in the charm.13:13
tinwoodgnuoy, but I did want to keep all the handlers together.13:14
tinwoodhmm.  It's because reactive forces us to put some functions in the reactive directory, but we're putting charm code in lib/13:14
jamespagegnuoy, we need a better way todo feature discovery in the cloud - https://review.openstack.org/#/c/320972/113:16
jamespageI have this type of config option...13:16
jamespagehave/hate13:17
lazyPowergodleon - i've done some benchmarking in terms of starting containers but thats not much of a telling story. we both launch containers silly fast if you have the images cached. but jamespage was spot on with them targeting different spaces so its comparing apples to pineapples.13:17
gnuoyjamespage, I take it cinder-backup doesn't register an endpoint in keystone?13:18
jamespagegnuoy, hmm13:18
jamespageit might13:18
jamespagegnuoy, however...13:18
gnuoyif only there was some sort of service catalogue...13:18
jamespagegnuoy, I'd not want to query the service catalog for this; it should be done using charm semantics13:18
petevgcory_fu, kjackal, kwmonroe: I've got a question about Bigtop automagic, using the layer-apache-bigtop-spark charm as an example: Does Bigtop know to tell puppet to install spark simply because there is a "spark" entry in the "hosts" dict that we pass to render_site_yaml? Or is there additional configuration info in the charm that I'm missing?13:49
cory_fupetevg: It's actually the roles that define what gets installed: https://github.com/juju-solutions/layer-apache-bigtop-spark/blob/master/lib/charms/layer/bigtop_spark.py#L2813:51
petevgcory_fu: got it. That makes sense, now that I think about it.13:52
petevgThank you :-)13:52
cory_fupetevg: The Bigtop Puppet scripts have two methods for selecting what gets installed: components or roles.   Roles are more fine-grained, and let you sepcify things more precisely, while components infer a lot more based on what hosts are provided13:54
cory_fupetevg: https://github.com/apache/bigtop/blob/master/bigtop-deploy/puppet/hieradata/site.yaml has a list of the components you can choose from, while https://github.com/apache/bigtop/blob/master/bigtop-deploy/puppet/manifests/cluster.pp has a (not 100% complete, it seems) listing of roles13:56
petevgOoh, useful. Will bookmark that, and also link in the README.13:57
cory_fuUnfortunately, there doesn't seem to be much in the way of documentation of this stuff outside of the Puppet scripts themselves.13:58
cory_fuAdding some would be a good patch to submit, I think13:59
deanmanIs it possible to deploy an openstack bundle on a Juju with manual provider? I can see from store that the default bundle requires MAAS.14:32
magicaltroutmarcoceppi stop spamming me! :P14:35
magicaltroutarosales: they've fixed my CS login, if it makes you feel any better, I'm also listed in 0 teams ;)14:40
marcoceppimagicaltrout: stop opening bugs on the wrong project ;)15:02
arosalesmagicaltrout: glad to they got you sorted15:02
magicaltroutjust doing what arosales told me :P15:02
marcoceppiarosales: stop opening bugs on the wrong project ;)15:02
arosalesmagicaltrout: I hear the ~charmer group is a good group to be in15:02
* marcoceppi labored over that issue template15:02
arosalesmarcoceppi: ?15:03
magicaltroutCtrl -a <backspace>15:03
marcoceppimagicaltrout: :sadpanda:15:03
magicaltrouthehe15:03
marcoceppiarosales: charm-tools is only for proof, build, inspect, layers, create, and a few other things. Everything else (login, whoami, push, pull, grant, publish) is charmstore-client15:04
arosalesmagicaltrout: you should at least be in charm contributor and apachefoundation15:04
arosalesmarcoceppi: how is any normal human suppose to know that?15:05
arosalesmarcoceppi: I install charm tools15:05
marcoceppiarosales: well, because I created an issue template that tells people this15:05
arosalesI look at charm tools15:05
magicaltrouttemplates are for wimps15:05
arosalesVersion15:05
marcoceppiarosales: https://github.com/juju/charm-tools/issues/new15:05
* marcoceppi tries so ahrd15:05
magicaltroutmarcoceppi: you know that rule about website loading speeds15:06
magicaltroutit also applies to placeholder text ;)15:06
marcoceppiokay, so trim the fat, got it15:06
magicaltroutremove the first para for a start15:06
magicaltroutI know you like thanking people, but there is a time and a place... namely a juju charmer summit15:06
marcoceppiyeah, I was just thinking that as well15:07
magicaltroutyou also have a typo in para 215:07
magicaltroutagains isnt' a word15:07
arosalesmarcoceppi: how hard is it for us to move the bug?15:08
marcoceppiarosales: I already did15:08
magicaltrouthyper links don't work, so just remove the hyperlink markup15:08
arosalesmarcoceppi: so not very hard in general then15:08
marcoceppiarosales: it is very very annoying, because gh doesn't have a way to "move" issues15:09
marcoceppiand only admins of both repos can do it, so a select few in general15:09
arosalesBut something a person can do15:09
marcoceppiarosales: it's super SUPER dirty, ugly, and not friendly15:10
arosalesI am +1 for the template15:10
arosalesBut15:10
marcoceppimagicaltrout: I've been mulling over the idea of `charm bug` or something that can collect 90% of this from the command line15:10
arosalesLet's not make it cumbersome on someone giving feedback15:10
marcoceppimagicaltrout: not sure if people would actually use it15:10
marcoceppiI updated the issue template as well15:11
arosalesideally we have one place like Juju to summit all bugs and then triage from there15:11
arosalesMake it easy for15:11
arosalesContributors15:11
arosalesBut that's ideal15:12
magicaltroutI don't think charm bug is a bad idea, if i'm already in the command line, copying that stuff out of my terminal is clearly harder than me typing charm bug15:12
marcoceppiarosales: sure, if we do that on Launchpad.15:12
marcoceppibecause you can not move issues around in gh15:12
marcoceppibut we can in lp, but now you're subjecting people to lp15:13
arosalesWell gh repo admin can I think15:13
arosalesBut that's technical15:13
arosalesAll I am saying is take the burden off someone trying to give feedback15:14
magicaltroutdon't subject people to LP, most people will have a GH login, not so with LP. Finding anything in LP, including your own code is a pain in the ass :)15:14
arosales+1 on the template helping them15:14
marcoceppiarosales: you can not move issues between repos, pretend I ever said that15:14
arosalesGet to the right spot15:14
* marcoceppi spins up a third, bugzilla site ;)15:15
magicaltroutjuj deploy cs:bugzilla juju-charm-website-massive-bug-aggregator15:16
magicaltrout+15:16
magicaltroutu15:16
arosalesMy feedback is make it easy on contributors even if it isore back end woek15:16
arosales.. If it is more back end work15:17
arosales+1 for templates to help folks get to the right place, but if that fails let's just take care of it on the back end, even if copy paste15:18
arosalesmagicaltrout: would you mind if I demo'ed your mesos bundle?15:24
magicaltroutnot at all arosales15:24
magicaltroutjust bear in mind currently it doesn't support > 1 master15:24
magicaltroutwhich i appreciate defeats the point slightly, but there is a fix in the works for that, its just wiring as opposed to anything technical15:25
arosalesmagicaltrout: attending mesoscon in Denver next week and would like to present your bundle at a lighting talk15:25
magicaltroutyeah i was thinking about showing up to MesosCon europe with a talk if they fancied it15:25
arosalesmagicaltrout: could you point me at your latest bundle?15:26
magicaltroutah yeah i've not published it yet :P15:26
magicaltroutshould probably do that15:26
magicaltrouthttps://github.com/buggtb/dcos-master-charm / https://github.com/buggtb/dcos-agent-charm / https://github.com/buggtb/dcos-interface15:27
magicaltroutcurrently15:27
arosalesmagicaltrout: thanks15:27
magicaltrouti'll try and get the multi-master finished this week and get it published15:28
arosalesmagicaltrout: oh no worries on working on it this weekend on my account15:28
arosaleshttps://www.irccloud.com/pastebin/7DJdv9mG15:29
magicaltroutits like you're talking to me in a webpage....15:30
arosalesmagicaltrout: have you seen the work SaMnCo and data art have done on mesos15:30
magicaltroutI've not seen it, but he tried to hook us all up pre-apachecon and we all said hi then it went quiet15:30
arosalesDang phone client15:30
magicaltrouti mailed SaMnCo the other day to try and reboot it, but i've noticed if I mail him with more than one issue a day, the others don't get a response, so that went unanswered ;)15:31
arosalesI'll try to follow up with SaMnCo15:31
arosalesmagicaltrout: could you15:31
arosalesAdd marcoceppi and I to cc?15:31
magicaltroutI'm not sure what they are upto , but it would be cool to get all of this stuff aligned, hipster tech and all that15:31
magicaltroutwill do15:33
magicaltrouti also need to get a talk submitted to Oslo Devops Days, so I'll probably submit something similar to what I did in that ApacheCon talk with some more hadoop-y stuff to pad it out15:34
arosalesmagicaltrout: good stuff, thanks16:00
kjackalpetevg: Thank you for the README PR. Docs is something (at least) I have to pay more attention. Good work!16:20
petevgkjackal: thanks. Nice to hear that it's appreciated :-)16:21
=== frankban is now known as frankban|afk
kwmonroecory_fu: what's wrong with me?  why can't i see an issues tab here? https://github.com/juju-solutions/layer-apache-bigtop-nodemanager16:44
kwmonroeand why does going to https://github.com/juju-solutions/layer-apache-bigtop-nodemanager/issues redirect me to PRs?16:45
cory_fuThat repo doesn't have issues enabled, apparently.  Probably some weirdness because of how it was forked16:45
cory_fuWe should probably re-own it anyway, so it's easier to make PRs16:45
cory_fukwmonroe: Anyway, issues are enabled now16:46
kwmonroegracias!16:46
=== redir_afk is now known as redir
bdxopenstack-charmers: when using nova-lxd, am I confined to using local storage, or does ceph work in some way as a backend for nova-lxd that I'm unaware of?17:38
tinwoodgnuoy, you about or eod?17:49
hatchIs there a way to get the full log from a unit from the Juju CLI?17:55
lazyPowerhatch - yep18:00
lazyPowerjuju debug-log -i --replay18:00
lazyPoweryou'll need to pass the unit in the -i flag18:00
lazyPowerhatch if you dont want to tail after its done, pass -F18:00
lazyPoweror, juju debug-log --help for the full list of awesome18:00
hatchlazyPower: ahhh that's it - I didn't read the docs for --replay because I didn't want to 'replay' them, I just wanted to see them18:01
hatchheh18:01
hatchthanks :)18:01
lazyPowerye :) that'll get ya sorted18:01
lazyPowercheers18:01
hatchhow do I destroy a service with units in error?18:20
lazyPowerhatch juju remove-machine --force #18:20
lazyPowerhatch then juju destroy-service will cleanly remove the service/charm from the controller18:21
lazyPowerthat or juju resolved mything/0    all the way down as it fail-cycles until its removed18:21
hatchthanks lazyPower18:21
hatchsaying to destroy a service and getting no feedback is not very good18:22
lazyPoweri dont know that i'm following what you're calling attention to. How did you not get feedback?18:22
hatchI can spam destroy-service and because units are in error nothing happens18:22
hatchand I get no feedback18:22
hatchso I just sit here wondering why Juju is broken :)18:23
lazyPowerah, well, do you expect the command to block until its removed?18:23
hatchat the very least I'd expect a message telling me why it's not doing what I told it to do18:23
lazyPowerits doing the right thing in my mind. its a one-shot declaring a state. "Remove this thingy!!" and its trying its best to get there, and if it fails to do so it reports that.18:23
lazyPowerthats a disconnect between blocking commands and the fire/forget style state change you've defined.18:24
hatchno it doesn't18:24
hatchit doesn't report anything18:24
lazyPowerjuju status sure does18:24
hatchI guarantee it doesn't18:24
hatchhttps://gist.github.com/hatched/9a374d20d007e019d3ec2045cf7edc1f18:25
lazyPowerthats funny. workload-status: error18:25
hatchwhere there says that I have destroyed the service about 10 times?18:25
lazyPowermessage: hook failed 'install'18:25
hatchyep the hook failed - so why can't I destroy the service?18:25
natefinchlazyPower: I'm with hatch.  juju destroy-service, IMO, should just take down errored units.  who cares if a unit is in an error state, I'm explicitly removing it18:26
lazyPoweryou're making an assumption about what it should be doing18:26
lazyPowerand i dont agree with your assumptions18:26
lazyPower"i said destroy service, and its still here D:"18:26
lazyPowerwhat if you want to debug that while its in life: dying?18:26
hatchso you prefer for the command to just return with no message to the user18:26
lazyPowerand root out what the cause was?18:26
lazyPowerno, i want you to admit that you're conflating two issues18:26
natefinchI definitely agree that if we KNOW that destroy-service is not going to work, we tell the user18:27
hatchI said to Juju to destroy the service - I want it to destroy the service18:27
lazyPowerthing is18:27
lazyPowerjuju status --format=yaml18:27
lazyPowerthe life is going to be dying18:27
hatchbut it's not dying18:27
lazyPowerit received and is working towards that destructive state18:27
hatchit's going to sit there forever18:27
natefinchjuju destroy-service foo18:27
lazyPowerthe fact there's a hook error is regardless of what state change you just told it to take18:27
natefinchERROR: can't destroy service, unit in error state: foo/018:27
hatch^^^ this18:27
hatch100x this18:27
natefinchif we want to be pedantic and conservative and not destroy an errored unit automatically.... at least tell the user we're not going to do it18:28
lazyPowerthing is, it IS going to do it if you resolve it and it doesn't further error18:28
hatchif you're not doing to do what the user intends to do then at least tell them why18:28
lazyPowerits not "uncommitting" that destroy directive18:28
natefinchWARNING: unit foo/0 in errored state, will not be destroyed until resolved.18:28
lazyPowerthat makes more sense18:29
lazyPoweri'm +1 to that18:29
natefinchthrow me a bone, FFS.  The user shouldn't need to know the internal details of exactly how everything works... we should help them to use juju18:29
hatchYES!18:29
lazyPowerbut i still stand that its 2 sep. issues.18:29
natefinchI'm fine with it being two separate issues - do we or do we not destroy errored units automatically?   and, if we don't, we need to tell the user explicitly.18:30
natefinchAnd honestly, I wish destroy-service were synchronous, like destroy-model is now18:30
natefinchmaybe with a flag to make it async... or vice versa....  I shouldn't ever need to type watch juju status in order to figure out WTF is going on in juju18:31
hatch+118:31
lazyPoweri'm going to leave this alone18:31
hatchlol18:31
mbruzekwhat?18:31
lazyPowerthis is going off the rails into a really bad gripe session18:31
natefinchlol true, sorry :)18:31
hatchI'm going to file a bug about the destroy-service messaging18:32
mbruzeknatefinch: I watch juju status all the damn time18:32
mbruzekIt is the only way to figure out what is going on behind the curtain18:32
mbruzekThat wizard is up to some crazy stuff folks, I constantly watch juju status and tail the debug log18:32
natefinchmbruzek: that's my point.  You shouldn't have to.  Like the way destroy-model is synchronous and actually tells you what it's doing.18:32
lazyPowerwhats fun is something errors you destroy it, then figure out it was like a race condition and the charm can recover... it goes to started, then immediately destroys itself18:32
lazyPowerthats the best18:32
hatchlazyPower: sorry I told it to do something - I expect it to listen :)18:33
hatchI don't much care what it wants18:33
lazyPoweragain. it listened18:33
lazyPoweryou weren't prepared for the sequence of papercuts afterwords18:33
hatchthis is like going to a restaurant, placing an order with the server and then the server walks away18:34
hatchyou sit there forever waiting for your food18:35
hatchit was sitting in the kitchen, but you forgot to tell them to deliver it18:35
hatchnot that you knew you had to say that18:35
hatchbecause the server didn't tell you that18:35
lazyPowerlook i'm not saying you're wrong, i'm saying teh way you're conveying it and griping is wrong, beause you're telling me it didnt do something that it is celary doing18:35
lazyPower*clearly18:35
hatchhow is it doing it? It isn't destroying the service18:35
lazyPowerdid you juju remove-machine # --force?18:35
hatchI did18:36
lazyPowerteh service should have gone then18:36
lazyPowerits dead18:36
lazyPowerhas no units18:36
hatchit did18:36
lazyPoweris in state: dying18:36
lazyPowerthen how did it not destroy?18:36
hatchso destroy-service isn't destroy service18:36
hatchit's "mark for destroy sometime in the future when a pretermined list of requirements have been satisfied - oh but you don't know what those are"18:36
hatchthat's quite the command ;)18:37
natefinchit seems to me that if destroy-service had a --force flag, it would help a lot.18:37
lazyPowerthats not true either18:37
lazyPowerhatch - this. x1000 is this conversation18:38
lazyPowerhttps://xkcd.com/386/18:38
hatchlol except this _is_ important18:38
hatchusers need to be informed about what's going on18:38
hatchand if it's not doing what they said to do they need to know why18:38
mbruzekHas anyone opened a bug about this problem? With the problem statement, and expected result. I think others would like to see this and possibly comment on either it is working as designed or a problem that will get fixed next release.18:40
hatchmbruzek: here is one I filed earlier https://bugs.launchpad.net/juju-core/+bug/156816018:40
mupBug #1568160: destroying a unit with an error gives no user feedback <destroy-unit> <observability> <juju-core:Triaged> <https://launchpad.net/bugs/1568160>18:40
hatchI actually totally forgot I filed that one18:41
hatchhaha18:41
hatchI file a lot of bugs18:41
hatch:)18:41
hatchmbruzek: I think there are really two points here - 1) why errors block removal actions and 2) lack of user feedback in any case18:42
mbruzekhatch: natefinch: lazyPower: I commented on the bug ^.  I think the actual problem is the charm code had a bug, and would not destroy because a hook returned non zero and that is literally how Juju hooks works.18:52
* lazyPower smirks18:52
hatchhttps://bugs.launchpad.net/juju-core/+bug/158575018:52
mupBug #1585750: Destroying a service in error gives no feedback <juju-core:New> <https://launchpad.net/bugs/1585750>18:52
hatchmbruzek: your comment doesn't really apply18:55
hatchmbruzek: if you want to fix the error then fix the error18:56
hatchyou wouldn't destroy it if you wanted to fix it would you?18:56
mbruzekin the charm code rather than fix juju18:56
lazyPowerstop isn't executed without first destroying the service or removing a unit18:56
magicaltroutmarcoceppi: ping18:56
lazyPoweryou may not know its a problem until you've already issued the destroy stanza, and by your proposal - there is no way to really debug it. its just LOL bye.18:56
marcoceppimagicaltrout: yo18:56
mbruzekActually hatch that is a valid test case when developing a charm. I want to make sure that the charm goes down cleanly18:56
magicaltrouthey, 2 things18:57
magicaltrouta) warning: bugs-url and homepage are not set.  See set command.18:57
magicaltrouthmm nm18:57
mbruzekhatch: There is no other way to call the stop hook that I know of.18:57
magicaltroutignore that one18:57
magicaltroutb) https://jujucharms.com/u/apachesoftwarefoundation/ why did the charm I publish earlier vanish?18:57
marcoceppimagicaltrout: are you logged in18:57
magicaltrouti am logged in18:58
hatchmbruzek: This is the first time I've ever heard of any reason to not clean up on error18:58
mbruzekhatch: If the charm *-broken relations, or stop hooks, did something really important, I would TOTALLY want to know if they worked or not.18:58
hatchmbruzek: but put yourself in the users shoes - how are they supposed to know any of this?18:59
mbruzekLike backing up data to S3 or doing other important clean up things18:59
magicaltrouti fully had a charm there earlier that I went to look at and stuff18:59
lazyPowermagicaltrout - its likely permissions18:59
hatchmbruzek: there is literally 0 feedback or help given to the user18:59
mbruzekhatch: I *am* thinking of the users. I would propose that you are using the wrong command.18:59
lazyPowermagicaltrout - pastebin teh output of charm show cs:~apachefoundation/mything18:59
hatchmbruzek: so what command am I supposed to use?18:59
mbruzekIf there are errors in the hook, remove-machine18:59
mbruzekor resolve the errors19:00
natefinchmbruzek: In the long term, 99.9999% of users will not be charm authors19:00
hatchok so I'm supposed to know that when I try to destroy a service, if there is an error I need to remove the machines19:00
hatchbut I have to actually check juju status19:00
hatchoften19:00
hatchto know what commands to run19:00
magicaltroutmarcoceppi: http://paste.ubuntu.com/16691257/19:00
lazyPowermagicaltrout   Read:19:01
lazyPower  - apachesoftwarefoundation19:01
lazyPowerthats the issue19:01
lazyPowermagicaltrout charm grant cs:~apachesoftwarefoundation/trusty/joshua-full --acl=read everyone19:01
lazyPowerthe reason you saw it was because you were logged into the store, and had access to "read" the charm19:01
lazyPowerif you checked it in private mode, you would not have seen it.19:01
mbruzekhatch you and natefinch, when a hook returns a non zero return code Juju pauses to let the admin fix the stuff. If the stop hooks were doing some legit backup sequence, the admin would totally want to know if that is not working19:02
magicaltroutyou are correct lazyPower it is perms related.... that said jujucharms.com says I'm logged in19:02
lazyPowerooo19:02
lazyPowerweird19:02
hatchmbruzek: fine, but how do they know that?19:02
magicaltroutand once I granted permissions it appeared, but i'm on the homepage and can see my face19:02
magicaltroutwhich tends to indicate i am logged in19:02
hatchhow do they know to resolve the units?19:02
magicaltroutanyhoo, weird, but works, thanks a lot19:02
lazyPowerhatch - clairvoyance obviously19:03
hatchlazyPower: this is how my experience has been, yes19:03
lazyPoweras i said, feedback is fine19:03
mbruzekhatch: Charms throw all kinds of errors, resolve is the mechanism to force Juju to proceed19:03
natefinchI think that if the unit is in an error state *before* calling juju destroy-unit, we should warn the user and ask them if they want to destroy it anyway19:03
lazyPowerbu ti do take issue with wholesale deletion of a service in error state19:03
lazyPowerunless you make it flag based where thats not default behavior19:03
lazyPoweras cmars suggested which is nice middle ground19:03
lazyPowercmars thanks for being the voice of reason in this19:04
cmarsreason? me? what? :)19:04
lazyPoweryou're the only one who piped in with adding --i-mean-it19:04
cmars:)19:04
lazyPowerwhich is nice middle ground19:04
lazyPowerkeep default behavior, give the hatches of the world an option to wholesale delete19:04
hatchI really don't understand why there is so much resistance to working hard on user experience with the CLI19:04
hatchthere is a problem, lets work on a fix19:04
hatchnot drag our heals because this is how it is19:05
lazyPowerhatch - because your campaigning for something thats really destructive and ops people will not appreciate it19:05
cmarsi think mbruzek has a good point, but i've certainly screwed up a charm with repeated `juju upgrade-charm --force-units ... ; juju resolved --retry` that I have no confidence its state reflects any kind of debuggable reality19:05
lazyPoweryup19:05
lazyPowerwe've all been there but thats an edge case19:05
cmarsthere's also the case where you're trying out different versions of charms, not really developing on them, just evaluating them19:06
natefinchI think the problem might just be that a hook error can mean two wildly different things - one is "something external is wrong, you have to do this concrete step to fix it before I can continue" and the other is "there's a bug in the hook, good luck!"19:06
cmarsoops, i got the old precise version.. nooo19:06
hatchlazyPower: I strongly disagree that leaving the user to "just have to know" what to do is a good idea19:07
cmarswith reactive its easier to be resilient in the face of externalities19:07
hatchyou should always do what they expect to do19:07
lazyPowerhatch - i didnt say dont give the user feedback19:07
lazyPoweri said dont wholesale delete my thing unless you are absolutely sure thats what i want19:07
lazyPoweragain, conflating 2 issues19:07
lazyPowerplease stop and re-read my exact statement of my stance in teh 3 lines above19:08
lazyPowerbecause its really exhausting repeating myself on this19:08
cmarshmm19:08
hatchlazyPower: I just want user feedback with instructions on how do what the user is intending19:08
hatchlazyPower: what do you think the user wants to do when they type 'destroy-service' ?19:08
hatchit's certainly not sit there19:08
natefinchERROR: unit is in an errored state, can't be removed. To remove anyway, use juju destroy-unit foo/0 --force.19:08
hatch^ this19:08
godleon lazyPower, good! thanks for your information. And..... the images caches is for LXD or for both?19:28
lazyPowerlxd requires you to import the image before you can even launch the container, so to be fair, both19:28
godleonlazyPower, hmm...........it makes sense.19:33
ryebotmarcoceppi, lazyPower - what's the right way to fix this? https://github.com/juju-solutions/layer-basic/pull/7019:42
marcoceppiryebot: why are we just seeing this now?19:42
ryebotmarcoceppi still trying to figure that out - best guess is some package deps changed and are pulling in 8.1.1 now19:43
ryebotcynerva, you experimented with this - can you comment?19:43
Cynervamarcoceppi ryebot - not much info, i'm seeing the issue too, on xenial but not trusty19:44
marcoceppiCynerva: sure, but when I did a xenial deploy last week I didn't get this error19:44
Cynervamarcoceppi yeah - seems like something changed today19:45
marcoceppiso weird19:45
ryebotmarcoceppi yeah, last few hours, happened to both of us independently at roughly the same time19:45
marcoceppixenial has always had 8.1.119:45
ryebotmarcoceppi yeah, but I think it wasn't being pulled in before19:46
ryebotmarcoceppi so we pulled in 7.1.2 first19:46
lazyPowerperhaps you used virtualenv: true, and that locked your pip version in a virtualenv instead of using system pip?19:46
marcoceppicharm build and layer-basic haven't changed ina bit19:46
lazyPoweror perhaps thats the path forward?19:46
* lazyPower is not positive, but thinks that would have some good results, isolating from system deps and creating your own python tree of goodness19:47
marcoceppilazyPower: it's annoying to have to do that, but possible owrk around19:47
lazyPowerwell we are getting kind of funky with python across series these days19:47
lazyPowerconsidering xenial is py3 default, trusty is py2 default, and we're somewhere in the middle of all that19:47
* marcoceppi does tests19:48
marcoceppilazyPower: py3 is on both trusty and xenial19:48
marcoceppithat's not a problem, it's the versions of pip that's problematic19:48
marcoceppiI can't remember why we had to upper bound pip for trusty, but we did19:48
marcoceppihuh, maybe not. It looks like I just upper bound it for no good reason19:50
marcoceppiryebot: I think your pull request is OK actually'19:50
* ryebot reopens his PR victoriously!19:51
lazyPower\o/19:58
lazyPowermarcoceppi - i think at the time there was a dependency issue like the frequent path.py woes. i dont recall the exact details, but it was a temporary solution to a temporary problem20:01
marcoceppilazyPower: possibly20:03
magicaltroutmarcoceppi: whats the latest beta?20:08
marcoceppibeta720:08
magicaltroutis there a ppa for that?20:09
lazyPowerppa:juju/devel20:11
magicaltroutaye ta20:11
lazyPoweror grab charmbox:devel20:11
=== mramm_ is now known as mramm
=== natefinch is now known as natefinch-afk

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