19:00:07 #startmeeting refstack 19:00:07 Meeting started Mon Jan 18 19:00:07 2016 UTC and is due to finish in 60 minutes. The chair is catherineD. Information about MeetBot at http://wiki.debian.org/MeetBot. 19:00:08 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 19:00:10 The meeting name has been set to 'refstack' 19:02:16 o/ 19:02:32 o/ 19:02:33 rockyg: hello.. 19:02:39 o/ 19:02:52 o/ 19:02:59 o/ 19:03:03 #link meeting agenda and notes, please feel free to add items https://etherpad.openstack.org/p/refstack-meeting-16-01-18 19:03:19 hello everyone ... 19:03:38 o/ 19:04:33 I think we finally get the ball rolling for the Vendor Registration Process tasks ... thx to alexandrelevine: and andrey-mp: ... 19:05:02 ++ 19:05:14 #link meeting agenda and notes, please feel free to add items https://etherpad.openstack.org/p/refstack-meeting-16-01-18 19:05:56 #topic DefCore Meeting Jan 13, 2016 19:06:51 #link I requested DefCore to review Alex's requirement doc https://goo.gl/bvo4FG 19:07:25 catherineD: Thank you. That's good to hear. 19:07:34 alexandrelevine: could you allow DefCore core member to add comments to the doc 19:07:56 Absolutely, give me the emails 19:08:40 sure rockyg: hogepodge: could you send alexandrelevine: your gmail? 19:08:58 not sure gmail is really needed ... or any email will do? 19:09:02 it's the mailing list. hold a sec. Or Ican send to the list... 19:09:26 any will do. you just need the link. 19:09:28 catherineD: my openstack e-mail can read google documents 19:09:30 rockyg: I think Chris, Mark, Egle and Rob will do ... 19:09:38 for now 19:09:40 I can share it with everybody to allow editing if you want 19:09:50 alexandrelevine: that would be great 19:10:15 Everyone can comment now 19:10:35 alexandrelevine: DefCore alsop would like to have a summary in Etherpad of the items that RefStack would like DefCore to review. 19:11:32 alexandrelevine: can you and I create and Etherpad before next DefCore meeting on Wed? 19:12:30 #link After DefCore review the Etherpad we will request for Mark to update https://review.openstack.org/#/c/226902/ 19:12:44 all good? 19:13:09 moving to the next topic ... 19:13:09 sure 19:13:15 #topic RefStack implementation of Vendor Registration Process 19:13:23 Also, if you want to join the defcore list and just open the doc to people with the link, the ML is: defcore-committee@lists.openstack.org 19:14:00 Sorry, I lost my connection and missed a couple of minutes. 19:15:18 alexandrelevine_: we are onto the next topic in the agenda .. 19:15:27 perfect 19:15:49 #link Data model specs https://review.openstack.org/#/c/268922/ 19:16:00 #link https://review.openstack.org/#/c/269184/ 19:16:40 Let's discuss the comment in https://review.openstack.org/#/c/268922/ 19:17:16 Doe we want to add a role attribute at this time ? 19:18:17 please see comment in line 57 of https://review.openstack.org/#/c/268922/ 19:19:08 I just added a comment. 19:19:15 I'm still against it altogether. 19:19:44 I explained that regular Vendor users will be achieved by adding another built-in group ID (Users group) into Vendor record. 19:19:45 catherineD: I'm little bit confusing from idea to get rid of user role... I saw some related discussion in comments but still can't get a point 19:20:04 All of the Users in that Group will have non-admin rigths. No explicit roles required. 19:20:34 That is mean that group can not have 2 admins? 19:20:35 alexandrelevine_: you mean all of the users in that group will have admin right? 19:20:55 Role - is a complex thing usually. And it is an extra thing. Unless we really need it I'd suggest we don't introduce it. 19:21:24 I don't see how things will be working without it 19:21:38 catherineD: Each Vendor will have two built-in Groups: Admins (now already), Users (later when needed). That's it. In the Group table we'll be adding users to those two groups. 19:21:44 it can be a two groups in the vendor records - admin group and user group... 19:21:45 alexandrelevine_: I absolutely think that we need it ... maybe not now but for sure in the future 19:21:47 Role tends to be a requirement that maps to an implementation, but most implementations implement roles via ACLs or other methods 19:21:54 sslypushenko: ++ 19:22:26 We will have implicit role differentiation. I'm against having explicit roles. 19:22:28 andrey-mp: We can not put roles in vendor table 19:22:34 groups is the way ACLs are done 19:22:42 alexandrelevine_: why would we want to do that? Let say in the future we want top add an other roles we will create an other user group? 19:22:50 because vendor can have more than one product 19:22:55 catherineD, Yup 19:23:03 btw, why we need regular users in the vendor object? 19:23:16 actually, another group, but not user. Some other name 19:23:25 catherineD: Because I don't want to predict whatever requirements might or might not fall on us some long time from now. We need to keep things very simple to move fast.. 19:23:41 All this idea looks like a try to hardcode some ACL's logic in datastucture 19:23:44 alexandrelevine_: andrey-mp: I did not see adding a role to the relationship would complicate the tasks.... in fact it helps 19:23:48 andrey-mp: It's in the requirements. There is a use-case. I'll tell you in a moment. 19:23:49 I'm totally against it 19:24:43 I really think that we should introduce role now ... 19:24:52 andrey-mp: The use-case Cloud Operator allows some of his private results or Clouds to be visible for some Users 19:24:58 catherineD: 100500+ ) 19:25:06 and let a policy file dictate the role privilege .. 19:25:43 alexandrelevine_: with a policy file ... you can add new role anytime .. no prediction needed .. 19:25:55 catherineD: we can introduce policily latter... but we need roles now 19:26:06 catherineD: In this case the model doesn't suite at all. Because where would you put those regular users? In the admin group? Why would you want the admin group in the vendor at all in this case? It's just a completely different story. 19:26:10 sslypushenko: agree 19:26:46 alexandrelevine_: we still agree with the model ... 19:27:11 alexandrelevine_: why we need to put regular users anywere? 19:27:17 catherineD: no, it doesn't work with the explicit roles. Role entity is not in the Domain model. 19:27:41 catherineD: And it'll have to be rethought quite a bit and I still don't understand the point now. 19:28:12 alexandrelevine_: the model assum all users that can create an entities are admins of that entities at this time 19:28:23 sslypushenko: Because they are regular users for some particular Vendor. They are allowed to read objects of such Vendor. No other regular users are allowed to. 19:28:38 alexandrelevine_, I think maybe an etherpad or doc walkthrough of how another "role" would be added via adding a group (or groups) might help with this discussion 19:28:47 alexandrelevine_: those regular user will have the role=USER 19:28:56 sslypushenko: See the use-case in question: 26 19:29:09 alexandrelevine_: Hmmm... So how public clouds will live in RefStack? 19:29:39 catherineD: Role for what? A user can be an Admin for a couple of Vendors and a regular user for the rest of the objects 19:30:14 Every User has basic rights. Users in Vendor Admin groups also have rights for those Vendors. 19:30:47 alexandrelevine_, an example of users and admins on a public cloud offering could help explain how you see this working. 19:30:48 Repeat question 26: Cloud Operator allows some of his private results or Clouds to be visible for some Users 19:30:52 Is a vendor not just associated with one group id? 19:30:59 Maybe for next week? 19:31:18 Vendor could be associated with multiple groups. 19:31:32 pvaneck: right now we had such assumption ) 19:31:58 for question 26.... if a User wants to see private data of an Cloud Operator , that user should belong to the group of the Cloud_operator with role=USER 19:32:07 Vendor, vendor-product-admin, vendor-product-user, vendor-admin, vendor-product2-user, etc 19:32:23 pvaneck: Vendor is associated with one Group ID. User can be in many groups. 19:32:44 rockyg: what case of association vendor with many groups? 19:33:07 andrey-mp: There is no such case 19:33:08 alexandrelevine_: So how we will give admin privileges? 19:33:34 record in product table? 19:33:37 sslypushenko: Users registered in particular built-in admin Vendor group will have admin priviliges for this vendor. 19:33:42 i thought that all users in the group linked with vendor are admins of this vendor 19:33:50 with just one group per vendor, then group roles should facilitate the different permission levels needed by these use cases 19:34:00 Unless all vendor associated groups (users, admins, plus all product options) are under one group id, vendor has to own multiple groups 19:34:02 andrey-mp: that is the initial implementation ... 19:34:15 pvaneck: ++ 19:34:46 alexandrelevine_: It will be better to have product admin group instead on vendor admin... 19:34:53 alexandrelevine_: I have a feeling that the term USER means different thing for you and for me sslypushenko: and pvaneck: 19:34:57 I think I manage to get your point 19:35:02 so, either multiple vendor owned groups, or single vendor group with roles. Two ways to implement 19:35:45 One Vendor - One Group. Users in this Group are admins of the Vendor. 19:36:04 sslypushenko: this is the point that alexandrelevine_: had discussed ... a group should be associated to a product too ... but it will be the next implementation 19:36:11 alexandrelevine_: Hmm... but what about private test result? 19:36:46 alexandrelevine_: One vendor , one group, Users in this group can be admin or read only user ... 19:37:04 read only user can view private results of that vendor 19:37:26 and that is implemented by introducing role of user in that group ... 19:37:32 I feel like we just need a toggle for if a user is admin or non-admin in a specific group if you want some users to only have read-only access 19:38:18 pvaneck: yup that is fine by we need role ... admin and non-admin 19:38:52 so my vote is to keep the role column in the user-group relationship table ... 19:38:56 catherineD: +1 19:39:28 should we vote? 19:39:35 at least 2 rooles 19:39:40 yup 19:39:41 Could keep it in and if i looks like it adds no value, it can be removed later? 19:39:44 I'm sorry. I have an urgent call now. 19:39:55 alexandrelevine_: ok np 19:40:18 we can just discuss the next item and will make decision with your present .. 19:40:34 lets move to next ) 19:41:04 #agree we will vote on having a role column in the user-group relationship table later 19:41:41 #agreed we will vote on having a ROLE column in the usdr-group relationship table later 19:42:05 #topic Auditability implementation for RefStack? Do we need the "updated" columns? 19:42:42 please see comments on line 126 of https://review.openstack.org/#/c/268922/ 19:43:33 I know this is not perfect .. but with the updated column .. at least we know who is updating the record last ... 19:43:49 I don't get a point of this field 19:43:51 preferly audit should be done by database log ... 19:44:07 i think that if we need logging that it is better to create 'add-only' table with all records. 19:44:44 is database can help? it contains operations from only one user - refstack site 19:44:51 If we want to have some logging we should do it in some other way 19:44:58 sslypushenko: let say someone changes the role from user to admin ... the user who makes the update will be loggoed 19:45:34 sslypushenko: agree ... but in the interim .... is there something we can do? 19:45:40 but do we need such kind of logging 19:45:54 ? 19:46:11 i mean that all operations with refstack db is done by refstack site that means 'refstack' user. 19:46:14 does the DB have that function as part of the config? 19:46:26 sslypushenko: see line 163 of https://review.openstack.org/#/c/226902/ 19:46:46 rockyg: db will have the log ... but we need log analysis tools ... 19:46:47 may be it is better to implement 'add-only' logging table later? 19:47:22 andrey-mp: would that e an additional table? 19:47:29 yes 19:48:12 catherineD, if we've got the logging, then the analysis should be outside the db. 19:48:33 we can remove the updated column (which is not perfect for auditting ) we jsut need to communicate to DefCore that auditting will be implemanted later .. 19:48:34 Although last change would at least give a starting point on where to look in logs. 19:48:48 table that doesn't linked with the system but contains all (or specific) write operations. and later some can analyse this table for information... 19:49:02 andrey-mp: ++ 19:49:30 andrey-mp: That is sounds good 19:49:44 rockyg: hogepodge: DefCore should be OK with us not implementing auditting at the initial phase? 19:49:44 :) 19:50:15 so do we all agree that we do not need the updated columns? 19:50:26 catherineD: I think so 19:51:03 sslypushenko: pvaneck: rockyg: your thoughts? I know andrey-mp: wants to have it removed .. 19:51:47 works for me. As long as logging is there, we have the info. Just not great access. 19:51:51 Yea, i think an eventual audit_log table would be best 19:51:55 catherineD: It looks like it is early for now 19:52:05 pvaneck: +1 19:52:55 #agreed Autting function will be implemented later. Remove the "updated" related columns in all tables. 19:53:11 #topic Do we need the "deleted" columns? 19:53:45 yeap 19:53:46 pls see comment line 138 https://review.openstack.org/#/c/268922/ 19:53:59 I think we need soft delete 19:54:29 it is part of functionality of oslo-db 19:54:32 just a time check ...we only have 6 mins to go ... could we continue our discussion at #refstack after this ... 19:54:42 +1 19:54:47 yes 19:55:08 we have the momentum going so I really like us to continue discussion ..... 19:55:13 thank you 19:55:40 sslypushenko: so I have not seen RefStack using the delete column in the existing tables... 19:55:54 that is right 19:56:31 but I guess if that is part of oslo-db ... then we may want to keep it 19:56:36 but I think we need it... it is kind of openstack way) 19:57:22 alright ... but before our final decision let review the next topic ... because it is related ... we will come back to this item in a bit 19:57:36 we can leave these two columns and use them later ) 19:57:36 #topic Do we want to enforce organization/product name to be unique? 19:57:49 andrey-mp: + 19:59:09 That means that the name will be unique based on spelling only not upper/lower case ... so Private Cloud and PRIVATE CLOUD are the same name for us ... 19:59:25 let move to #refstack ... 19:59:30 + 19:59:34 I don't have strong desicion on this but my thoughts that we don't need it 19:59:40 moving... 19:59:41 #endmeeting