Friday, 2017-12-08

johnsomWhy would it be looking at line length in the docs?00:00
* rm_work shrugs00:01
johnsomHmm, wonder if it is an order issue for you.  Like you ran docs first then pep800:01
*** threestrands has joined #openstack-lbaas00:01
johnsomSince all of that module stuff is auto generated00:02
rm_workmaybe because my docs run can't complete00:02
rm_workbut why does it shove it in the *source* dir00:02
* johnsom shrugs...00:02
johnsomOh, well, those are the source content files.00:02
johnsomIt takes those and renders them into html or pdf in the build dir00:03
johnsomYeah, this isn't going to fail for me as it cleans those up when it's done00:03
*** yamamoto has quit IRC00:03
johnsomAh, no it doesn't.  Yeah, I get that now with "tox -e docs,pep8"00:04
rm_workwhy wouldn't it put those autogenerated things in the build dir00:06
johnsomBecause those are source files00:06
rm_workbut they aren't00:06
rm_workthey're generated00:06
rm_workduring the build process00:06
rm_workFROM the real source files00:06
johnsomThe are generated source files that are then rendered into the build directory based on the format specified00:07
rm_workif you delete those00:07
rm_workwill they be generated again?00:07
rm_workif so, it's pretty clear they aren't sources00:07
rm_workthey're intermediates at best00:07
johnsomIt's RST files00:08
johnsomRST isn't valid in build00:08
rm_workwell it is clearly not source00:08
johnsomAll our other source files are RST00:08
rm_worksource implies it is ... the source00:12
rm_workbut it's not00:12
rm_workit's generated FROm the source00:12
rm_workit is literally impossible to call something that is generated FROM a source "a source"00:12
johnsomIf we typed that in by hand would it be "source"?00:12
* johnsom looks for the table flip ascii00:13
rm_workbut since it's generated FROM something else00:13
rm_workit should not end up in a source directory00:13
openstackgerritTong Liu proposed openstack/octavia master: Update instance methods to static method
johnsomSphinx only knows of source and build as far as I know...  "source" directory is the RST, "build" is the HTML, PDF, etc.00:14
rm_workwell if they go to the source dir we're going to be running tests on generated files <_<00:14
johnsomMaybe the real issue is that module name is too long...00:15
johnsomWhere do we exclude the build directory from that check?00:19
johnsomI don't think we do.00:19
johnsomSo, hack it? put a rm -rf in the docs block in tox.ini?00:21
rm_workon what? we can't rm -rf source00:23
johnsomHmm doc8 has a --allow-long-titles option...00:23
openstackgerritTong Liu proposed openstack/python-octaviaclient master: Change --http_method arg to --http-method
johnsomThe modules directory was what I was thinking.00:23
rm_workand we do `doc8 specs doc/source octavia`00:23
johnsomI mean I can point that almost anywhere, but as far as I can see that checker runs on everything00:24
rm_workso yes, we exclude build00:24
johnsomAh, well, there we go00:25
*** rcernin has quit IRC00:25
*** rcernin has joined #openstack-lbaas00:25
*** tongl has quit IRC00:27
johnsomSo, we can enable "--allow-long-titles", ignore the autodoc dir completely, or do two runs, one ignoring autodoc and then one that runs it on the autodoc content with --allow-long-titles"00:33
rm_worki think we ignore the autodoc dir00:33
rm_workis there a command for that in doc8?00:34
rm_workah yeah00:34
rm_worki vote for that00:34
rm_workone sec00:34
openstackgerritMichael Johnson proposed openstack/octavia master: Have doc8 ignore autodoc content
johnsomI guess my commit message is slightly off00:35
rm_workah i was just doing it00:35
rm_worki don't think we bother with the generated ones00:36
rm_workthey're generated00:36
rm_workwhy do we care00:36
rm_workwe don't need to test if the generator is broken?00:36
johnsomJust if the docs job is failing and we are running pep to figure out why.00:36
johnsomYeah, it's reaching isn't it00:36
rm_workalso can you remove the tabs00:37
openstackgerritMichael Johnson proposed openstack/octavia master: Have doc8 ignore autodoc content
openstackgerritMichael Johnson proposed openstack/octavia master: Have doc8 ignore autodoc content
johnsomwonder how long those have been there00:38
*** cody-somerville has quit IRC00:39
johnsomOk, quick glance at those exceptions?00:41
rm_workyeah i looked00:42
rm_workthey look sane to me00:42
rm_workI am trying to remember what the thing was that I was really upset about during one of the lunches during the PTG00:42
johnsomOk, I was trying to find the root Exception object to look at.  I was wondering if I should do something with the base "message".  I mean really we are just going to catch these and raise other API excpetions....00:43
johnsomWell, our existing exceptions are a train wreck00:43
johnsomI think the base exception returns true/false for unicode strings.  Not positive, but it looks wrong to me00:44
johnsomThe whole msg/message thing bugs me in our base exceptions00:44
rm_workthey're pretty gross00:45
openstackgerritMichael Johnson proposed openstack/octavia master: Don't run fucntional jobs for docs changes
johnsomOk, thanks for the quick sanity check on those.  I just have the library section and a few other cleanups to go on the driver spec.00:47
*** jniesz has quit IRC00:50
*** SumitNaiksatam has quit IRC00:51
*** yamamoto has joined #openstack-lbaas00:59
johnsomI still think creating a library is a bad idea for these drivers.01:03
johnsomWe are going to have to setup another repo for it01:03
johnsomUnless we make them push that data back to the API servers01:04
*** yamamoto has quit IRC01:04
rm_workwell we wanted a lib anyway01:04
rm_workjohnsom: do we have a priority list still?01:29
rm_workIMO we should have a permanent priority etherpad in the IRC topic01:29
*** sshank has quit IRC01:31
*** sanfern has joined #openstack-lbaas01:31
johnsomSigh, focused on the driver spec and didn’t work on one yet.  If you have cycles, the driver spec is good for reviews other than the library block.  We should also review the qos patch. It has been open a long time and should be good for review01:32
*** csomerville has quit IRC01:48
*** yamamoto has joined #openstack-lbaas02:00
*** harlowja has quit IRC02:03
*** yamamoto has quit IRC02:04
rm_workyeah i was going to02:21
rm_workbut i still don't really know what that is02:21
*** annp has joined #openstack-lbaas02:26
*** sanfern has quit IRC02:28
bzhaoI found the keepalived version 1.2.19 not support multi processes towards a linux network namespace, is it necessary to change the current DIB to source code install/a higher version in diskimage builder elements?02:56
rm_worki didn't think it mattered at all what the app supported02:58
*** yamamoto has joined #openstack-lbaas03:01
bzhaowhen I work on udp coding, I found the current keepalived version is 1.2.19 in amp image, it not support configure that a keepalived process running in a particular linux network namespace. The new keepalived version support 'net_namespace' configuration option. So I just ask if need to update the DIB or I made a mistake?03:03
bzhaoSo I use the reference way that "ip netns exec keepalived -D .....", I still found "Daemon is already existing" in syslog, eventhrough I specified pid file or different configuration.03:06
*** yamamoto has quit IRC03:06
bzhaoBut I test a version 1.3.9, it work as wish..03:07
rm_worki would need to look into it further03:10
rm_workthat seems odd03:10
*** tongl has joined #openstack-lbaas03:10
rm_workbzhao: i did an update to your UDP spec just to fix some wording, if you want to look it over and make sure i didn't change your MEANING anywhere, that'd be good03:11
rm_workthere were a couple places it was a little bit unclear03:11
*** bbbbzhao_ has joined #openstack-lbaas03:14
openstackgerrithuangshan proposed openstack/octavia master: Check if it is used when creating a load balancer using vip_port_id
bzhaorm_work, oh Thanks very much for update the spec. I just see it. :)03:25
rm_workto be clear, the idea is that the amps will run BOTH LVS + HAProxy right?03:25
bzhaoyeah, but just for single and active/standy topology03:26
rm_workso no real topology changes needed, just ... if you pass UDP as the protocol, we use a keepalived-udp template instead of an haproxy template03:26
rm_workbut all the listeners still just run on the same box03:26
rm_workmakes sense to me03:26
bzhaoyeah, just a UDP listener 1:1 keepalived process03:26
rm_worki'm about ready to +2, but i'd like some other people to go over it first and make sure i didn't miss anything or mess anything up03:26
rm_workseems really straightforward03:26
rm_workshould be easy-ish03:26
bzhaoYeah, :) Thanks03:27
*** SumitNaiksatam has joined #openstack-lbaas03:29
*** SumitNaiksatam_ has joined #openstack-lbaas03:32
*** SumitNaiksatam has quit IRC03:33
*** SumitNaiksatam_ is now known as SumitNaiksatam03:33
*** links has joined #openstack-lbaas03:42
*** yamamoto has joined #openstack-lbaas04:03
*** aojea has joined #openstack-lbaas04:04
*** yamamoto has quit IRC04:06
*** armax has quit IRC04:06
*** yamamoto has joined #openstack-lbaas04:06
*** armax has joined #openstack-lbaas04:07
*** armax has quit IRC04:07
*** aojea has quit IRC04:08
johnsombzhao: Hi, can’t talk long time night, but we should be able to run a bunch of keepalived processes (we do for multiple listeners).  Can you post your keepalived config you were getting an error with?  I will test tomorrow04:24
rm_workjohnsom: err, we do? I don't think we run more than one keepalived right now? and they wouldn't be bound into the namespace, which seemed to be his problem04:25
johnsomYeah, we do.04:26
rm_workwhat is the point of that even04:26
rm_workkeepalived is only running to do vrrp between two amps04:26
rm_workwe don't even start it on SINGLE topo amps04:26
johnsomHmm, now I am trying to remember why.  I just remember to mess with generating unique port numbers for the instances04:28
johnsomTo sync04:28
johnsomMaybe it was for multi vip on one amp?04:28
johnsomI am pretty sure we can do it, so want to look at the config and test04:29
rm_workwell if you figure out why, let me know04:30
rm_workI cannot think of a good reason04:30
johnsomWith the udp you don’t want to restart everything for one port reconfig04:31
rm_workright ...04:33
rm_workbut ...04:33
rm_workkeepalived just does VRRP04:33
rm_workthat's it04:33
johnsomIt will be driving the udp ports04:33
rm_workit WILL be04:34
rm_workright now we don't do that04:34
rm_workand actually no, it'll just be configuring LVS which will be driving the UDP ports04:34
johnsomYeah, i might be remembering multi vip.04:34
rm_workkeepalived will: "configure LVS" and "do member health checks"04:35
rm_workso i am not super concerned (though we will keep them as multiple processes just because it's EASIER to04:35
johnsomI should not log on from my mobile on date night...04:35
rm_workbecause then it's a literal dropin for haproxy04:35
*** sanfern has joined #openstack-lbaas04:46
*** sticker has quit IRC05:03
*** rcernin has quit IRC05:11
rm_workawesome, verified in devstack the amp-failover-api works05:16
rm_workerg gate backed uo05:17
rm_work*backed up. that means it's time for me to afk for a while :P night05:18
*** sanfern has quit IRC05:20
*** threestrands has quit IRC05:24
*** harlowja has joined #openstack-lbaas05:37
*** threestrands has joined #openstack-lbaas05:39
*** threestrands has quit IRC05:39
*** threestrands has joined #openstack-lbaas05:39
*** dokua has quit IRC05:44
*** armax has joined #openstack-lbaas05:45
*** armax has quit IRC05:55
*** armax has joined #openstack-lbaas05:55
*** armax has quit IRC05:55
*** armax has joined #openstack-lbaas05:56
*** armax has quit IRC05:56
*** rcernin has joined #openstack-lbaas06:11
*** harlowja has quit IRC06:14
bzhaorm_work, Good night. :)06:17
bzhaoHi johnsom, Sorry for late back. I just test with very simple keepalived config06:17
bzhaoThis is my new keepalived config.06:17
bzhaoThis is the existing keepalived config. It was still running06:17
bzhaoI run keepalived like "ip netns exec amphora-haproxy keepalived -D -d -f config".06:17
bzhaoThen I saw the log in syslog like:06:17
openstackgerrithuangshan proposed openstack/python-octaviaclient master: Add listener stats client api and osc
*** threestrands has quit IRC06:28
openstackgerrithuangshan proposed openstack/python-octaviaclient master: Add listener stats client api and osc
bzhaoAlso, the higher version of keepalived, such as 1.3.9 It supports "net_namespace" and "instance" configuration options. Fo runing multiple keepalveds in the same namespace.06:30
openstackgerrithuangshan proposed openstack/python-octaviaclient master: Add listener stats client api and osc
bzhaoThe test with keepalived version 1.3.906:49
bzhaoMy env(Active/standby) contains 2 namespaces, named 'lbb' and 'lbb2', these configurations look very similar, but with different 'instance', 'net_namespace', 'vrrp_instance'.06:49
bzhaoEach namespaces run 2 keepalived process. such as:06:49
bzhaoConfig file:06:49
bzhaoipvsadm looks like in both namespaces06:49
bzhaoFor the UDP rr virtual server, that's I just test in the single topology and its config file is:06:49
bzhaoAnd the test keepalived process running at least. And set the lvs configure. So I just want to ask if we need to change to the new version, or maybe there is another way to solve. Sorry for that.06:49
bzhaoI searched in google. This may be the first appear in keepalived v1.2.24 .
bzhaoOK, that's all. Waiting for your guys feedback. :)07:01
*** tongl has quit IRC07:02
-openstackstatus- NOTICE: Due to some unforseen Zuul issues the gate is under very high load and extremely unstable at the moment. This is likely to persist until PST morning07:03
*** ChanServ changes topic to "Due to some unforseen Zuul issues the gate is under very high load and extremely unstable at the moment. This is likely to persist until PST morning"07:03
*** m-greene- has quit IRC07:05
*** m-greene_ has quit IRC07:05
*** mugsie has quit IRC07:07
*** ptoohill has quit IRC07:08
*** mugsie has joined #openstack-lbaas07:08
*** mugsie has quit IRC07:08
*** mugsie has joined #openstack-lbaas07:08
*** sbalukoff_ has quit IRC07:08
*** ptoohill has joined #openstack-lbaas07:11
openstackgerrithuangshan proposed openstack/python-octaviaclient master: Add listener stats client api and osc
*** bbbbzhao_ has quit IRC07:14
openstackgerrithuangshan proposed openstack/python-octaviaclient master: Add listener stats client api and osc
*** sbalukoff_ has joined #openstack-lbaas07:35
*** kobis has joined #openstack-lbaas08:02
*** b_bezak has joined #openstack-lbaas08:04
*** aojea has joined #openstack-lbaas08:20
*** aojea has quit IRC08:20
*** aojea has joined #openstack-lbaas08:20
*** tesseract has joined #openstack-lbaas08:20
*** kobis has quit IRC08:23
openstackgerrithuangshan proposed openstack/octavia master: Remove network_tasks.UpdateVIP task in get_delete_listener_internal_flow
*** sapd__ has joined #openstack-lbaas08:31
*** sapd_ has quit IRC08:31
*** aojea has quit IRC08:33
*** sapd__ has quit IRC09:11
*** sapd has joined #openstack-lbaas09:12
*** sapd_ has joined #openstack-lbaas09:22
*** sapd has quit IRC09:22
*** gcheresh has joined #openstack-lbaas09:34
*** yamamoto has quit IRC09:41
*** yamamoto has joined #openstack-lbaas09:43
*** numans has quit IRC09:45
*** numans has joined #openstack-lbaas09:50
*** gcheresh has quit IRC09:56
*** Alex_Staf has joined #openstack-lbaas09:56
*** salmankhan has joined #openstack-lbaas10:06
*** annp has quit IRC10:07
*** Alex_Staf has quit IRC10:16
*** openstackgerrit has quit IRC11:17
*** yamamoto has quit IRC11:21
*** cgoncalves has quit IRC11:24
*** cgoncalves has joined #openstack-lbaas11:25
*** links has quit IRC11:28
*** salmankhan has quit IRC11:33
*** salmankhan has joined #openstack-lbaas11:37
*** links has joined #openstack-lbaas11:41
*** eN_Guruprasad_Rn has joined #openstack-lbaas11:47
*** yamamoto has joined #openstack-lbaas11:49
*** tesseract has quit IRC11:50
*** tesseract has joined #openstack-lbaas11:51
*** sanfern has joined #openstack-lbaas12:10
*** yamamoto has quit IRC12:51
*** bbzhao has quit IRC13:02
*** bbzhao has joined #openstack-lbaas13:02
*** dokua has joined #openstack-lbaas13:19
*** aojea has joined #openstack-lbaas13:33
*** aojea has quit IRC13:37
*** tesseract has quit IRC13:47
*** tesseract has joined #openstack-lbaas13:50
*** yamamoto has joined #openstack-lbaas13:52
*** yamamoto has quit IRC13:58
*** ChanServ changes topic to "Welcome to LBaaS / Octavia - Queens development is now open."13:59
-openstackstatus- NOTICE: The issues have been fixed, Zuul is operating fine again but has a large backlog. You can recheck jobs that failed.13:59
*** yamamoto has joined #openstack-lbaas14:01
*** dokua has quit IRC14:25
*** salmankhan has quit IRC14:33
*** links has quit IRC14:37
*** salmankhan has joined #openstack-lbaas14:42
*** rcernin has quit IRC14:55
*** eN_Guruprasad_Rn has quit IRC15:01
*** jniesz has joined #openstack-lbaas15:02
*** sanfern has quit IRC15:02
*** KeithMnemonic has joined #openstack-lbaas15:20
*** armax has joined #openstack-lbaas15:24
*** tongl has joined #openstack-lbaas15:25
*** KeithMnemonic has quit IRC15:28
*** KeithMnemonic has joined #openstack-lbaas15:28
*** KeithMnemonic has quit IRC15:31
*** KeithMnemonic has joined #openstack-lbaas15:31
*** bar_ has joined #openstack-lbaas15:42
*** salmankhan has quit IRC15:57
*** salmankhan has joined #openstack-lbaas16:02
*** tongl has quit IRC16:11
*** tongl has joined #openstack-lbaas16:12
*** eN_Guruprasad_Rn has joined #openstack-lbaas16:28
*** openstackgerrit has joined #openstack-lbaas16:35
openstackgerritMichael Johnson proposed openstack/octavia master: Don't run fucntional jobs for docs changes
*** AlexeyAbashkin has joined #openstack-lbaas16:40
*** AlexeyAbashkin has quit IRC16:44
*** eN_Guruprasad_Rn has quit IRC16:45
*** sanfern has joined #openstack-lbaas16:50
*** kobis has joined #openstack-lbaas17:03
*** b_bezak has quit IRC17:05
*** tongl has quit IRC17:17
openstackgerritSanthosh Fernandes proposed openstack/octavia master: ACTIVE-ACTIVE rename vrrp_ to frontend_
*** tesseract has quit IRC17:29
sanfernhi johnsom ,17:34
johnsomsanfern Good morning (here... grin)17:34
sanfernGood morning17:35
johnsomIt looked like you got the rebase working yesterday.  Is ther something I should look at today?17:36
sanfernI fixed backward compatibility issue with rename -
sanfernThanks to xgerman_17:37
sanfernNeed to review -
johnsomOk, cool17:38
*** kobis has quit IRC17:39
*** kobis has joined #openstack-lbaas17:40
sanfernsome test case are failing -
johnsomsanfern Yeah, looks like a referential integrity issue in the database. Likely either ID 246c791f-ad71-4d92-9b2a-922b5a3153e5 doesn't exist in the amphora table or ID 2baf87f4-eee7-43fe-ad51-387245e425cf doesn't exist in the load balancer table17:44
sanfernok I agree.  I need to create all those reference tables populated.17:45
sanfernThanks johnsom17:45
*** bar_ has quit IRC17:45
johnsomSure, NP17:45
johnsomFYI, python-octaviaclient 1.3.0 is now available on PyPi17:51
*** kobis has quit IRC17:54
*** yamamoto has quit IRC18:02
*** openstackgerrit has quit IRC18:03
*** tongl has joined #openstack-lbaas18:10
*** yamamoto has joined #openstack-lbaas18:16
*** yamamoto has quit IRC18:21
*** sshank has joined #openstack-lbaas18:25
*** salmankhan has quit IRC18:31
*** yamamoto has joined #openstack-lbaas18:32
*** yamamoto has quit IRC18:36
*** yamamoto has joined #openstack-lbaas18:44
*** yamamoto has quit IRC18:44
*** yamamoto has joined #openstack-lbaas18:44
*** yamamoto has quit IRC18:45
*** kobis has joined #openstack-lbaas18:57
*** kobis has quit IRC19:02
*** aojea has joined #openstack-lbaas19:08
*** aojea has quit IRC19:15
*** harlowja has joined #openstack-lbaas19:21
*** tongl has quit IRC19:21
rm_workxgerman_ / nmagnezi plz:
*** sshank has quit IRC19:28
*** sshank has joined #openstack-lbaas19:35
*** openstackgerrit has joined #openstack-lbaas19:39
openstackgerritMichael Johnson proposed openstack/octavia master: Provider driver spec
johnsomOk, I am pretty happy with that.  Would like comments...19:40
*** sshank has quit IRC19:43
*** sshank has joined #openstack-lbaas19:43
*** kobis has joined #openstack-lbaas19:45
*** AlexeyAbashkin has joined #openstack-lbaas19:46
*** yamamoto has joined #openstack-lbaas19:46
rm_worknmagnezi: around?19:48
*** yamamoto has quit IRC19:52
*** kobis has quit IRC19:55
*** kobis has joined #openstack-lbaas19:55
*** kobis has quit IRC19:56
*** kobis has joined #openstack-lbaas19:56
*** AlexeyAbashkin has quit IRC19:56
*** kobis has quit IRC19:57
xgerman_will have a look at provider spec before I go into the weekend20:11
*** sshank has quit IRC20:12
*** yamamoto has joined #openstack-lbaas20:48
*** yamamoto has quit IRC20:52
*** sshank has joined #openstack-lbaas20:55
openstackgerritMerged openstack/octavia master: Have doc8 ignore autodoc content
*** dokua has joined #openstack-lbaas21:20
*** jniesz has quit IRC21:31
rm_workme too21:35
*** dokua has quit IRC21:37
*** dokua has joined #openstack-lbaas21:40
openstackgerritAdam Harwell proposed openstack/octavia master: Add unit tests for neutron utils, add model/util for floating_ip
openstackgerritAdam Harwell proposed openstack/octavia master: Producer/endpoint code to allow for amphora failovers
openstackgerritAdam Harwell proposed openstack/octavia master: Switch to using PKCS12 for TLS Term certs
rm_workoops not the rebase i meant21:42
openstackgerritAdam Harwell proposed openstack/octavia master: Move loading the network driver into the flows
openstackgerritAdam Harwell proposed openstack/octavia master: Producer/endpoint code to allow for amphora failovers
openstackgerritAdam Harwell proposed openstack/octavia master: Amphora API Failover call
*** rcernin has joined #openstack-lbaas21:44
rm_workmaking a chain21:44
openstackgerritAdam Harwell proposed openstack/octavia master: Add unit tests for neutron utils, add model/util for floating_ip
*** yamamoto has joined #openstack-lbaas21:49
openstackgerritAdam Harwell proposed openstack/octavia master: WIP: Floating IP Network Driver (spans L3s)
rm_worknow i have a stupidly long chain21:52
rm_workto bug you guys about merging :P21:52
rm_worktime to look at your spec!21:52
*** dokua has quit IRC21:53
rm_workthe first patch there should be a no-brainer, and the second one and third/fourth are good to go too IMO21:54
*** yamamoto has quit IRC21:54
johnsomAlready +2 the first one21:54
rm_workI wish bar was online so i could ask him about his comment21:55
rm_worki am 95% sure he's wrong21:55
johnsomOn #2?  I think you are good, but still looking at it21:55
rm_workthough the whole thing is super trivial21:55
rm_workalso, it IS an option to *make it* a class var21:56
rm_workso it'd be a real singleton21:56
rm_workI CAN do that, and honestly it's not a bad idea21:56
rm_worki just wanted to have as light a touch as possible so we could get the change in quickly/easily21:57
rm_worki don't THINK it'd break anything to make it a singleton...21:57
rm_workthough maybe around auth?21:57
rm_worki don't know if it handles any auth when initialized, and if it'd re-auth?21:57
johnsomWhat calls network_driver()?21:57
rm_workdown a bit21:57
rm_worklike, the execute in a bunch of stuff21:58
rm_workself.network_driver.plug_network() for example21:58
rm_workis called in PlugNetworks.execute21:58
johnsomAh, I get it21:59
rm_workso i could try to be fancy and make it a singleton but that might be risky without a lot of thought/testing22:00
rm_workso i opted to do just a minimal change22:00
*** rcernin has quit IRC22:03
*** rcernin has joined #openstack-lbaas22:03
rm_workwow this is long T_T22:13
johnsomYeah, tell me about it22:13
johnsomBut, I think reasonably complete is good here22:13
rm_workyeah but my brain started hurting just from looking at the scrollbar22:14
rm_workand my eyes are pre-blurry, and it's barely afternoon22:14
johnsomIt's all the sample code...  grin22:14
rm_workwhen it comes to writing the code for this... hopefully i can help with hammering some of these things out?22:14
rm_workI hope22:15
johnsomOf course22:15
rm_worki mean, i literally hope i am able to22:15
rm_worki think i'm just not going to do grammar nitpicks in this one22:16
johnsomYou won't offend me22:17
rm_workyeah but it's just so long22:17
*** ianychoi_ has joined #openstack-lbaas22:17
rm_workso i had a patch up a while ago22:18
rm_workthat let drivers patch themselves into the initial API validation layer22:18
johnsomYeah, I shot it down a few times I think22:18
rm_workbut we are opting to take things that could be incorrect, return a 202, and then go to ERROR because of the driver?22:18
rm_workstill seems a little sad to me22:18
rm_workwhen we could just do the validation up-front and never 20x22:19
rm_workthe 400 should be immediate22:19
johnsomNo, they should validate before returning22:19
johnsomWait, what?22:19
rm_workah ok so you do mean for it to be that way22:19
*** ianychoi has quit IRC22:19
johnsomSo our API still does validation, they will validate they can accept what is asked, then return22:19
rm_worki'm looking at the create method in
johnsomWe will check for malformed, missing options, bad combinations, etc.22:20
rm_workand i guess the way i read it was that it'd be non-syncronous22:20
rm_workbut ok, as long as it's passed to the driver syncronously there, that's fine22:20
rm_worki suppose i'm still thinking in terms of "behind the queue" but it isn't22:21
johnsomWe don't expect them to fully create the  LB, just "accept" the request22:21
johnsomRight, no queue here22:21
rm_work"The provider will be removed as this is used for driver selection."22:21
rm_workwhy do we even bother22:21
rm_workdoes it matter?22:21
johnsomI don't want it to get overloaded22:22
rm_workyeah i was just thinking "it might be useful for them to check what provider they are, if they're using the same driver for multiple providers or something" but that might get ridiculous22:22
rm_workand the provider could be renamed by an operator, technically22:23
rm_workyeah so the VIP creation is sync now22:23
rm_worki almost forgot about that22:24
rm_workso yeah it obviously HAS to validate22:24
johnsomYeah, I have got feedback on that from Tong.  He wants us to create the vip.  It think that is limiting for the drivers....22:25
johnsomI hope we get more feedback on that22:25
rm_workI think that *doesn't* work with the A10 setup we have22:25
rm_work(and we're looking at using a flavor to expose our A10 stuff via Octavia when this is done)22:26
johnsomRight, it seems like the driver needs to own the VIP creation.22:26
rm_workI would assume so22:26
johnsomHa, think of the heck we would get if we created AAP ports for everyone...22:27
rm_workah interesting, you are saying we'll be on PKCS12 by the time we finish this22:27
rm_workso probably you should review that patch :P22:27
johnsomI figured we should just go for it.22:27
rm_workit really would be good to get that in22:27
rm_workand have some testing time on it22:27
rm_workoh, i was going to modify it to do the session-hijack+ACL-add22:27
rm_workto end this BS once and for all22:28
johnsomYeah, it's on my short list.  I'm looking at QoS now. That patch has been sitting way too long.22:28
rm_worki'll do that really quick22:28
johnsomGiving it some love22:28
rm_workhonestly if you think the QoS is good, i'm just going to review it for anything obviously bad in the code22:28
johnsomI kicked the tires on it once before, found one gap that I think he fixed.  I'm just giving it a top down read again.   Might fix a minor grammar thing on the fly here.22:29
rm_workhmmm, i'm not sure if we need to pass the default_pool_id22:29
rm_workif we pass a default_pool that's an object...22:29
rm_workit'll be in that22:29
johnsompool can exist on LBs already though22:30
rm_workyeah but this is the struct that's passed to the driver, right?22:30
rm_workso it'll already have loaded in the default_pool22:30
rm_workso we can throw away the id field22:30
rm_workkinda like the provider field22:31
rm_workit's already been used22:31
rm_workjust seems redundant to have both the id and the actual pool on there22:31
rm_workbut i guess it doesn't matter, was just a thought22:31
rm_worklistener.default_pool_id == listener.default_pool.id22:31
johnsomNot following. If you have an LB with 10 pools attached and you create a listner, you want to specify the pool_id to use as default for the listener right?22:32
rm_workyes, in the API22:32
rm_workthen we make this dict and pass it around?22:32
rm_workaren't these defining the dict that will be passed to the driver?22:32
johnsomdefault pool is only used for single call creates22:32
rm_workok ...22:32
rm_workbut default_pool_id and default_pool are directly linked22:33
rm_workwe're talking about on the listener22:33
johnsomYeah, you would not pass both IMO22:33
rm_workbut you're showing both being passed, no?22:33
rm_worki mean, are you saying we wouldn't be loading in the pool?22:34
openstackgerritMerged openstack/neutron-lbaas master: Updated from global requirements
johnsomNo, this is just listing out possible fields in the object,22:34
rm_workI assumed if we had a pool_id we would load in the pool when we send it to the driver22:34
rm_worksince the driver needs to know that22:34
rm_work(in order to create it)22:34
*** tongl has joined #openstack-lbaas22:34
rm_workeven if the pool was on the LB originally22:34
johnsomMy use case is the pool already exists22:34
rm_workso the LB is created, then the pool is created22:34
rm_worknow we do a listener create call22:34
rm_workdo you not want to pass the actual pool to the driver?22:35
rm_worki'm assuming a lot of drivers "create pool" could be a noop22:35
rm_workunless it's linked to a listener22:35
xgerman_how would the driver figure out ifit laready ahs the pool?22:35
johnsomEven though we have already passed them the pool details to create....22:35
rm_work^^ and that22:35
rm_workit has to link "our id"22:35
johnsomBy the ID we pass them at create22:35
rm_workI'm just assuming there are drivers that don't actually bother creating pools22:36
rm_workuntil they are somehow linked onto something22:36
xgerman_yep, so having id and pool makes it less ambigious22:36
rm_workso i assumed we would always load in the pool22:36
xgerman_aka we only give you details if you. need to craete the pool22:36
tonglare we talking about default_pool and default_pool_id for listener?22:36
rm_workalright, i don't really care that much, just trying to think about issues down the road22:37
rm_workif you don't think it'll come up, then i guess it's fine as-is22:37
johnsomI mean, I don't care that much, it's just more data in the object. The driver can "figure it out" I guess.  This just models our API closer22:37
rm_workit might be worth noting then that the "default_pool" will only be filled if it's a new pool to create, and if it's an existing pool, the default_pool_id field will be populated22:37
rm_workbecause if i were writing a driver from this spec, i would have assumed i could always just ignore default_pool_id and look at the object22:38
tonglDo we always assume either both of them has value or both of them are empty. Is there any case that default_pool_id is set, but default_pool is None or vice versa?22:38
rm_work*I* assumed it was both or none22:38
rm_workbut apparently it is actually more like, one OR the other22:39
tonglWhen I am writing our vmware_nsx driver, I always assume both or none.22:39
rm_work^^ johnsom so yeah this is my concern22:39
johnsomYes, currently it will either be: pool_id, pool, or None for both.22:39
rm_workso never both filled22:39
johnsomNever both22:40
rm_workthough ... by the time it gets here, the pool WILL have an ID in our DB22:40
tonglIn which case it has pool_id and which case has just pool?22:40
johnsomtongl If the load balancer already has a pool created (the LB could have many pools), and the API requests specifies the ID in the listener create call, the default_pool_id will be specified, default_pool is empty.  Default pool will be specified if this is a single call create where the listener call build a complete listener and all of the child objects, including a new pool definition.22:43
tongljohnsom: Make sense. Thanks!22:48
*** yamamoto has joined #openstack-lbaas22:50
*** sshank has quit IRC22:51
rm_workjohnsom: so ... we create HMs on pools right?22:52
rm_workso a Pool create could only have a filled "healthmonitor" if it's a single-create22:52
rm_workthus why there's no id field for it?22:53
*** yamamoto has quit IRC22:54
rm_workthe batch update members thing may need to change a little... maybe22:55
rm_workit might be helpful for us to actually provide a list of IDs for members they should delete22:55
rm_workdoes the Driver Support Library (the thing for letting drivers update LB statuses) really need to be an interface+implementation?22:59
rm_workit's writing to our DB22:59
rm_workI know we make EVERYTHING a driver, but ... >_>22:59
rm_workactually i'm unclear on whether this is hitting an API in Octavia, or if it's going to the DB, but via code we write?22:59
rm_workyou have "REST API" in Alternates23:00
johnsomWell, I wasn't the original author... grin23:00
rm_workok but23:00
johnsomPersonally I would still just give a REST interface.23:00
rm_workyeah ok23:00
rm_workwas wondering23:00
rm_workI assumed that would be it23:00
johnsomSo, my take on this is the "driver" will call these two methods to update stats and status.  What the methods do is TBD23:01
johnsomI.e. outside this spec.  This is a spec for what a driver does23:02
johnsomI just think this limits the placement of code that updates stats/status.23:02
rm_workBasically I think I am ok to +2 this and then I will pay close attention when we actually get implementations23:02
johnsomIt basically has to be on the API host.23:02
rm_workwell anywho23:02
johnsomOr we create a driver-driver they have to install23:03
rm_workanyway I'm +223:03
rm_workwe should get started on the actual work23:04
rm_worktime is short23:04
johnsomGo for it23:04
rm_workno real point in bikeshedding on the spec for another week or three, lol23:04
rm_workumm yeah i'll ... uhh23:04
rm_workget right on that...23:04
* rm_work disappears23:04
rm_workI mean yeah maybe next week I can start looking at some23:05
rm_workbut I really am going to need some of these patches in my chain merged before I can focus on that23:05
johnsomI -1'd one of them, some I wanted to see gate output, one I +2'd.  So, pretty typical odds....23:05
johnsomHmmm, this QoS is going to have the same problem with neutron outages...23:06
rm_workerg lol yes23:07
rm_workgood catch23:07
johnsomThough here is should just give the user a error23:09
johnsomSince it's validation time23:09
rm_worki mean, on my patch23:09
*** aojea has joined #openstack-lbaas23:13
johnsomAh, got it23:16
*** aojea has quit IRC23:18
openstackgerritAdam Harwell proposed openstack/octavia master: Amphora API Failover call
rm_workthere you go23:19
johnsomrm_work Does this make sense to you?
*** sshank has joined #openstack-lbaas23:31
rm_workdoes .items() give you key-val pairs?23:40
rm_workI didn't think it did23:40
rm_worki thought that was the opposite of .keys() basically23:40
rm_workwell a quick test will show me23:40
rm_worki am incorrect23:41
johnsomIt does23:41
johnsomThis is just making my head hurt.23:41
johnsomThis must be he is updating the vip embedded in the lb where update wasn't touching the vip before23:43
rm_worki think it makes sense23:44
rm_workbut need to test something23:44
*** yamamoto has joined #openstack-lbaas23:51
*** yamamoto has quit IRC23:55

Generated by 2.15.3 by Marius Gedminas - find it at!