15:00:52 #startmeeting craton 15:00:53 Meeting started Mon Sep 19 15:00:52 2016 UTC and is due to finish in 60 minutes. The chair is jimbaker. Information about MeetBot at http://wiki.debian.org/MeetBot. 15:00:54 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 15:00:57 The meeting name has been set to 'craton' 15:01:10 #topic rollcall 15:01:19 o/ 15:01:28 hi everyone, and welcome to this week's meeting on craton 15:01:37 Hi jim 15:01:41 i hope you are doing well 15:02:04 syed_, thanks, yes, i had a very good hike yesterday 15:02:20 so that always is a great way to prepare a solid foundation for the week 15:02:31 Good, i am glad 15:03:12 which is as we know, is actually related to what craton means (in this case, a solid foundation/platform for continents), and should do for the cloud 15:03:57 syed_, hopefully you had a nice weekend as well, and ready for some good progress on functional testing/container automation 15:04:16 hola, o/ 15:04:23 yeap i went to visit family, and ready for some things to be up 15:04:24 sulo, hi 15:04:27 hey sulo 15:04:51 syed_, good to hear! 15:05:54 looks like the core devs for craton are here, so let's proceed 15:06:09 #topic new meeting schedule 15:06:53 sigmavirus, what is a good time for you on tuesday? i saw your note about a conflict 15:07:13 ideally sulo can attend the client meeting, but we need a time that you can attend 15:07:35 irc meetings are better for me honestly 15:07:43 I can join that and a video call more easily than two video alls 15:08:56 sigmavirus, understood, but i think the rest of the team benefits from a video call, that's why we started doing them as well 15:09:00 we can readily do demos, etc 15:09:13 and there's a training component as well 15:09:33 feel free to do meetings without me if thats what is needed 15:09:44 sigmavirus, would 1600 UTC work for you? otherwise we can push into US afternoon 15:10:01 * sulo is more than happy to not attend meetings 15:10:02 sulo, agreed - i think i can represent you just fine on the client side 15:10:43 jimbaker: can we schedule it outside of this? 15:11:06 sigmavirus, sounds good - but we need to get this resolved today 15:11:40 jimbaker: 1600 utc looks fine on my calendar 15:12:06 sigmavirus, thanks! 15:12:43 lcastell, i assume 1600 UTC also works for you. same with jovon and syed_ 15:12:53 moving on 15:13:01 works fine 15:13:08 +1 15:13:35 #topic outstanding changes 15:13:45 #topic outstanding change reviews 15:14:54 sulo, i know you have a number of reviews i need to do for you. the only one that i have pushed back is query by variables, pending some refactoring work i'm doing on the api 15:15:40 others here: are you being blocked by reviews, and if so, any prioritization we should be aware of as we start off this week? 15:15:56 I am good for now. Thanks 15:16:14 syed_, sounds good. feel free to ping me about docker-py as it comes up 15:16:32 yes i need some clarifications on few things for it 15:16:38 i will once the meeting is over 15:16:39 thanks 15:16:43 syed_, cool 15:16:44 everyone start doing reivews ... this is one of the most important thing that is getting ignored 15:17:14 I currently am blocked by turvey's API change. i 15:17:15 sulo, i don't think we are ignoring them. but we certainly need to keep them prioritized 15:17:21 even if you cant merge, everyone can certainly do +1's 15:17:26 -1 etc 15:17:33 sulo, agreed on that 15:17:34 agreed sulo 15:18:06 even minor nits are important to point out. sometimes what looks minor is also important 15:18:19 so many eyeballs here 15:18:43 jovon, details on turvey's API change? 15:18:52 if we think we dont have enough reviewers, perhaps we need to send a community email to get some more ppl aware that they can help with this 15:19:07 sulo, +1 15:19:32 #action jimbaker what can you do for craton? email the community 15:19:44 i have some screencast that i need to share .. so i might add a help note when i send out the vidyo 15:19:57 he has submitted an update to the doc. I need his patch to be merged before i can complete mine as it pertains to the same set 15:20:04 or video even 15:20:09 sulo, right, thanks for putting those together 15:20:41 jovon, got it, we will get turvey's review through 15:20:43 jimbaker: you talking about the one i did for JC ? 15:21:05 sulo, just in general, but yes 15:21:19 thank you 15:21:35 right, yeah i dont like that one .. the one i intend to send will be better 15:21:43 sulo, practice makes perfect 15:21:47 didnt have enough time on that 15:24:02 so the net of this is: all of us need to do reviews. these can be great to do when stuck on something else 15:24:25 also this is a chance to learn what the codebase does 15:24:37 by trying out functionality 15:24:46 +1 15:24:54 new REST API in a change from sulo? give it a try from curl 15:25:19 sounds good ! 15:25:53 btw, i assume everyone knows how to pull in a change from gerrit so they can actually try stuff out locally 15:26:03 but if not: look at the downloads link 15:26:04 :) 15:27:04 roger that ty! 15:28:01 time to wrap up this topic, feel free to ask more on #craton - and please demand your reviews get done! 15:28:22 #topic dev issues 15:28:42 sulo, do you want to start with the label discussion? 15:28:56 i assume this is with respect to OSA modeling 15:29:03 so, labels - how do we want to use it ? 15:29:27 sulo, my assumption has been is that labels are used for logical groupings 15:30:09 they are not part of the network topology (which we just added with networks, netdevices, and interfaces). they are not part of a physical containment (the device tree) 15:30:29 so we can labels like "service:compute" 15:31:07 so whats the benifit of doing this in a separate table vs just puttig lables in device model 15:31:12 obviously we can do the same with variables on a given device - that's why i was describing labels as duals to variables 15:31:32 sulo, well i think they are in fact already are 15:31:45 ? 15:32:01 labels have a many-to-many relationship to devices 15:32:48 so they already are there in the device model. at least in the relational sense 15:33:30 in craton's inventory model, devices are the central concept 15:33:43 (we can all agree on that) 15:33:47 right, what i am saying is whats the benifit of having this relationship vs just tracking it per device on the devices model 15:34:08 it only makes sense to do this if we were doing more with it 15:34:26 sulo, they are pretty light weight right now 15:34:39 i am trying to understand (i forget the discussion) what we were trying to drive with labels 15:34:42 i think the only complexity is that we let them have variables 15:34:52 that too 15:35:02 if we eliminate that, they become very simple 15:35:29 sulo, so the idea is that we want to be able to look up various logical groupings efficiently, by using relational queries 15:35:40 much as we do with cell or region 15:36:25 so does that need k:v labels ? 15:36:35 so i can label a device by how it's grouped with power; or what its function is (it's for storage, or for compute, or whatever) 15:36:59 sulo, i think that's just a useful convention that we can support 15:37:56 and let's map to say http://kubernetes.io/docs/user-guide/labels/ 15:38:30 sulo, note they have a similar design concept: "We don’t want to pollute labels with non-identifying, especially large and/or structured, data. Non-identifying information should be recorded using annotations." 15:38:54 what they call annotations is definitely close to what we are describing as variables 15:39:31 so what i am syaing is i dont see why we couldnt just do this with variables .. it seems like exact the same thing .. we just need to track it differently .. example: label_x 15:39:49 but maybe its a good idea to do it separately 15:40:00 sulo, i absolutely agree that it can be done in this way 15:40:34 but perhaps many of the things we might do a variable query would be better done with a label. it would certainly be far more efficient 15:40:47 like what ? 15:41:01 just to get in some details: on mysql we are not even mapping json columns to mysql's json type 15:41:19 this is in part because mariadb doesn't yet have support for mysql's json type 15:42:01 and the sqlalchemy_utils package currently doesn't look at specific db impl - for mysql, it just does TEXT 15:42:24 but this will change over time 15:42:52 at some point, queries that involve json columns will be able to use json indexing 15:43:24 but we would need to do some work 15:43:28 doesnt that apply to everything that uses JSON type ? 15:43:43 whereas with labels, we get that indexing for free, since it's purely relational 15:44:05 sulo, right, but we usually are less concerned about this 15:44:11 oh, you saying it can only be string:string mapping for labels ? 15:44:29 sulo, yes 15:44:48 the label name is currently just a string 15:45:12 i want to support splitting it into two strings, because the k:v convention is pretty nice as seen in kube 15:45:41 yeah, i am thinking about : JSONType 15:45:43 but yeah, the :v part will not grow to be arbitrary JSON. that would be bad 15:46:17 then we would just have a more awkward, non relational thing in labels. i wouldn't even know how to model as we have it now :) 15:46:40 so how would we represent multiple group memebership in labels ? 15:46:54 sulo, labels are many to many with devices 15:47:07 so we get that for free 15:48:06 the one thing we don't have is any label hierarchy. but i don't see the need for that 15:48:53 that thinking was mostly inspired by a desire to implement a DAG for network modeling. but instead we came up with a better modeling of that, which is actually quite sweet imho 15:50:16 so i am not sure i am on the same page as you here ... 15:50:51 sulo, i suggest we move this discussion over to #craton 15:51:27 yeah, i think this is a much longer discussion .. lets move to #craton after this meeting 15:51:30 cool 15:52:07 other dev topics that we should cover? 15:52:53 where are we with worker code ? 15:53:14 i will mention that my goals for this week include: refactoring of the flask api; craton-specific backend for taskflow 15:53:21 is that something we are clear with in terms of how to model ... 15:53:38 sulo, so i put that gist up last week 15:54:00 i will revisit as a blueprint. today sounds right to me 15:54:15 ok cool ... i think we are coming to the point where some sort of worker impl will be required soon 15:54:34 sulo, the key piece is going to be scheduling the task graph, which we have decided to break into two pieces 15:54:36 to drive some of the osa integration etc 15:55:05 sulo, yeah, so that's really about wrapping the ansible-playbook command and especially using the callback api 15:55:29 for ansible/OSA specifically 15:55:47 the general piece is the two level task graph scheduling 15:56:41 ok cool. that sounds like you have it under control ;) 15:57:04 sulo, more that i'm juggling them, but sure :) 15:57:46 just need to keep everything in the air, not so bad. just remember: if we juggle too much, it all falls to the ground ;) 15:58:04 jimbaker: heh, upto 5 pins allowed 15:58:08 exacty 15:58:33 time to wrap up this meeting 15:58:49 #topic questions/goodbyes 15:59:07 so really this means - take your questions over to #craton 15:59:19 because there's no time left 15:59:28 thanks everyone! 15:59:35 thanks 15:59:59 #endmeeting