14:01:04 <tellesnobrega> #startmeeting sahara 14:01:12 <openstack> Meeting started Thu Sep 20 14:01:04 2018 UTC and is due to finish in 60 minutes. The chair is tellesnobrega. Information about MeetBot at http://wiki.debian.org/MeetBot. 14:01:13 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 14:01:16 <openstack> The meeting name has been set to 'sahara' 14:01:23 <tosky> this time I'm not late \o/ 14:01:26 <tosky> o/ 14:01:29 <jeremyfreudberg> o/ 14:01:45 * jeremyfreudberg needs to leave at 40 minutes past the hour 14:01:59 <tellesnobrega> no problem, luigi is 30 past the hour 14:02:02 <tellesnobrega> so lets rush 14:02:07 <tellesnobrega> #topic News/Updates 14:02:16 <tosky> technically not anymore (last minute change), but I'm fine closing earlier anyway :) 14:02:30 <tellesnobrega> oh 14:02:31 <tellesnobrega> ok 14:02:59 <tellesnobrega> Not much changed since last week, I'm working on split plugins but now I'm down to 0 failing tests on the sahara-plugins side 14:03:50 <tellesnobrega> I have a question for you both on the subject, but I can save it for later 14:04:06 <tosky> PTG was productive; in order to help with the plugin split process, I'm refactoring the documentation 14:04:07 <jeremyfreudberg> nothing new on my end 14:04:13 <tosky> one small patch is already out 14:04:58 <tellesnobrega> #link https://review.openstack.org/#/c/602458/ 14:05:03 <tellesnobrega> this one ^ 14:05:04 <tosky> the big one is almost done, it's touching ~16 files 14:05:05 <tellesnobrega> right? 14:05:34 <tosky> yep 14:06:14 <tellesnobrega> ok, lets move on 14:06:20 <tellesnobrega> #topic Plugins Split 14:06:30 <tellesnobrega> Let me jump to my question 14:07:19 <tellesnobrega> if you look here https://github.com/openstack/sahara/blob/master/sahara/plugins/cdh/plugin_utils.py#L240 14:07:27 <tellesnobrega> you see a reference to res.Resource 14:07:37 <tellesnobrega> that comes from sahara/conductor/resource 14:08:33 <tellesnobrega> so, I will need refactor this bit so we don't import from sahara.conductor directly 14:08:45 <tellesnobrega> buut, this checks if isinstance 14:09:10 <tellesnobrega> so I actually need to create a class that resource will inherit from so the check works 14:09:20 <tellesnobrega> does that make sense to everyone? 14:09:59 <tosky> or expose a function which does the check 14:10:03 <tellesnobrega> I personally don't really like this, because we will have a top class under sahara/plugins and sahara/conductor/resource will inherit and they are not really related, but I'm not seeing a better way to fix this 14:10:41 <jeremyfreudberg> you can expose a function, like tosky says, or you can use hasattr 14:11:01 <tellesnobrega> tosky, you mean add a isinstance on sahara/plugins that does this check instead of doing it on plugins side itself? 14:11:36 <tosky> not called isinstance, but is_resource, or something like that, BUT you need to return a res.Resource too, so it won't work 14:12:17 <tellesnobrega> unless I do that under sahara/plugins/something and call from the sahara_plugins side 14:12:27 <tellesnobrega> but you are right 14:12:33 <tellesnobrega> it would work for the check 14:12:35 <tellesnobrega> but not the return 14:12:57 <tosky> I wonder if it really returns to return a res.Resource 14:13:04 <tosky> the only place where it's used seem to use a dict 14:13:35 <tosky> in sahara/plugins/cdh/cloudera_utils.py 14:14:09 <jeremyfreudberg> yeah, and i think it eventually ends up here, no? https://github.com/openstack/sahara/blob/4b4effa9c8062c26fafe2b9c20146bf67b44b2b5/sahara/utils/configs.py#L17 14:14:32 <tosky> that's what it looks like 14:15:31 <tellesnobrega> so you are saying we can return something else? instead of a resource? 14:15:42 <tosky> maybe just a dict 14:16:07 <jeremyfreudberg> yes, i believe just a dict should work 14:16:47 <jeremyfreudberg> the output of convert_process_configs is only used in that one place in cloudera_utils.py, and then it's immediately passed to merge_configs(), which accepts anything dict-like 14:17:00 <tellesnobrega> ok, I will give it a try 14:17:32 <tellesnobrega> I *think* that is the only remaining direct link 14:17:33 <tosky> it looks like the fact that Resource is a special dictionary (immutable object) is not much used 14:17:53 <tosky> but in case please add more unit tests around the code which is touched, before and after the split 14:17:57 <tellesnobrega> I will double check and if need I will come up with more questions 14:17:58 <tosky> so that should say something 14:18:26 <tellesnobrega> tosky, sure, I will give it a try 14:19:38 <tellesnobrega> thanks you both 14:19:45 <tellesnobrega> any specific topics from you? 14:20:26 <tosky> there are also two general patches about the build system: one fix grenade, the other remove the cover job in post (never used) 14:21:34 <tosky> respectively https://review.openstack.org/#/c/602506/ and https://review.openstack.org/#/c/600686/ (the latter depends on the former) 14:21:54 <tellesnobrega> lets go into open discussion so we can cover all remaining topics 14:21:58 <tellesnobrega> #topic Open Discussion 14:22:15 <tellesnobrega> tosky, both are ready to merge? 14:22:31 <tellesnobrega> the second more when the first lands for sure 14:23:03 <tosky> https://review.openstack.org/#/c/600686/ can't land without https://review.openstack.org/#/c/602506/, there is a dependency 14:23:03 <tellesnobrega> thanks jeremyfreudberg for the quick +2+A 14:23:56 <tellesnobrega> sure 14:25:00 <jeremyfreudberg> it all looked fine to me 14:25:38 <tellesnobrega> cool 14:25:40 <tellesnobrega> anything else 14:26:45 <jeremyfreudberg> nothing from me 14:26:49 <tosky> nothing else so far; expect the big doc patch $soon :) 14:27:31 <tellesnobrega> tosky, good to hear 14:27:54 <tellesnobrega> I guess we can close early and have 33 minutes back to work 14:27:57 <tellesnobrega> thanks all 14:28:02 <jeremyfreudberg> thanks 14:28:14 <tellesnobrega> #endmeeting