13:04:41 #startmeeting 13:04:41 Meeting started Wed Jun 4 13:04:41 2014 UTC. The chair is alinefm. Information about MeetBot at http://wiki.debian.org/MeetBot. 13:04:41 Useful Commands: #action #agreed #help #info #idea #link #topic. 13:04:41 #meetingname scrum 13:04:41 The meeting name has been set to 'scrum' 13:04:53 hello 13:05:12 #info Agenda 1) Status 2) Open discussion 13:05:12 anything else? 13:06:32 #topic Status 13:06:33 #info Please provide your status using the #info command: #info 13:06:53 #info alinefm was on vacation in the last 3 weeks 13:07:43 #info royce is working on eject cdrom this week, backend patch sent, working on ui patch 13:07:47 #info alinefm merged some pending patches upstream yesterday 13:08:15 #info shaohef send out login patches. 13:08:29 #info royce is clearing remaining problem of my pending patches including nfs mount feedback and extend storagepool 13:08:59 #info rotru sent new patch to remove '.iso' checking when create a new template 13:11:13 #info Wang Wen is working on issue#296 sent a patch of redesigned ui of debug report area when generating a new report instead of blocking the ui (before) 13:12:25 Today is the end of the sprint 2 and then we will start the last stabilization phase for 1.2.1 release 13:12:52 I'd like to pass through the tasks on wiki to get a better view of their progress 13:12:57 https://github.com/kimchi-project/kimchi/wiki/Todo-1.2.1 13:13:19 we have 3 tasks from sprint 1 not marked as completed 13:13:26 Migration: investigate how discover Kimchi peers (sheldon/ming) 13:13:36 shaohef, do you have any comments on that ^? 13:14:07 hi all 13:14:58 Extend logical storage pool (hlwanghl) 13:15:07 royce, did you take this task to you ^? 13:15:08 ?? 13:15:15 yes 13:15:24 it has been merged 13:15:37 no, it is merged:) 13:15:44 royce, great! I will update the wiki 13:15:55 shaohef, about " Migration: investigate how discover Kimchi peers (sheldon/ming)" 13:15:58 any comments? 13:16:26 alinefm: sorry. some thing wrong with my net 13:16:30 alinefm: so slow. 13:16:40 did you send your investigation to ML? get feedbacks? what is the mail subject? 13:16:43 shaohef, np 13:16:47 alinefm: I have send out a RFC to ML 13:16:56 alinefm: long time ago. 13:16:59 alinefm: let me check. 13:18:06 alinefm: it is [Kimchi-devel] [RFC] discover Kimchi peers 13:19:07 #info ML discussion: [Kimchi-devel] [RFC] discover Kimchi peers 13:19:24 the next task pending from sprint 1 is: Authorization: Properly display UI for non-root users (hlwanghl) 13:19:46 as hlwanghl is not online, anyone has any update about it? 13:19:48 adamkingit, ^ 13:20:38 he is still working on another. He told which last night, but I have to look it up 13:20:40 1m 13:21:19 he is currently addressing comments on the "Rename debug report" patch 13:21:53 ok 13:22:11 so let's move to sprint 2 tasks 13:22:13 Authorization: List VMs according to its users/groups (vianac) 13:23:34 vianac, any progress on that do you want to share with us? 13:24:17 ok... 13:24:20 network problem maybe? 13:24:20 List iSCSI targets available for initiator while creating iSCSI Pool (shaohef) 13:24:30 royce, maybe 13:24:32 alinefm, I'm still implementing that feature. I can now block VM access based on users and groups 13:24:43 shaohef, any update about the iscsi targets? 13:24:58 alinefm: patch send out. no one review 13:25:10 shaohef, what is the patch? 13:25:11 alinefm, but I have a few questions on how it should work. for example, if there is no metadata access in a VM, what will be the behavior? should everyone be able to see it? 13:25:16 shaohef, I will review that one tomorrow 13:25:21 I am making a patch list to review today =) 13:25:46 vianac, sure - we can discuss it in the open discussion section 13:25:48 [PATCH 1/2] List iSCSI server for initiator while creating iSCSI Pool 13:25:48 [PATCH 2/2] List iSCSI targets available for initiator while creating iSCSI Pool 13:25:52 alinefm, ok! 13:25:54 just let me pass through all the tasks first 13:26:04 #info patch [PATCH 1/2] List iSCSI server for initiator while creating iSCSI Pool 13:26:10 #info patch [PATCH 2/2] List iSCSI targets available for initiator while creating iSCSI Pool 13:26:18 Create a default pool for ISO images ootb(royce) 13:26:50 alinefm, I think that one does not in great need at the moment 13:27:29 And the requirement is not clear, I suggest move it for now 13:27:55 royce, so I will remove it from 1.2.1 release and move to the next one 13:27:57 agree? 13:28:07 n 13:28:19 SO instead of that one, I enhanced the disk attachment for ref_cnt share 13:28:26 Seems another topic for open discussion 13:28:35 OK, adamkingit 13:28:39 adamkingit, ok 13:28:51 Network template and local template should be distinguished 13:29:03 there is no one assigned to this task on wiki 13:29:16 but if I am not being crazy I think I saw something in the ML 13:29:28 seems shaohef is working on that 13:29:28 YuXin and shaohef are working on it 13:29:53 yes. 13:29:55 #info discussion [Kimchi-devel] UI Design of "Properly display about template type (local or, remote) using icon or text information" 13:30:05 will send out a patch later. 13:30:56 shaohef, great! thanks 13:30:59 Secure VM connection (shaohef) 13:31:08 is it about the ticket validation for the vnc session? 13:31:26 alinefm: send out a patch. 13:31:30 alinefm: set a ticket for VM. 13:31:30 alinefm: yes. 13:31:31 alinefm; anything I can help to close this sprint 13:31:31 ? 13:31:54 shaohef, what is the patch? has it already merged? 13:32:00 rotru, probably! =) 13:32:14 rotru, we can discuss it in the open discussion 13:32:38 alinefm: No. not get agreement. [PATCH 0/4] ticket support for guest 13:32:52 #info patch [PATCH 0/4] ticket support for guest 13:32:59 alinefm: so many discussion on this topic in the ML 13:32:59 shaohef, ok - I will take a look on it 13:34:20 the other sprint 2 tasks I've already seen patches on ML and some status in this meeting so I don't think we need to pass through them 13:34:36 if anyone has more status to share I will move to open discussion section 13:35:44 #topic Open discussion 13:36:08 the first topic I have is: Sprint 2 ends today 13:36:38 most of tasks are on track but we need to define which ones have high priority to focus on them 13:36:50 it is clear for me we will not complete all those for 1.2.1 release 13:37:40 adamkingit, By creating pool for ISO images ootb, if ootb, what it needs to contain, do you mean other pool cannot contain isos if this is done? or does this one need to coupled with upload? 13:38:13 The idea was to simplify the 1st time experience... 13:38:25 My thought is, if we support a dedicate location ootb, we can dump deep scan 13:39:22 Today for local ISO the user needs to know to create a storage pool, and to put the ISOs there 13:39:25 because deep scan doesn't care where you put the iso, and also aggregate all isos in a temp pool 13:39:47 If we define a "well known" pool/location it will simplify the 1st time expwerience 13:40:18 Shallow scan looks in all the defined pools, deep looks "everywhere" 13:40:28 I agree, that is the proposal before I did deep scan 13:40:43 I think both are still useful 13:40:57 Just friendlier to make the shallow more apparent 13:41:11 but a well know pool seems be overlap with these two concept 13:41:36 adamkingit, do you mean create a empty dir pool and guide the users to put their ISOs in there? 13:41:38 I am thinking of it more as automating what I must do manually today for shallow 13:41:46 alinefm yes 13:42:24 adamkingit, does it mean upload + an empty pool just for isos? 13:42:26 royce, that way it does not conflict with the deep scan concept 13:42:37 royce, just create an empty dir pool 13:42:45 we dont need to upload anything in there 13:42:50 right, adamkingit ? 13:43:11 We COULD do upload later, but usability is improved with predinfed/empty pool 13:43:23 if we have a dedicate pool just for isos, why do we need to search every pool and every where 13:43:43 if ISOs can just be there 13:43:54 The user may have some local to the server, others on an NFS mount. 13:44:50 and user can only know her ISOs but not regarding the whole system 13:45:01 for example, I have ISOs in a local dir under my home 13:45:13 but other user in my system was not aware of it 13:45:50 So do you want user aware or not aware, a dedicate pool is for awareness you know 13:46:07 it means, if you want to use ISOs , pls upload there 13:46:44 alinefm: I got your review of Issue#305: Redesign bridged network UI section. You have made a good point of redesign the ui to make it more consistent. But the checkbox is to let user choose whether he/she wants to enable VLAN, if enabled, then VLAN ID is needed. Without the checkbox, it might mislead user that they have to enable VLAN, like Yu Xin replied. 13:47:21 OK... So we want both awareness and unawareness, is that what you mean? 13:47:49 royce, got confused now both about "both awareness and unawareness" 13:48:02 wenwang, I replied again to Yu Xin 13:48:12 if they know what ISOs they are expecting, give them an api and location to upload 13:48:21 wenwang, we don't need a check box to indicate a field is optional - we can just add a label 13:48:40 if they just want to wandering around and see if there is something available in the system, search for them 13:48:45 "If you want to enable VLAN, please enter a VLAN ID below. Otherwise, leave it in blank" 13:50:16 royce, from my understanding it is right. adamkingit ? 13:50:47 alinefm: What if the user don't have the idea to enable vlan, should we add some words that indicate this line is optional if you don't want to enable vlan? 13:51:15 alinefm, I mean whether our hypotheses is "user wants to user isos he awares of" or "we want user use isos he is not aware of" 13:52:31 So if this is what we want, this dir pool is just for "ISOs" and will support upload, or download from a web link? 13:53:21 royce, for me this ootb pool would be useful when I download new ISOs and "where do I need to put it to Kimchi be aware about it without deep scan?" 13:54:06 alinefm, so what about let users to supply a web link, and kimchi will download for him? 13:54:14 royce, it is what i understood from "make shallow scan easier to use" mentioned my adamkingit 13:54:34 royce, it would be good but I'd say the next step 13:54:44 remember we have limited time now 13:55:12 royce, allow user enter a URL and kimchi downloads the ISO will require a lot of work on UI and backend too 13:55:16 wenwang, yes 13:55:31 OK, so this step is just create a dir pool and direct him there in the UI? 13:55:45 alinefm: okay, thx 13:55:49 I want to look into this cause I think that's interesting 13:56:58 royce, how do you plan to do "direct him there in the UI" ? 13:57:12 royce, no problem - you can work on that 13:57:30 I think we can direct them to the directory w. the install info 13:57:49 alinefm, like in shallow or deep scan page, we can give user some hint 13:58:07 We could do a hint on the shallow scan screen 13:58:10 adamkingit, royce, I'd say only update the help text 13:58:11 saying if no ISOs you want, redirect? 13:58:34 i am ok w/ help txt 13:59:16 adamkingit, can this pool be deleted? 13:59:45 hmm, probably best if its not though we might want to allow edit 14:01:27 Edit is to change its location or? 14:01:36 location, yes 14:01:53 hmm, that might not be so good if the doc tells you where it should be 14:02:01 ok, nm. Edit not a good idea 14:02:48 I think if we do it on the UI, the loc can be floated, I mean not fixed 14:03:37 We just fetch the loc of the pool and instruct user to copy his ISO there 14:03:44 adamkingit, royce, no - without edit, please 14:03:50 at least for now 14:03:58 we even allow pool edit yet 14:04:29 it gets easier even fixed. Lets try that and see what feedback we get 14:04:52 adamkingit, royce, do we have a deal? 14:04:59 our time is over 14:05:01 OK 14:05:06 suonds good 14:06:09 great! 14:06:14 I'd like to talk about, Login flow: Switch to a traditional login flow 14:06:20 shaohef, sure 14:06:25 what is up? 14:07:16 I can not distinguish the login is caused by session timeout or no session 14:07:59 shaohef: why do you need to distinguish? 14:08:13 alinefm: maybe I need to add a new hook: 'on_start_resource' or 'before_request_body' 14:08:35 adamkingit: YuXin tell me we should to do it. 14:09:04 YuXin is pretty smart, its just not immediately obvious to me why we need to distinguish 14:09:24 adamkingit, shaohef, maybe to show a message about expired session ? 14:09:41 the login page is shown to user when user first login and session timeout 14:09:54 yes 14:10:00 adamkingit: how about to prompt "no session or session timeout, please login" ? 14:10:04 when session timeout, user is loged out and asked to re-login 14:10:10 alinefm: ^ 14:10:21 so there need to be a message about why user is loged out 14:10:51 but obviously, this message is not needed when user first time try to login kimchi 14:11:13 ok, you want to make the login more informative... 14:11:25 sure 14:12:03 adamkingit: as YuXin design whey error user name or password, we should prompt "user or password error" 14:12:10 as it is sure that j2ee web container can get this implemented, so there must be a way in cherrypy to do it 14:12:28 Server is checking tokens on the request and for a tmpl request and fwds the request on to the login.html.tmpl when token is expired. It can pass the 'timeout' info along at that time 14:12:28 I have 2 points 14:13:22 1) we should do it in separated tasks - one to switch to a traditional login flow (without changes on UI) and other one to improve usability in login page 14:13:41 adamkingit: alinefm: not sure a hook can distinguish them. I'm trying. 14:13:51 2) I'd suggest what adamkingit suggested =) 14:14:21 aline, traditional login flow is to use a login page 14:14:29 UI will definitely be changed 14:14:29 shaohef, I think you don't need a hook 14:15:00 when timeout occurs we can set a new variable and send with the request response which will fill the login template 14:15:07 I think alinefm's point is that the UI doesn't tell you today that you are being asked to login because of session timeout 14:15:26 a login page to protect all UI content if user has not logged in, currently, kimchi is using a popup 14:15:30 UI must be changed 14:15:37 YuXin, yeap - I mean today we don't distinguish login from expired session so do the transition that way and then improve the messages 14:15:48 ok 14:16:37 alinefm: I know when timeout, the cherrypy will tell me session id missing. 14:16:55 alinefm: but we do not protect all resource. 14:17:35 alinefm: so the first login, the cherrypy will also generates a session id. 14:18:36 alinefm: the some URL need authentication, the cherrypy will generates a different session id. that means the original session id missing. 14:18:49 shaohe, to implement it, key is to define what to protect and what not protect 14:19:04 alinefm: it looks like a session timeout. 14:20:03 shaohef, I looked at the current code 14:20:20 alinefm: I know session timeout from the original id does not hit the new id 14:20:33 and my guess would be: 14:20:34 if (time.time() - cherrypy.session[REFRESH] > 14:20:35 cherrypy.session.timeout * 60): 14:20:35 cherrypy.session[USER_NAME] = None 14:20:43 this code is when the timeout occurs 14:21:16 you can set a new session variable: cherrypy.session["reason"] = "timeout" 14:21:21 this can  guarantee timeout. 14:21:41 but this just one case. 14:21:52 when you call the template you send that info 14:22:14 and in the login template should have something like: if $reason == timeout: display text 14:22:53 these code are just for kimchi-robot request timeout. 14:23:06 yes 14:23:13 alinefm: I did it like this. 14:23:28 shaohef, why should we consider other requests for timeout session? 14:23:48 alinefm: but I can not how know the first login timeout. 14:24:00 alinefm: I have show it to YuXin 14:24:12 alinefm: yes. 14:24:23 shaohe, by adding a variable to session as aline said, it will work 14:24:38 shaohef, explain me with steps 14:24:44 1) access kimchi on url 14:24:46 alinefm: for example. 14:24:47 alinefm: if a user never login the kimchi. 14:24:49 2) get login page 14:24:52 alinefm: he will type the URL http://localhost:8000 14:24:53 you just need a way at server side to distinguish first login and session timeout 14:25:27 shaohef, ok - go ahead 14:26:00 2) then the server receives url, it will generate a session for it. 14:26:29 althrough there is a session, there is nothing in the session 14:26:35 at this time 14:26:47 ok 14:26:54 3) this url will not checked this url by the hook. for this URL do not need the authentication. 14:26:54 no username, no reason, no timeout 14:28:12 4) when a new url need authentication, 14:28:14 hmmm so the login page will not be shown? 14:28:30 is that the problem? 14:29:05 alinefm: it will be show. 14:30:24 I know the problem. 14:30:28 maybe. I need to try. but not sure. 14:30:28 shaohef, ok - continue 14:32:38 alinefm: I find it will generate a new session. the old session ID do not hit the new session id, so it looks like timeout. 14:32:47 alinefm: maybe the problem of the kimchi-robot. 14:33:02 alinefm: I will check it later. 14:33:30 shaohef, ok 14:33:39 shaohef, as I said you can do it in 2 steps 14:33:56 first switch to the traditional login page and then distinguish the login 14:34:12 shaohef, if you get stuck ping me or send mails to ML 14:34:22 I will finish the meeting now 14:34:30 #endmeeting