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