diff --git a/octavia/amphorae/drivers/driver_base.py b/octavia/amphorae/drivers/driver_base.py index 3c666a85df..93ab84e82d 100644 --- a/octavia/amphorae/drivers/driver_base.py +++ b/octavia/amphorae/drivers/driver_base.py @@ -144,6 +144,20 @@ class AmphoraLoadBalancerDriver(object): """ pass + def post_network_plug(self, amphora): + """Called after amphora added to network + + + :param amphora: amphora object, needs id and network ip(s) + :type amphora: object + + This method is optional to implement. After adding an amphora to a + network, there may be steps necessary on the amphora to allow it to + access said network. Ex: creating an interface on an amphora for a + neutron network to utilize. + """ + pass + @six.add_metaclass(abc.ABCMeta) class HealthMixin(object): diff --git a/specs/version0.5/amphora-driver-interface.rst b/specs/version0.5/amphora-driver-interface.rst index 1e83a1bf42..55a2da8391 100755 --- a/specs/version0.5/amphora-driver-interface.rst +++ b/specs/version0.5/amphora-driver-interface.rst @@ -87,6 +87,13 @@ Establish a base class to model the desire functionality: """ pass + def post_network_plug(self, amphora): + """ + OPTIONAL - this method will be called after adding a compute instance to a network. + This will perform any necessary actions to allow for connectivity for that network + on that instance. + """ + The referenced listener is a listener object and vip a vip as described in our model. The model is detached from the DB so the driver can't write