Well, zope is a cool thing I believe. We can consider to use it. I just don’t 
see what real advantage it’ll give us now.
Essentially, what we’re trying to do now is pretty simple. We’re just defining 
one base class for all actions w/o talking
about various modifications of this class yet.

So if you see a concrete idea about using zope interfaces please share. I’m 
interested in that.

Renat Akhmerov
@Nokia

> On 14 Mar 2017, at 22:14, Adriano Petrich <apetr...@redhat.com> wrote:
> 
> Sorry if I'm missing the point here, and for being late on the discussion. 
> But what about zope interfaces?
> 
> Would not that be clearer?
> 
>  
> 
> On Tue, Mar 14, 2017 at 11:39 AM, Dougal Matthews <dou...@redhat.com 
> <mailto:dou...@redhat.com>> wrote:
> 
> 
> On 14 March 2017 at 11:14, Renat Akhmerov <renat.akhme...@gmail.com 
> <mailto:renat.akhme...@gmail.com>> wrote:
> Yeah, I finally understood too what Thomas meant.
> 
> Just to clarify, I think mixed two different discussions here:
> Base framework for all actions residing in mistral-lib (what I was trying to 
> discuss)
> The new design for OpenStack actions
> 
> On #2 I agree with you that NovaAction.get_client(context) should work. No 
> problem with that.
> And I believe that it doesn’t make sense to use multiple inheritance in this 
> particular case, it’s
> simply not worth it.
> 
> Getting back to #1.. Of course, using mixins can be problematic (method and 
> state conflicts etc.).
> I think mixins is just one of the options that’s possible to use if we want 
> to. Regular class inheritance
> is also an option I think. At this point if we just agree on action base 
> class I think nothing prevents
> us from choosing how to evolve in the future. So just agreeing on the base 
> class design seems
> to be sufficient for now. It’s just a base contract that a runner needs to be 
> aware of (sorry for
> repeating this thought but I think it’s important). The rest is related with 
> action developer
> convenience.
> 
>> I think the outstanding questions are;
>> 
>> - should the context be a mixin or should run() always accept context? 
> 
> I’m for run() having “context” argument. Not sure why mixin is needed here. 
> If an action doesn’t
> need context it can be ignored.
> 
>> - should async be a mixin or should we continue with the is_sync() method 
>> and overwriting that in the sublcass?
> 
> I’m for is_sync() method as it is now. It’s more flexible and less confusing 
> (imagine an action inheriting
> AsyncAction but having is_async() returning False).
> 
>> - should the openstack actions in mistral-extra be mixins?
> 
> 
> No, not at all. They don’t have to be. This is a different discussion I 
> think. We need to collect what’s bad about
> the current OpenStack actions and think how to rewrite them (extract the 
> common infrastructure they use,
> make them more extensible, etc.)
> 
> +1 to all of the above, I think we are in complete agreement and this will 
> give us both a flexible interface and one that is easy to use and understand.
> 
>  
> 
> 
> Renat Akhmerov
> @Nokia
> 
> 
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe 
> <http://openstack-dev-requ...@lists.openstack.org/?subject:unsubscribe>
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev 
> <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev>
> 
> 
> 
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe 
> <http://openstack-dev-requ...@lists.openstack.org/?subject:unsubscribe>
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev 
> <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev>
> 
> 
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to