/srv/irclogs.ubuntu.com/2018/05/29/#juju.txt

kelvinliu_hi veebers mind to take a look these 3 PRs when u got some time? thx https://github.com/juju/juju/pull/8777  https://github.com/CanonicalLtd/juju-qa-jenkins/pull/38/files https://github.com/CanonicalLtd/juju-qa-jenkins/pull/43/files01:18
veeberskelvinliu_: can do :-)01:29
kelvinliu_veebers, thx :)01:30
veeberskelvinliu_: for nw-bootstrap-caas-lxd did you land your fixes for it?01:36
kelvinliu_veebers, yes, it's in dev branch now01:37
veeberssweet01:37
kelvinliu_i set all the two test running on goodra only for now.01:38
veeberskelvinliu_: for https://github.com/juju/juju/pull/8777 am I right in thinking that other than assess_caas_bootstrap.py and assess_caas_deploy_charms.py the rest i the charm inclusion?01:38
veeberskelvinliu_: cool, once we've done the full move to lxd 3.0 we can change that to include all the lxd-slave machines01:39
kelvinliu_veebers, yes, u r right, we only need to look on the first two changed files, the rest are all charm files01:47
veeberskelvinliu_: ack, reviewed. I'm not reviewing the charm code ^_^01:48
kelvinliu_veebers, i also didnot read the files, but just checked all the changes files are at `charms` dir01:51
babbageclunkwallyworld: can we chat? I'm a bit lost and confused01:54
kelvinliu_veebers, i was planning to do(assert) http health-check after gitlab stabilised, but that needs expose the app which is a little bit difficult to achieve here for now, so instead, I use `wait_for_workloads` to ensure all the app are `active` or it will fail at timeout.01:58
kelvinliu_veebers, do u think it's reasonable ?01:59
veeberskelvinliu_: what's the complexity in exposing the app?01:59
kelvinliu_veebers, we need to expose the k8s node ip01:59
veeberskelvinliu_: I don't think that just deploying the app is quite sufficient, it's possible the deploy 'works' and status states it happy but then nothing actually works for whatever reason02:00
kelvinliu_wallyworld, any thoughts about how to solve this?02:02
veeberskelvinliu_: how is this normally done (by a person) it seems getting access to the deployed app should already be an achievable thing, unless I misunderstand02:02
wallyworldkelvinliu_: tail the log and wait for "gitlab ready". kubectl logs -f ....02:05
kelvinliu_wallyworld, currently, the test could ensure all the apps are in ready status now02:06
veeberswallyworld: is that sufficient enough to ensure the application is responsive? Could we do something similar to where we're using mediawiki and make a url request to the address and check the response02:06
kelvinliu_wallyworld, do we need expose gitlab then curl the service to do health check in the test?02:07
wallyworldveebers: gitlab will only print that final message once it has properly initialised itself, created alll the db tables, set things up etc. for now i think that's ok02:07
wallyworldwe could expose and check the url though02:07
wallyworldkelvinliu_: any reason why we can't get the worker ip address and expose via xip.io?02:08
veeberseven a check for a 200 response would be good, but as soon as you're that far it's just a little more to check the output in some meaningful way02:08
veeberswallyworld: I think I'm missing some knowledge, is a caas deployed app different in it's ability to expose access than an IAAS app?02:09
wallyworldyes, you need to provide a FQDN for ingress02:10
wallyworldso we fudge that using xip.io and the ip address of a worker node02:10
wallyworldin production it would be set up properly02:10
wallyworldit's explained a bit more in the getting started doc02:11
kelvinliu_wallyworld, we might be able to get the node ip from juju status -m base-model02:11
veebersack I see. we would need to check with IS to see if we could get the right firewall holes poked for access to xip.io. I'll run an initial question past them now02:11
wallyworldkelvinliu_: that's right, that's what we need to do02:12
babbageclunkwallyworld: have a moment to chat about these benchmarks? I'm v confused.02:14
* babbageclunk taps his mic. This thing on?02:18
babbageclunkhey, axw_, I'm having some trouble with some raft stuff... ;)02:23
axw_babbageclunk: o/02:23
babbageclunkhow's it going?02:24
axw_what's the issue?02:24
axw_babbageclunk: pretty good thanks, and yourself?02:24
babbageclunkyeah, mostly good, other than bashing my head on some benchmarking stuff.02:25
axw_babbageclunk: so my raft code is all falling apart right on schedule?02:27
=== axw_ is now known as axw
babbageclunkheh02:27
veeberswallyworld, kelvinliu_ I think we should be ok with xip.io in the lab (assuming I understood properly :-)).02:30
wallyworldsgtm02:30
kelvinliu_veebers, awesome! i am adding features on CaasClient to do http health check on apps02:31
veeberskelvinliu_: awesome!02:31
kelvinliu_wallyworld, i am thinking we might be able to let `juju expose` do the `juju-external-hostname` config by itself (before creating ingress resource, juju describes facts from k8s api server)02:36
wallyworldkelvinliu_: that's essentially what happens. for k8s models, juju expose will read the app config to get the external hostname as configured and willuse that02:37
kelvinliu_wallyworld, i mean we can let juju figure out(describefrom k8s api) what the node ip that this app is running on is02:40
wallyworldkelvinliu_: that's hard coding behaviour to one specific deployment scenario02:41
wallyworldkelvin: not sure if you saw my last message as there was a netsplit. we can't assume any particular deployment scenario. for our simple test case, there's only 1 worker and so yes the ip and xip.io work. but in general no, so juju can't guess. it needs to be told the external host name02:49
kelvinwallyworld, yes, u r right. And when we have more than one ingress backend available in the cluster, we will need to specify the ingress class to use for example, not sure yet if we are able to fetch the host name from there as we can find the related ingress by the ingress class annotation now.02:53
wallyworldkelvin: for the CI test, we simply need to get the IP address of the single worker node, set the juju-external-hostname application config accordingly, and then we can expose and connect02:55
kelvinwallyworld, this potentially could be a very later feature. we can discuss in the future02:55
wallyworldthe ingress class to use defaults correctly to xginex02:55
wallyworldthere's no extra config needed02:55
wallyworldfor the CI test02:56
kelvinwallyworld, yes, for ci test, i will just fetch the node ip from status output which will be suffucient for us02:56
wallyworldyup02:56
veebersHow can I run all the tests in apiserver/facades/controller/? ./... doesn't work it complains about no go files (which is fair enough there are none, but I want it to recurse from there down04:13
wallyworldveebers: go test ./...04:39
wallyworldjam: babbageclunk need to get your input on some benchmarking if you are free at some point04:40
babbageclunkwallyworld: I added that recording - the times are consistent between the two request methods, so it's the way apache bench is calculating things that is different04:42
wallyworldinteresting ok04:42
wallyworldso raft is worse at lower volumes04:42
babbageclunkThe other possibility is that the lease claimer is doing less than I thought it was - I'm looking into that at the moment.04:43
babbageclunkwallyworld: but otherwise, seems like it04:44
wallyworldok04:44
jamhey babbageclunk are you around now?05:16
jamveebers: go test -check.v github.com/juju/juju/apiserver/facades/controller/... ?05:17
jamveebers: ah sorry, -check.v must come *after* the '...'05:17
veebersjam, wallyworld cheers will try that05:17
jambecause there are 2 processes, one is the 'go test' and the other is the compiled binary. once 'go test' reads an arg it doesn't understand (like -check.v) it stops parsing the rest05:17
wallyworldjam: i'm here, i wanted to talk about the raft stuff as well. babbageclunk will hopefully be back soon05:18
wallyworldif not maybe you and i can talk05:18
jamwallyworld: yeah, but I don't like talking to you... :)05:19
wallyworld:-(05:19
jamjust a sec and I'll jump on a HO05:21
wallyworldjam: which HO?05:23
jamwallyworld: https://hangouts.google.com/hangouts/_/canonical.com/juju?authuser=105:25
babbageclunkoops got distracted, coming too!05:26
babbageclunkI didn't word that well, I mean I'm joining the hangout as well.05:26
jambabbageclunk: ^^05:26
veebersjam, wallyworld sweet thanks I had the ./... in the wrong place it seems. Cheers!05:30
wallyworldgreat05:31
jamwallyworld: your PR is bundled with other code that is bumping the Version ?06:16
wallyworldjam: there's a separate juju pr under develipment by vino which will06:34
jamwallyworld: ok. cause you're changing the format of App v3,but that will be covered elsewhere?06:35
wallyworldjam: app v3 was done to cater for caas stuff which hasn't shipped yet, ie for juju 2.406:35
wallyworldjuju 2.3 doesn't export any caas stuff06:36
wallyworldthanks jam06:38
=== frankban|afk is now known as frankban
=== frankban is now known as frankban|afk
=== frankban|afk is now known as frankban
=== Matt_ is now known as Guest61248
thedacCan I get a review of https://github.com/juju/layer-index/pull/30 ?15:36
thedaccory_fu perhaps?15:36
thedackwmonroe:15:36
kwmonroethedac: would you please run ./update-readme.py from your thedac:keystone-admin-github repo, and then push?17:00
thedackwmonroe: will do17:03
kwmonroegracias thedac!17:03
thedackwmonroe: done17:04
kwmonroemerged thedac.  thanks!17:09
thedacthank you, kwmonroe17:09
=== frankban is now known as frankban|afk
=== Beret- is now known as Beret
=== grumblr is now known as grumble
erik_lonroth@rick_h https://github.com/juju/docs/pull/272619:01
erik_lonrothThe pull request above contains a series 1,2,3 of beginner level charming. I hope you can test it and eventually add something like this to the tutorial.canonical.com (?) perhaps. Regardless, this hopefully can help some people get through the first agonizing phases of development in juju.19:03
pmatuliserik_lonroth, thanks for that19:14
rick_h_erik_lonroth:  amazing! I look forward to checking it out19:17
TheAbsentOnerick_h_: could you relink what erik_lonroth said? Seems interesting. I'm finishing a getting started guide as well ^^19:21
TheAbsentOneinbefore it's completely the same19:21
rick_h_TheAbsentOne: https://github.com/juju/docs/pull/272619:21
TheAbsentOneholy it really is x) fml19:22
TheAbsentOnehaha19:22
TheAbsentOneit's good stuff though, would have saved me a lot of time if I had that to start out with a couple of months ago19:24
TheAbsentOnenicely done erik_lonroth19:24
pmatulisTheAbsentOne, perhaps you can comment on his PR. i'm sure you must have some stuff to add19:28
TheAbsentOnepmatulis: I'll take a look!19:29
TheAbsentOnepmatulis: erik_lonroth: I made a comment with some suggestions. I'll try to finish my roadmap as well and part of it could function as a part 4 if you guys are up for that19:44
erik_lonrothTheAbsentOne: I'll update taking your comments and suggestions into it. Thanx for the feedback! Also, I think more beginner level tutorials would be needed. Consider if "Part 4 - interfaces"  would be a beginner level, or, perhaps a intermediate level tutorial. Splitting tutorials into "Beginner" - "Intermediate" - "Experienced" would help the community to add more tutorials on more topics around juju. Also, having all tutorials follow a "21:03
erik_lonrothformat-template" to make them feel easy to follow would be great. Have a look at how Android tutorials are built. Those are really awesome example on how to growe a community with tutorials.21:03
TheAbsentOneI completely agree erik_lonroth, I'll share a markdown page (and github url) once I'm finished and you guys can decide later ^^21:18
erik_lonrothgo for it!21:19
pmatuliserik_lonroth, also https://tutorials.ubuntu.com/21:23
pmatulisbut the official docs could use a lot of attention re charm writing21:24
TheAbsentOnebesides something that I don't know: if I deploy a charm how much freedom do I have in terms of cpu, ram, storage actually? At design time and at controller time?21:26
pmatulisTheAbsentOne, you can use "constraints". what do you mean by 'design' and 'controller' time?21:30
TheAbsentOneWell I haven't actually worked with a juju controller directly. All I got were models to work with. But pmatulis I assume you can't say "I want to deploy a mysql charm on a centos that has X RAM and 64 bits and Y Gb worth of storage" right? Or how does that actually work? Sorry if it's a stupid question21:35
TheAbsentOne_Damnit internet broke x(21:40
TheAbsentOne_kinda found my answer pmatulis with the constraints21:42
TheAbsentOne_Im off to bed now, I hope to finish the "small" tutorial in the next 24 hours depending on some other stuff21:44

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