*** neiljerram has quit IRC | 00:17 | |
*** apuimedo has quit IRC | 00:17 | |
*** yedongcan has joined #openstack-kuryr | 00:40 | |
*** apuimedo has joined #openstack-kuryr | 00:42 | |
*** hongbin has quit IRC | 00:45 | |
*** rubabsyed has quit IRC | 00:50 | |
*** limao has joined #openstack-kuryr | 01:09 | |
openstackgerrit | gecong proposed openstack/kuryr-libnetwork master: delete unused log translations in kuryr_libnetwork https://review.openstack.org/450659 | 01:29 |
---|---|---|
openstackgerrit | gecong proposed openstack/kuryr-libnetwork master: delete unused log translations in kuryr_libnetwork https://review.openstack.org/450659 | 01:31 |
openstackgerrit | gecong proposed openstack/kuryr-libnetwork master: delete unused log translations in kuryr_libnetwork https://review.openstack.org/450659 | 01:33 |
openstackgerrit | gecong proposed openstack/kuryr-libnetwork master: delete unused log translations in kuryr_libnetwork https://review.openstack.org/450659 | 01:35 |
openstackgerrit | gecong proposed openstack/kuryr-libnetwork master: delete unused log translations in kuryr_libnetwork https://review.openstack.org/450659 | 01:45 |
*** limao has quit IRC | 01:47 | |
*** limao has joined #openstack-kuryr | 01:47 | |
*** yedongcan has quit IRC | 01:49 | |
openstackgerrit | gecong proposed openstack/kuryr-libnetwork master: delete unused log translations in kuryr_libnetwork https://review.openstack.org/450659 | 01:58 |
*** yedongcan has joined #openstack-kuryr | 02:01 | |
*** yamamoto has joined #openstack-kuryr | 02:29 | |
*** yamamoto has quit IRC | 02:33 | |
*** aojea has joined #openstack-kuryr | 02:49 | |
*** aojea has quit IRC | 02:54 | |
*** yuanying has quit IRC | 02:55 | |
openstackgerrit | gecong proposed openstack/kuryr-libnetwork master: delete unused log translations in kuryr_libnetwork https://review.openstack.org/450659 | 02:59 |
openstackgerrit | gecong proposed openstack/kuryr-libnetwork master: delete unused log translations in kuryr_libnetwork https://review.openstack.org/450659 | 03:01 |
*** vikasc has joined #openstack-kuryr | 03:14 | |
*** yuanying has joined #openstack-kuryr | 04:39 | |
*** hlo323 has quit IRC | 05:09 | |
*** vikasc has quit IRC | 05:17 | |
*** vikasc has joined #openstack-kuryr | 05:29 | |
*** yamamoto has joined #openstack-kuryr | 05:35 | |
*** limao has quit IRC | 05:38 | |
*** limao_ has joined #openstack-kuryr | 05:38 | |
*** yamamoto has quit IRC | 05:40 | |
*** huats has quit IRC | 05:56 | |
*** ltomasbo|away is now known as ltomasbo | 06:03 | |
*** pcaruana has joined #openstack-kuryr | 06:24 | |
*** yamamoto has joined #openstack-kuryr | 06:41 | |
*** lihi has quit IRC | 06:46 | |
*** irenab has quit IRC | 06:46 | |
*** yamamoto has quit IRC | 06:47 | |
*** oanson has quit IRC | 06:48 | |
*** yedongcan has quit IRC | 06:50 | |
*** yedongcan has joined #openstack-kuryr | 06:52 | |
*** yedongcan has quit IRC | 07:04 | |
*** yedongcan has joined #openstack-kuryr | 07:05 | |
*** aojea has joined #openstack-kuryr | 07:20 | |
*** dimak has joined #openstack-kuryr | 07:27 | |
*** svinota has joined #openstack-kuryr | 07:31 | |
dmellado | apuimedo: ping re: packaging | 07:36 |
dmellado | we need to do some changes | 07:36 |
dmellado | xD | 07:36 |
apuimedo | dmellado: want to discuss them or send merge req? | 07:38 |
dmellado | apuimedo: want to discuss a few things before modifying the rdo stuff | 07:39 |
dmellado | I mean, I was asked to match the upstream repo name | 07:39 |
dmellado | i.e. kuryr and kuryr-kubernetes | 07:39 |
dmellado | gthen the package names would be python-kuryr and so | 07:39 |
* dmellado will pm you | 07:40 | |
apuimedo | ok | 07:40 |
*** aojea_ has joined #openstack-kuryr | 07:41 | |
*** yamamoto has joined #openstack-kuryr | 07:43 | |
*** aojea has quit IRC | 07:44 | |
*** yamamoto has quit IRC | 07:48 | |
janonymous | hongbin:hi, can i know the problem about etcd? would a check on installation will not be gud? | 08:00 |
*** svinota has quit IRC | 08:13 | |
*** yuanying has quit IRC | 08:31 | |
*** limao has joined #openstack-kuryr | 08:34 | |
*** limao_ has quit IRC | 08:34 | |
*** neiljerram has joined #openstack-kuryr | 08:36 | |
*** yamamoto has joined #openstack-kuryr | 08:45 | |
*** yamamoto has quit IRC | 08:50 | |
*** limao has quit IRC | 09:04 | |
*** limao has joined #openstack-kuryr | 09:05 | |
*** egonzalez has joined #openstack-kuryr | 09:15 | |
*** pmannidi has quit IRC | 09:16 | |
*** yuanying has joined #openstack-kuryr | 09:39 | |
*** yuanying has quit IRC | 09:44 | |
janonymous | irenab: hi,This patch looks a bit different from explanation in bp: http://paste.openstack.org/show/602736/ | 09:45 |
janonymous | irenab: which one is better approach? | 09:45 |
*** yamamoto has joined #openstack-kuryr | 09:46 | |
*** yuanying has joined #openstack-kuryr | 09:47 | |
*** yamamoto has quit IRC | 09:52 | |
*** ltomasbo is now known as ltomasbo|away | 09:55 | |
*** limao has quit IRC | 10:15 | |
*** limao has joined #openstack-kuryr | 10:16 | |
*** limao has quit IRC | 10:20 | |
*** yedongcan has left #openstack-kuryr | 10:22 | |
*** yamamoto has joined #openstack-kuryr | 10:48 | |
*** egonzalez has quit IRC | 10:50 | |
*** yamamoto has quit IRC | 10:54 | |
*** yamamoto has joined #openstack-kuryr | 11:09 | |
*** yamamoto has quit IRC | 11:19 | |
*** svinota has joined #openstack-kuryr | 11:35 | |
*** ltomasbo|away is now known as ltomasbo | 11:42 | |
kzaitsev_ws | hm. does anybody know — how does k8s allocates ips for services? It looks like kubernetes just chooses one from --service-cluster-ip-range and then asks kuryr-k8s to create one | 11:49 |
openstackgerrit | Kirill Zaitsev proposed openstack/kuryr-kubernetes master: [WIP] K8s Services support: LoadBalancerHandler https://review.openstack.org/376045 | 11:52 |
kzaitsev_ws | logic looks a bit inverted here tbh =) | 11:57 |
*** egonzalez has joined #openstack-kuryr | 12:07 | |
*** limao has joined #openstack-kuryr | 12:17 | |
*** yamamoto has joined #openstack-kuryr | 12:20 | |
*** limao_ has joined #openstack-kuryr | 12:20 | |
*** limao has quit IRC | 12:22 | |
*** yamamoto has quit IRC | 12:25 | |
*** janki has joined #openstack-kuryr | 12:27 | |
ivc_ | kzaitsev_ws what do you mean by 'inverted logic'? | 12:33 |
ivc_ | kzaitsev_ws and yes, clusterip is selected by k8s and passed to neutron | 12:34 |
*** limao_ has quit IRC | 12:39 | |
*** limao has joined #openstack-kuryr | 12:39 | |
apuimedo | kzaitsev_ws: yes. It decides as it wants | 12:58 |
apuimedo | it doesn't support external ipam :'( | 12:58 |
*** limao has quit IRC | 13:00 | |
*** limao has joined #openstack-kuryr | 13:01 | |
dmellado | apuimedo: too bad | 13:02 |
dmellado | I was expecting so much more from you | 13:02 |
apuimedo | dmellado: As wormtongue told Gandalf in the golden hall, they tell me in K8s "You have no power here, Gandalf the grey" | 13:04 |
dmellado | but I pictured you as the Evil Angmar Witch-King | 13:05 |
dmellado | well, it was either that or Gollum, but... | 13:05 |
apuimedo | I see myself as a hobbit | 13:05 |
apuimedo | a glutton one | 13:06 |
apuimedo | ivc_: well, the ideal would be to have external ipam for the services... I think mesos has that. But it's no big deal | 13:06 |
apuimedo | kzaitsev_ws: just remember to have the router interface on the service network on the last IP address of the range | 13:06 |
apuimedo | if you have it on the first one, k8s allocates it quickly | 13:06 |
* apuimedo is ashamed. It was not wormtongue. It was Saruman through Theoden's mouth | 13:08 | |
apuimedo | I'll go cry at my mistake | 13:08 |
ivc_ | apuimedo we solved it for devstack, but i wonder how to properly handle it in prod envs | 13:08 |
ivc_ | apuimedo the router ip i mean | 13:08 |
apuimedo | ivc_: it's deployment | 13:08 |
apuimedo | so for openshift, for example | 13:08 |
apuimedo | I'll have openshift ansible, which uses Heat, deal with it in heat template | 13:08 |
apuimedo | I suppose | 13:08 |
*** mattmceuen has joined #openstack-kuryr | 13:10 | |
ivc_ | apuimedo yes it is deployment, but maybe we should check/validate. right now it would lead to a stack trace with something like 'ip in use' neutron exc | 13:11 |
ivc_ | apuimedo which is fine, but i'd prefer a better ux and us telling the user what he did wrong in log instead of stack-trace | 13:11 |
apuimedo | agreed | 13:12 |
ivc_ | not in this patch tho XD | 13:12 |
apuimedo | This is a bug. We should at least notify that is being used by the router | 13:12 |
ivc_ | i wont call it a bug - its a result of misconfiguration | 13:13 |
apuimedo | ux bug | 13:14 |
ivc_ | apuimedo btw can you remind me whats our current view of using k8s third party resources? | 13:19 |
apuimedo | ivc_: avoid if possible. Use if it brings something worth it | 13:20 |
apuimedo | its usage is not discouraged | 13:20 |
ivc_ | apuimedo yeah, i remember that, but whats the reasoning behind 'avoid if possible'? | 13:21 |
*** limao has quit IRC | 13:22 | |
ivc_ | apuimedo is it only due to the k8s api not being stable yet or something else? | 13:22 |
*** yamamoto has joined #openstack-kuryr | 13:22 | |
*** limao has joined #openstack-kuryr | 13:22 | |
apuimedo | ivc_: no. It's like. If we can do things without using at no cost, we don't use it | 13:24 |
apuimedo | like for example, if we said, ok, let's use it for vifs instead of annotations | 13:25 |
apuimedo | I'd say it would probably be misguided | 13:25 |
dmellado | apuimedo: go cry, yep | 13:25 |
dmellado | now seriously, +1 on ivc_ suggestion | 13:26 |
apuimedo | dmellado: I'll take my illustrated version of the lord of the rings and beat my head with it | 13:26 |
dmellado | apuimedo: let's meet f2f, I'd love to see that | 13:26 |
dmellado | xD | 13:26 |
apuimedo | dmellado: you're just hurt by your deployment failure last week xD | 13:26 |
ivc_ | apuimedo i'd say it should be all-or-nothing - mixing them with annotations would be a mess | 13:26 |
dmellado | apuimedo: I am, totally | 13:26 |
apuimedo | ivc_: how so? | 13:27 |
apuimedo | ivc_: tbh, I've considered moving the vif creation to a scheduler extension | 13:27 |
ivc_ | apuimedo well say we use tpr for services and annotations for vifs - would be kinda ugly | 13:27 |
apuimedo | and then it makes sense to use 3rd party | 13:28 |
*** yamamoto has quit IRC | 13:28 | |
apuimedo | oh no, you still need to watch the pods | 13:28 |
apuimedo | due to the pod deleted event | 13:28 |
ivc_ | yes, but it would be similar to how service-endpoints flow works now | 13:28 |
* apuimedo was thinking of reducing the events to watch by having the controller ignore pod events for a moment (when blood wasn't reaching brain) | 13:28 | |
ivc_ | apuimedo so pod handler would only update tpr and tpr would do the actual work | 13:29 |
ivc_ | apuimedo thats is mostly about deletion/cleanup - we have leftovers if kuryr is down/failing during k8s object deletion | 13:30 |
apuimedo | ivc_: yup. You have the deletion/cleanup still | 13:30 |
apuimedo | how nice would it be for tpr to have cascading :P | 13:31 |
ivc_ | apuimedo what do you mean by cascading? | 13:31 |
apuimedo | tpr linked to pod resource for example, when pod goes, tpr goes | 13:31 |
apuimedo | xD | 13:31 |
apuimedo | but I'm just being nonsensical | 13:32 |
ivc_ | no! thats exactly what we dont need :) | 13:32 |
apuimedo | It would allow us to ignore pod events | 13:32 |
apuimedo | which is a nice thing™ | 13:32 |
ivc_ | i mean right now if we miss pod deletion event (e.g kuryr down) - we do not cleanup | 13:33 |
apuimedo | right | 13:33 |
ivc_ | but with tpr thats not an issue | 13:33 |
ivc_ | if we miss pod deletion, we'll resync when processing tpr and will cleanup properly | 13:33 |
apuimedo | mmm | 13:35 |
apuimedo | you mean with the async task? | 13:35 |
ivc_ | not necessary, but thats an option. can actually have it as part of handler | 13:36 |
apuimedo | can you describe the flow? | 13:37 |
dmellado | how much of a delay would be that | 13:37 |
dmellado | +1 on describing the flow, I'd like to understand the whole scenario | 13:37 |
ivc_ | i've done something like that in my early patches around september i think - had a timestamp on the object and validated it from time to time | 13:37 |
dmellado | thanks in advance ivc_ ;) | 13:37 |
ivc_ | the flow in general would be similar to current service->endpoints handlers relationship (service sends a 'spec' to endpoints and endpoints do the dirty work) | 13:39 |
ivc_ | so for vifs we'll have pod handler posting 'something' spec-like to the tps | 13:40 |
ivc_ | tps will hold both the spec and neutron reflection of that spec (e.g VIF object) | 13:41 |
ivc_ | ADDED k8s event is trivial and would be same as current | 13:41 |
ivc_ | s/ADDED/MODIFIED/ | 13:42 |
dmellado | ivc_: I see, thanks for the explanation | 13:42 |
ivc_ | but will also have some sort of 'last_verified' timestamp | 13:42 |
*** limao has quit IRC | 13:43 | |
dmellado | ivc_: and how often would you be planning to validate? | 13:43 |
*** limao has joined #openstack-kuryr | 13:43 | |
ivc_ | should be a configuration option | 13:44 |
dmellado | gotcha | 13:44 |
ivc_ | if in addition to that we make our watcher restart from time to time (based on that validation interval) - we wont need any async tasks for cleanup | 13:46 |
* ivc_ would like to avoid adding tasks/scheduler if possible | 13:46 | |
ivc_ | by 'watcher restart' i mean the http request, not the service | 13:47 |
ivc_ | this part: https://github.com/openstack/kuryr-kubernetes/blob/master/kuryr_kubernetes/k8s_client.py#L114 | 13:48 |
ivc_ | afaik there's an argument to k8s 'watch' that allows that, but we could also implement it ourselves | 13:50 |
apuimedo | I'm not sure I see enough benefit for the added roundtrips | 13:51 |
ivc_ | apuimedo you need those roundtrips for cleanup anyway | 13:52 |
ivc_ | apuimedo even with async tasks | 13:53 |
apuimedo | but not for creation | 13:53 |
* apuimedo is creation obsessed | 13:53 | |
ivc_ | creation wont necessary require any roundtrips | 13:53 |
*** svinota has quit IRC | 13:54 | |
apuimedo | ivc_: you see pod, you create tpr, you see tpr, you create neutron resource | 13:55 |
apuimedo | there's an extra roundtrip | 13:55 |
ivc_ | ah you mean that | 13:56 |
apuimedo | yup | 13:58 |
dmellado | well, I don't think that would be *that much* extra roundtrips | 14:00 |
dmellado | but we could try to check out some another workflows | 14:00 |
ivc_ | well then it leaves us to prolly the only other option of tracking objects in kuryr's memory | 14:00 |
apuimedo | ivc_: kuryr is like me. Its memory is not trustworthy | 14:01 |
ivc_ | how so? | 14:01 |
*** janki has quit IRC | 14:02 | |
ivc_ | and i did not say i'd like the 'in-memory' approach btw, cuz it prolly lead to scalability issues | 14:02 |
apuimedo | ah, ok | 14:02 |
*** limao has quit IRC | 14:04 | |
*** limao has joined #openstack-kuryr | 14:05 | |
ivc_ | ok lets look at it from different perspective. what i'm saying is that i'd like some sort of 'storage' for objects instead of annotations, mostly due to cleanup issues | 14:05 |
ivc_ | that 'storage' can be populated by watch handlers from one side and by querying (list'ing) neutron resources from the other side | 14:06 |
apuimedo | I'm just missing the advantage over annotations somehow | 14:07 |
apuimedo | :( | 14:07 |
ivc_ | cleanup is a mess with annotations | 14:07 |
apuimedo | I agree with that | 14:07 |
apuimedo | with tpr, you still have to go and check if the fpr exists though, for all the tprs | 14:08 |
apuimedo | when you want to cleanup orphan resources | 14:08 |
ivc_ | you can call 'storage' the 'resource manager' if you like | 14:08 |
apuimedo | as in the pool? | 14:11 |
ivc_ | not exactly implementation-wise :) | 14:12 |
apuimedo | well, the storage for that was agreed to be neutron/octavia | 14:14 |
apuimedo | with tags and stuff like that | 14:14 |
*** dimak has quit IRC | 14:16 | |
*** yamamoto has joined #openstack-kuryr | 14:24 | |
*** limao has quit IRC | 14:25 | |
*** limao has joined #openstack-kuryr | 14:26 | |
ivc_ | yes but imo we need a generalised api. right now it is part of the driver and each driver has to re-implement things like 'ensure' logic | 14:26 |
ivc_ | so i'm suggesting the drivers to be low-level stuff (list/create/delete) and the 'ensure' logic to be composable | 14:27 |
ivc_ | and cleanup | 14:28 |
ivc_ | i'd hate if we need to implement cleanup tasks as part of the drivers | 14:29 |
*** yamamoto has quit IRC | 14:29 | |
ivc_ | apuimedo ^ | 14:29 |
ivc_ | apuimedo also we need to consider using iterator-based 'list', but thats another topic | 14:31 |
apuimedo | ivc_: it's tough to generalize | 14:31 |
apuimedo | sorry, I missed the reference to the new topic | 14:32 |
ivc_ | if you have thousands of ports, neutron list will return a huge dict that eats memory | 14:33 |
ivc_ | afaik there's an option to neutron client to return iterator instead (dno how it works internally) or one can use pagination | 14:34 |
apuimedo | oh, sure. I'd prefer that very much | 14:34 |
apuimedo | I hate lists | 14:34 |
apuimedo | I like generators and iterators only | 14:34 |
ivc_ | so that must be enforced on api level for drivers | 14:34 |
apuimedo | review enforcement or "hacking" ? | 14:35 |
ivc_ | hacking? | 14:35 |
apuimedo | yes, some hacking rules | 14:35 |
apuimedo | :P | 14:35 |
apuimedo | to be enforced at PEP8 time | 14:35 |
*** ltomasbo is now known as ltomasbo|away | 14:36 | |
dmellado | hacking++ | 14:36 |
ivc_ | that'd be hard to implement. more like a ResourceDriver base class with create/delete/get/__iter__ methods | 14:38 |
apuimedo | dmellado: you are volunteering for the hacking patch, do I get this right? | 14:39 |
dmellado | lol | 14:39 |
dmellado | I can do that | 14:39 |
dmellado | yep | 14:39 |
dmellado | xD | 14:39 |
dmellado | but /me needs to go now | 14:39 |
dmellado | or I'll be left behinf | 14:39 |
apuimedo | very well | 14:39 |
apuimedo | don't stay in Romania | 14:39 |
apuimedo | come back to the west! | 14:39 |
*** limao has quit IRC | 14:47 | |
*** limao has joined #openstack-kuryr | 14:47 | |
openstackgerrit | Siyi Luo proposed openstack/fuxi master: Use HostAddressOpt for opts that accept IP and hostnames https://review.openstack.org/451448 | 14:53 |
*** limao has quit IRC | 15:08 | |
*** limao has joined #openstack-kuryr | 15:09 | |
*** yamamoto has joined #openstack-kuryr | 15:26 | |
*** limao has quit IRC | 15:29 | |
*** limao has joined #openstack-kuryr | 15:30 | |
*** yamamoto has quit IRC | 15:31 | |
openstackgerrit | Liping Mao proposed openstack/kuryr-libnetwork master: Kuryr-libnetwork Docker managed plugin https://review.openstack.org/449038 | 15:32 |
*** limao has quit IRC | 15:50 | |
*** limao has joined #openstack-kuryr | 15:51 | |
*** aojea_ has quit IRC | 15:56 | |
*** limao has quit IRC | 16:12 | |
openstackgerrit | Liping Mao proposed openstack/kuryr-libnetwork master: Add NetworkDriver api AllocateNetwork and FreeNetwork https://review.openstack.org/451475 | 16:12 |
*** limao has joined #openstack-kuryr | 16:12 | |
*** yamamoto has joined #openstack-kuryr | 16:27 | |
*** yamamoto has quit IRC | 16:33 | |
*** limao has quit IRC | 16:33 | |
*** limao has joined #openstack-kuryr | 16:34 | |
*** egonzalez has quit IRC | 16:34 | |
openstackgerrit | Liping Mao proposed openstack/kuryr-libnetwork master: Update Kuryr-libnetwork Docker managed plugin related doc https://review.openstack.org/451479 | 16:40 |
openstackgerrit | Liping Mao proposed openstack/kuryr-libnetwork master: [WIP]Update Kuryr-libnetwork Docker managed plugin related doc https://review.openstack.org/451479 | 16:41 |
*** kzaitsev_ws has quit IRC | 16:44 | |
openstackgerrit | Liping Mao proposed openstack/kuryr-libnetwork master: Add NetworkDriver api AllocateNetwork and FreeNetwork https://review.openstack.org/451475 | 16:44 |
*** limao has quit IRC | 16:55 | |
*** svinota has joined #openstack-kuryr | 17:10 | |
*** yamamoto has joined #openstack-kuryr | 17:29 | |
*** yamamoto has quit IRC | 17:35 | |
*** tonanhngo has joined #openstack-kuryr | 17:44 | |
*** tonanhngo_ has joined #openstack-kuryr | 17:48 | |
*** tonanhngo has quit IRC | 17:48 | |
*** pcaruana has quit IRC | 17:52 | |
*** tonanhngo_ has quit IRC | 17:52 | |
*** tonanhngo has joined #openstack-kuryr | 17:54 | |
*** aojea has joined #openstack-kuryr | 18:24 | |
*** yamamoto has joined #openstack-kuryr | 18:31 | |
*** yamamoto has quit IRC | 18:36 | |
*** kzaitsev_mb has joined #openstack-kuryr | 18:42 | |
*** dimak has joined #openstack-kuryr | 18:43 | |
*** hongbin has joined #openstack-kuryr | 18:59 | |
*** yamamoto has joined #openstack-kuryr | 19:32 | |
*** openstackgerrit has quit IRC | 19:33 | |
*** yamamoto has quit IRC | 19:38 | |
*** alraddarla has quit IRC | 19:45 | |
*** dimak has quit IRC | 19:51 | |
*** mchiappero has quit IRC | 20:31 | |
*** mchiappero has joined #openstack-kuryr | 20:33 | |
*** yamamoto has joined #openstack-kuryr | 20:34 | |
*** yamamoto has quit IRC | 20:40 | |
*** mattmceuen has quit IRC | 21:28 | |
*** aojea has quit IRC | 21:34 | |
*** yamamoto has joined #openstack-kuryr | 21:36 | |
*** kzaitsev_mb has quit IRC | 21:40 | |
*** yamamoto has quit IRC | 21:42 | |
*** svinota has quit IRC | 21:48 | |
*** kzaitsev_mb has joined #openstack-kuryr | 22:11 | |
*** alraddarla has joined #openstack-kuryr | 22:20 | |
*** kzaitsev_mb has quit IRC | 22:24 | |
*** yamamoto has joined #openstack-kuryr | 22:38 | |
*** yamamoto has quit IRC | 22:42 | |
*** kzaitsev_mb has joined #openstack-kuryr | 22:50 | |
*** pmannidi has joined #openstack-kuryr | 23:14 | |
*** yamamoto has joined #openstack-kuryr | 23:39 | |
*** yamamoto has quit IRC | 23:44 |
Generated by irclog2html.py 2.14.0 by Marius Gedminas - find it at mg.pov.lt!