03:01:14 <Sundar> #startmeeting openstack-cyborg
03:01:15 <openstack> Meeting started Thu Nov 21 03:01:14 2019 UTC and is due to finish in 60 minutes.  The chair is Sundar. Information about MeetBot at http://wiki.debian.org/MeetBot.
03:01:16 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote.
03:01:18 <openstack> The meeting name has been set to 'openstack_cyborg'
03:01:26 <Sundar> Hello all
03:01:28 <Li_Liu> #info Li_LIu
03:01:33 <Li_Liu> Hi Sundar
03:01:43 <Sundar> Hi Li, how are you?
03:01:44 <Yumeng> #Yumeng
03:01:49 <s_shogo> #info s_shogo
03:01:51 <s_shogo> Hi all
03:01:52 <Li_Liu> good~
03:01:54 <chenke> #info chenke
03:01:54 <Yumeng> hi all
03:01:58 <chenke> hi all~
03:02:11 <xinranwang> Hi all
03:02:18 <Sundar> Good to have a quorum.
03:02:20 <xinranwang> #info xinranwang
03:02:46 <Sundar> Agenda: https://wiki.openstack.org/wiki/Meetings/CyborgTeamMeeting#Agenda
03:02:53 <Sundar> #topic Status update
03:03:37 <Sundar> Glad to see lots of movement and progress in Cyborg
03:04:25 <Sundar> On the Nova side, we got another +1 on the spec: https://review.opendev.org/#/c/684151/
03:04:37 <Sundar> We re trying to get this over the edge
03:04:57 <Sundar> I updated the patch series: https://review.opendev.org/#/q/status:open+project:openstack/nova+bp/nova-cyborg-interaction
03:05:58 <Sundar> Added API versioning for the notification event (https://review.opendev.org/692707), which turned out out be a bit tough, because lots of the requirements are not documented anywhere
03:06:08 <Sundar> We just have to read previous code and history
03:06:33 <Sundar> Added functional tests for Cyborg in Nova --- this was another recent requirement
03:06:59 <Sundar> I am not aware of any blocker now, but we are still working on getting reviews
03:07:25 <Sundar> Please do review this patch series and offer comments or +1
03:07:36 <Li_Liu> sure, will do
03:08:00 <Sundar> One prerequisite for tis patch series is this Cyborg patch: https://review.opendev.org/694856
03:08:17 <Sundar> Please review and help to merge it
03:09:15 <shaohe_feng> should microversion be  configurable?
03:09:47 <Sundar> I just made it 'latest'. Is there a reason why we would want an older microversion?
03:09:54 <chenke> I want to know, we need to always set the version to latest?
03:10:38 <Sundar> Not sure if we need to do it, but it is convenient, because it will work with the Nova patches or without
03:11:06 <Sundar> Otherwise, tempest tests with the Nova patches will fail
03:11:49 <shaohe_feng> not know why nove need a microversion science there is no reason to request an older microversion
03:11:50 <Sundar> The Nova patches move the microversion to '2.82' because we defined the Cyborg ARQ notification event
03:13:00 <Sundar> Any objections to using 'latest' microversion?
03:13:09 <chenke> I think maybe some production environment needs to use the old api.
03:13:33 <chenke> For the current state, agree.
03:13:38 <Yumeng> there maybe some compatible problems in a real env.
03:13:49 <Sundar> Ok
03:14:52 <Sundar> If the operator is deploying older Nova, he will not get Cyborg functionality -- that needs '2.82'
03:15:54 <shaohe_feng> no objections for using 'latest'. Just wonder should it be configurable.
03:16:09 <Sundar> OK. We can enhance this if there is a need.
03:16:18 <chenke> Agree.
03:16:20 <Yumeng> yes ,aggree with shaohe, it should be configurable
03:16:22 <shaohe_feng> OK
03:16:32 <Sundar> On another note: the devstack patch for using Python 3 has merged: (https://review.opendev.org/#/c/649097
03:17:18 <Sundar> The Zuul gate was broken because Nova expected Py3 by devstack was using Py2. Now that should work.
03:17:25 <Sundar> *but
03:18:16 <Sundar> FYI: The Cyborg meeting info was out of date: I am updating it -- https://review.opendev.org/#/c/695343/
03:18:56 <Sundar> Esp. as we expect more interaction with neutron
03:19:56 <Sundar> #topic Programming APIs
03:20:52 <Sundar> We have been talking about the programming requirements. I created this etherpad to continue the discussion from the PTG:  https://etherpad.openstack.org/p/cyborg-ussuri-programming-apis
03:21:06 <Sundar> Please review it offline when you can
03:22:20 <Sundar> We can take this up next week.
03:23:06 <Sundar> #topic Who's doing what
03:23:49 <Sundar> All of us have been busy with various things. Plus, many of us signed up for various areas (last part of https://etherpad.openstack.org/p/shanghai-ptg-cyborg)
03:24:17 <Sundar> Just trying to get a sense of what folks are busy with.
03:25:21 <Sundar> Sundar: Continuing to work on Nova patches, Cyborg tempest plugin, 3rd party CI for FPGAs (with another colleague), starting on support for networked devices (with other colleagues in Intel)
03:25:54 <Sundar> Plus assorted patches as needed
03:25:54 <shaohe_feng> will we support SmartNic?
03:26:06 <Sundar> Shaohe: Yes, different types
03:26:07 <Li_Liu> I currently got nothing on my plate
03:26:51 <Sundar> Li_Liu: please feel free to look at the etherpad and take something of interest. For example, the entire area of functional tests for Cyborg is open.
03:27:15 <Sundar> That is absilutely needed to make Cyborg into a production-quality project
03:27:16 <Li_Liu> sure, I will take a look
03:27:23 <Sundar> Thanks, Li_Liu
03:27:42 <Li_Liu> Do I need any hardware to do the functional test?
03:27:54 <Sundar> No, it can all be with the fake driver for now
03:27:57 <shaohe_feng> Sundar if you have a smartnic env, please let me try. Thanks.
03:28:01 <Li_Liu> great
03:28:33 <Sundar> shaohe_feng: Let's talk offline
03:28:40 <s_shogo> Shogo:
03:29:59 <Sundar> BTW, I may get another colleague to support on openstacksdk, so chenke can focus on other things too :)
03:31:11 <chenke> ok.
03:31:39 <chenke> When I have free time. I will help to review it.
03:32:00 <Sundar> s_shogo: I think you have up the Pythn client plus some APIs. Please let us know if you need help, or if you'd like to spread the work more
03:33:42 <xinranwang> maybe we can put the tasks on the storyboard
03:33:46 <Sundar> xinranwang: Similarly, you have the Intel driver plus /v2/devices GET, including microversion support, I think. Do you need help?
03:33:47 <s_shogo> Sundar: That's right.
03:34:16 <s_shogo> ( And I intend to send reminder to openstacksdk folks to review the patch > https://review.opendev.org/#/c/679914/)
03:34:31 <Sundar> xinranwang: Yes, Storyboard is a  good place. We already have many entries: https://storyboard.openstack.org/#!/project/openstack/cyborg
03:34:49 <xinranwang> I am ok, s_shogo will work with me device API
03:35:17 <Sundar> But it is useful only if all of us use it regularly -- otherwise we'll still not know what tasks are remaining, and who is doing what
03:35:33 <xinranwang> we'd better to list the tasks we discussed during ptg ther
03:36:09 <Sundar> Cool. I know Yumeng has been active with the docs update. Can others please LMK what they are working on?
03:36:11 <xinranwang> Sundar: yes, I agree
03:36:48 <Sundar> Do we all vote to use Storyboard regularly for tasks?
03:36:54 <xinranwang> +1
03:37:22 <Yumeng> +1. and I would start UT improvement in the next.
03:37:42 <xinranwang> Yumeng:  nice, thanks :)
03:37:43 <s_shogo> +1
03:37:50 <Yumeng> or tempest
03:37:56 <chenke> +1
03:38:14 <Sundar> Li_Liu: ^
03:38:32 <Sundar> shaohe_feng: ^
03:38:51 <chenke> tempest and UT will be the next thing I will do.
03:38:58 <xinranwang> Sundar:  just notice you mentioned intel driver, which one you mean?
03:39:09 <Sundar> Intel FPGA driver
03:39:28 <shaohe_feng> +1
03:39:30 <Yumeng> Sundar: BTW, do we have plan about shelve and unshelve in this cycle? I'm intrested.
03:42:56 <Sundar> Got disconnected :(
03:42:58 <Li_Liu> +1
03:43:06 <Sundar> Thanks, all
03:43:25 <Sundar> #agreed We'll use storyboard regularly for tasks going fwd
03:43:40 <Sundar> Yumeng: Can you say more about the use case for un/shelve?
03:45:10 <Yumeng> Sundar: not very specific use case for now. we can discuss more maybe next time.
03:45:49 <Sundar> Ok. I don't mind adding it. But hope to get the basic cases merged first.
03:46:15 <Sundar> #topic Patches
03:46:46 <Sundar> Special :+1: to Yumeng for the thorough doc patcches
03:47:13 <Yumeng> I will update today. I saw your comments. thanks for review.
03:47:50 <Sundar> Cool. I think it will be nice to have some introductory doc on the object model and Cyborg-Nova workflow
03:47:57 <Sundar> I'll add it
03:48:21 <Sundar> We have a story for this: https://storyboard.openstack.org/#!/story/2006384
03:48:41 <Sundar> All: please add any missing doc improvements here
03:49:10 <xinranwang> Yumeng:  you used sql benchwork for cyborg doc ?? ;)
03:49:33 <Yumeng> xinranwang: haha not for doc
03:50:14 <Yumeng> just generated a ER diagram of cyborg-db automatically
03:50:39 <Yumeng> amazed by it productivity
03:50:50 <xinranwang> lol
03:50:55 <Yumeng> *its
03:51:48 <Sundar> Cool. Does any patch need specific discussion?
03:52:08 <shaohe_feng> https://review.opendev.org/#/c/693784/
03:52:16 <shaohe_feng> Is this OK?
03:52:33 <Sundar> Did you test on multiple VMs? with fake driver?
03:52:50 <shaohe_feng> I have list the configure options in the etherpad
03:53:13 <shaohe_feng> seems only Sundar and xinranwang give feedback.
03:54:10 <shaohe_feng> If no problem about the config options, I will retest it again to let it go on. '
03:54:49 <shaohe_feng> #link  https://etherpad.openstack.org/p/cyborg-ptg-ussuri
03:55:27 <Sundar> Yea, I gave some comments. The agent needs to reach glance, so it would need keystone
03:55:54 <Sundar> We need to set up an env with multiple physical nodes with FPGAs, to test programming paths
03:56:31 <Sundar> Or can we somehow extend the fake driver to simulate programming?
03:57:06 <shaohe_feng> yes, we can extend.
03:57:11 <Sundar> Latter will be quite useful for UT/functional tests
03:57:38 <shaohe_feng> such as write a fake program script
03:57:48 <Sundar> Shaohe_feng: would you like to take that up? That will give more confidence in the multi-node setup. Which is needed for real-world operations.
03:58:25 <Sundar> Yes, the fake device could advertise a region/function ID, and the fake driver coul always return success for programming calls
03:58:51 <shaohe_feng> when agent download a image, we let the fake program script do some simple check and then return error or OK
03:59:15 <Sundar> Sure
03:59:31 <shaohe_feng> maybe the  fake program script can output some information to tmp/file
03:59:50 <shaohe_feng> not sure it can output to the cyborg log
04:00:02 <Sundar> We don't need a program script per se, right? Just the program() API in the driver
04:00:30 <shaohe_feng> what is per se?
04:00:52 <Sundar> I mean, we don;t really need a separate script.
04:01:35 <Sundar> The program API can just look at something in the image file and decide to return success or failure
04:01:46 <Sundar> That way, we can use different images to force failure orsuccess
04:01:59 <shaohe_feng> maybe just deploy a fake script by devstack when we use fake driver
04:02:23 <shaohe_feng> yes. let program API do it is OK.
04:03:08 <Sundar> OK. Let's talk offline if needed. We are past the end time
04:03:12 <Sundar> #topic AoB
04:03:16 <Sundar> Anything else, folks?
04:03:18 <shaohe_feng> OK.
04:03:41 <shaohe_feng> will we setup a multi-node gate?
04:03:48 <shaohe_feng> any plan for it?
04:03:53 <Sundar> Do we need to?
04:03:59 <shaohe_feng> not sure.
04:04:30 <Sundar> Yumeng, chenke, all: do other projects have it?
04:04:48 <shaohe_feng> OK. maybe all in one is enough.
04:05:12 <shaohe_feng> seem others are going to have lunch :)
04:05:36 <Sundar> Ah ok
04:05:50 <Sundar> Goodbye, everybody
04:05:55 <Sundar> #endmeeting