octavia.controller.worker.v1.tasks package¶
Submodules¶
octavia.controller.worker.v1.tasks.amphora_driver_tasks module¶
-
class
AmpListenersUpdate
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to update the listeners on one amphora.
-
execute
(loadbalancer, amphora, timeout_dict=None)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
AmphoraCertUpload
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Upload a certificate to the amphora.
-
class
AmphoraComputeConnectivityWait
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to wait for the compute instance to be up.
-
class
AmphoraConfigUpdate
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to push a new amphora agent configuration to the amphroa.
-
execute
(amphora, flavor)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
AmphoraFinalize
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to finalize the amphora before any listeners are configured.
-
class
AmphoraGetDiagnostics
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to get diagnostics on the amphora and the loadbalancers.
-
class
AmphoraGetInfo
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to get information on an amphora.
-
class
AmphoraIndexListenerUpdate
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to update the listeners on one amphora.
-
execute
(loadbalancer, amphora_index, amphorae, timeout_dict=None)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
AmphoraIndexListenersReload
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to reload all listeners on an amphora.
-
class
AmphoraIndexUpdateVRRPInterface
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to get and update the VRRP interface device name from amphora.
-
execute
(amphora_index, amphorae, timeout_dict=None)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
AmphoraIndexVRRPStart
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to start keepalived on an amphora.
This will reload keepalived if it is already running.
-
execute
(amphora_index, amphorae, timeout_dict=None)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
AmphoraIndexVRRPUpdate
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to update the VRRP configuration of an amphora.
-
class
AmphoraPostNetworkPlug
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to notify the amphora post network plug.
-
class
AmphoraPostVIPPlug
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to notify the amphora post VIP plug.
-
class
AmphoraUpdateVRRPInterface
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to get and update the VRRP interface device name from amphora.
-
execute
(amphora, timeout_dict=None)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
AmphoraVRRPStart
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to start keepalived on an amphora.
This will reload keepalived if it is already running.
-
execute
(amphora, timeout_dict=None)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
AmphoraVRRPStop
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to stop keepalived of all amphorae of a LB.
-
execute
(loadbalancer)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
AmphoraVRRPUpdate
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to update the VRRP configuration of an amphora.
-
class
AmphoraePostNetworkPlug
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to notify the amphorae post network plug.
-
class
AmphoraePostVIPPlug
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to notify the amphorae post VIP plug.
-
class
BaseAmphoraTask
(**kwargs)[source]¶ Bases:
taskflow.task.Task
Base task to load drivers common to the tasks.
-
class
ListenerDelete
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to delete the listener on the vip.
-
class
ListenersStart
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to start all listeners on the vip.
-
class
ListenersUpdate
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.amphora_driver_tasks.BaseAmphoraTask
Task to update amphora with all specified listeners’ configurations.
octavia.controller.worker.v1.tasks.cert_task module¶
-
class
BaseCertTask
(**kwargs)[source]¶ Bases:
taskflow.task.Task
Base task to load drivers common to the tasks.
-
class
GenerateServerPEMTask
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.cert_task.BaseCertTask
Create the server certs for the agent comm
Use the amphora_id for the CN
-
execute
(amphora_id)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
octavia.controller.worker.v1.tasks.compute_tasks module¶
-
class
AttachPort
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.compute_tasks.BaseComputeTask
-
class
BaseComputeTask
(**kwargs)[source]¶ Bases:
taskflow.task.Task
Base task to load drivers common to the tasks.
-
class
CertComputeCreate
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.compute_tasks.ComputeCreate
-
class
ComputeActiveWait
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.compute_tasks.BaseComputeTask
Wait for the compute driver to mark the amphora active.
-
class
ComputeCreate
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.compute_tasks.BaseComputeTask
Create the compute instance for a new amphora.
-
class
ComputeDelete
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.compute_tasks.BaseComputeTask
-
execute
(amphora, passive_failure=False)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
DeleteAmphoraeOnLoadBalancer
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.compute_tasks.BaseComputeTask
Delete the amphorae on a load balancer.
Iterate through amphorae, deleting them
-
execute
(loadbalancer)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
NovaServerGroupCreate
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.compute_tasks.BaseComputeTask
-
class
NovaServerGroupDelete
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.compute_tasks.BaseComputeTask
-
execute
(server_group_id)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
octavia.controller.worker.v1.tasks.database_tasks module¶
-
class
AssociateFailoverAmphoraWithLBID
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Associate failover amphora with loadbalancer in the database.
-
class
BaseDatabaseTask
(**kwargs)[source]¶ Bases:
taskflow.task.Task
Base task to load drivers common to the tasks.
-
class
CountPoolChildrenForQuota
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Counts the pool child resources for quota management.
Since the children of pools are cleaned up by the sqlalchemy cascade delete settings, we need to collect the quota counts for the child objects early.
-
class
CreateAmphoraInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Task to create an initial amphora in the Database.
-
class
CreateVRRPGroupForLB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Create a VRRP group for a load balancer.
-
class
DecrementHealthMonitorQuota
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Decrements the health monitor quota for a project.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
DecrementListenerQuota
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Decrements the listener quota for a project.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
DecrementLoadBalancerQuota
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Decrements the load balancer quota for a project.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
DecrementMemberQuota
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Decrements the member quota for a project.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
DecrementPoolQuota
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Decrements the pool quota for a project.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
DeleteHealthMonitorInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Delete the health monitor in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
DeleteHealthMonitorInDBByPool
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.DeleteHealthMonitorInDB
Delete the health monitor in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
DeleteL7PolicyInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Delete the L7 policy in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
DeleteL7RuleInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Delete the L7 rule in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
DeleteListenerInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Delete the listener in the DB.
-
class
DeleteMemberInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Delete the member in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
DeletePoolInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Delete the pool in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
DisableAmphoraHealthMonitoring
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Disable amphora health monitoring.
This disables amphora health monitoring by removing it from the amphora_health table.
-
class
DisableLBAmphoraeHealthMonitoring
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Disable health monitoring on the LB amphorae.
This disables amphora health monitoring by removing it from the amphora_health table for each amphora on a load balancer.
-
class
GetAmphoraDetails
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Task to retrieve amphora network details.
-
class
GetAmphoraeFromLoadbalancer
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Task to pull the amphorae from a loadbalancer.
-
class
GetListenersFromLoadbalancer
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Task to pull the listeners from a loadbalancer.
-
class
GetLoadBalancer
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Get an load balancer object from the database.
-
class
GetVipFromLoadbalancer
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Task to pull the vip from a loadbalancer.
-
class
MapLoadbalancerToAmphora
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Maps and assigns a load balancer to an amphora in the database.
-
execute
(loadbalancer_id, server_group_id=None, flavor=None)[source]¶ Allocates an Amphora for the load balancer in the database.
Parameters: loadbalancer_id – The load balancer id to map to an amphora Returns: Amphora ID if one was allocated, None if it was unable to allocate an Amphora
-
revert
(result, loadbalancer_id, *args, **kwargs)[source]¶ Revert this atom.
This method should undo any side-effects caused by previous execution of the atom using the result of the
execute()
method and information on the failure which triggered reversion of the flow the atom is contained in (if applicable).Parameters: - args – positional arguments that the atom required to execute.
- kwargs – any keyword arguments that the atom required to
execute; the special key
'result'
will contain theexecute()
result (if any) and the**kwargs
key'flow_failures'
will contain any failure information.
-
-
class
MarkAmphoraAllocatedInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Will mark an amphora as allocated to a load balancer in the database.
Assume sqlalchemy made sure the DB got retried sufficiently - so just abort
-
class
MarkAmphoraBackupInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks._MarkAmphoraRoleAndPriorityInDB
Alter the amphora role to: Backup.
-
class
MarkAmphoraBootingInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the amphora as booting in the database.
-
class
MarkAmphoraDeletedInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the amphora deleted in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkAmphoraHealthBusy
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark amphora health monitoring busy.
This prevents amphora failover by marking the amphora busy in the amphora_health table.
-
class
MarkAmphoraMasterInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks._MarkAmphoraRoleAndPriorityInDB
Alter the amphora role to: MASTER.
-
class
MarkAmphoraPendingDeleteInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the amphora pending delete in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkAmphoraPendingUpdateInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the amphora pending update in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkAmphoraReadyInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
This task will mark an amphora as ready in the database.
Assume sqlalchemy made sure the DB got retried sufficiently - so just abort
-
class
MarkAmphoraStandAloneInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks._MarkAmphoraRoleAndPriorityInDB
Alter the amphora role to: Standalone.
-
class
MarkHealthMonitorActiveInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the health monitor ACTIVE in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkHealthMonitorPendingCreateInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the health monitor pending create in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkHealthMonitorPendingDeleteInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the health monitor pending delete in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkHealthMonitorPendingUpdateInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the health monitor pending update in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkL7PolicyActiveInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the l7policy ACTIVE in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkL7PolicyPendingCreateInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the l7policy pending create in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkL7PolicyPendingDeleteInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the l7policy pending delete in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkL7PolicyPendingUpdateInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the l7policy pending update in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkL7RuleActiveInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the l7rule ACTIVE in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkL7RulePendingCreateInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the l7rule pending create in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkL7RulePendingDeleteInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the l7rule pending delete in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkL7RulePendingUpdateInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the l7rule pending update in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkLBActiveInDB
(mark_subobjects=False, **kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the load balancer active in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkLBAmphoraeDeletedInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Task to mark a list of amphora deleted in the Database.
-
class
MarkLBAmphoraeHealthBusy
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark amphorae health monitoring busy for the LB.
This prevents amphorae failover by marking each amphora of a given load balancer busy in the amphora_health table.
-
class
MarkLBAndListenersActiveInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the load balancer and specified listeners active in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkLBDeletedInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the load balancer deleted in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkLBPendingDeleteInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the load balancer pending delete in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkListenerDeletedInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the listener deleted in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkListenerPendingDeleteInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the listener pending delete in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkMemberActiveInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the member ACTIVE in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkMemberPendingCreateInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the member pending create in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkMemberPendingDeleteInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the member pending delete in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkMemberPendingUpdateInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the member pending update in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkPoolActiveInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the pool ACTIVE in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkPoolPendingCreateInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the pool pending create in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkPoolPendingDeleteInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the pool pending delete in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
MarkPoolPendingUpdateInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Mark the pool pending update in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
ReloadAmphora
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Get an amphora object from the database.
-
class
ReloadLoadBalancer
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Get an load balancer object from the database.
-
class
UpdateAmpFailoverDetails
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Update amphora failover details in the database.
-
class
UpdateAmphoraCertBusyToFalse
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Update the amphora cert_busy flag to be false.
-
class
UpdateAmphoraComputeId
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Associate amphora with a compute in DB.
-
class
UpdateAmphoraDBCertExpiration
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Update the amphora expiration date with new cert file date.
-
class
UpdateAmphoraInfo
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Update amphora with compute instance details.
-
class
UpdateAmphoraVIPData
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Update amphorae VIP data.
-
class
UpdateAmphoraeVIPData
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Update amphorae VIP data.
-
class
UpdateHealthMonInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Update the health monitor in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
UpdateL7PolicyInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Update the L7 policy in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
UpdateL7RuleInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Update the L7 rule in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
UpdateLBServerGroupInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Update the server group id info for load balancer in DB.
-
execute
(loadbalancer_id, server_group_id)[source]¶ Update the server group id info for load balancer in DB.
Parameters: - loadbalancer_id – Id of a load balancer to update
- server_group_id – Id of a server group to associate with the load balancer
Returns: None
-
revert
(loadbalancer_id, server_group_id, *args, **kwargs)[source]¶ Remove server group information from a load balancer in DB.
Parameters: - loadbalancer_id – Id of a load balancer that failed to update
- server_group_id – Id of a server group that couldn’t be associated with the load balancer
Returns: None
-
-
class
UpdateListenerInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Update the listener in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
UpdateLoadbalancerInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Update the loadbalancer in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
UpdateMemberInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Update the member in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
UpdatePoolInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Update the pool in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
UpdatePoolMembersOperatingStatusInDB
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Updates the members of a pool operating status.
Since sqlalchemy will likely retry by itself always revert if it fails
-
class
UpdateVIPAfterAllocation
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.database_tasks.BaseDatabaseTask
Update a VIP associated with a given load balancer.
octavia.controller.worker.v1.tasks.lifecycle_tasks module¶
-
class
AmphoraIDToErrorOnRevertTask
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.lifecycle_tasks.BaseLifecycleTask
Task to checkpoint Amphora lifecycle milestones.
-
execute
(amphora_id)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
revert
(amphora_id, *args, **kwargs)[source]¶ Revert this atom.
This method should undo any side-effects caused by previous execution of the atom using the result of the
execute()
method and information on the failure which triggered reversion of the flow the atom is contained in (if applicable).Parameters: - args – positional arguments that the atom required to execute.
- kwargs – any keyword arguments that the atom required to
execute; the special key
'result'
will contain theexecute()
result (if any) and the**kwargs
key'flow_failures'
will contain any failure information.
-
-
class
AmphoraToErrorOnRevertTask
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.lifecycle_tasks.AmphoraIDToErrorOnRevertTask
Task to checkpoint Amphora lifecycle milestones.
-
execute
(amphora)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
revert
(amphora, *args, **kwargs)[source]¶ Revert this atom.
This method should undo any side-effects caused by previous execution of the atom using the result of the
execute()
method and information on the failure which triggered reversion of the flow the atom is contained in (if applicable).Parameters: - args – positional arguments that the atom required to execute.
- kwargs – any keyword arguments that the atom required to
execute; the special key
'result'
will contain theexecute()
result (if any) and the**kwargs
key'flow_failures'
will contain any failure information.
-
-
class
BaseLifecycleTask
(**kwargs)[source]¶ Bases:
taskflow.task.Task
Base task to instansiate common classes.
-
class
HealthMonitorToErrorOnRevertTask
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.lifecycle_tasks.BaseLifecycleTask
Task to set a member to ERROR on revert.
-
execute
(health_mon, listeners, loadbalancer)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
revert
(health_mon, listeners, loadbalancer, *args, **kwargs)[source]¶ Revert this atom.
This method should undo any side-effects caused by previous execution of the atom using the result of the
execute()
method and information on the failure which triggered reversion of the flow the atom is contained in (if applicable).Parameters: - args – positional arguments that the atom required to execute.
- kwargs – any keyword arguments that the atom required to
execute; the special key
'result'
will contain theexecute()
result (if any) and the**kwargs
key'flow_failures'
will contain any failure information.
-
-
class
L7PolicyToErrorOnRevertTask
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.lifecycle_tasks.BaseLifecycleTask
Task to set a l7policy to ERROR on revert.
-
execute
(l7policy, listeners, loadbalancer)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
revert
(l7policy, listeners, loadbalancer, *args, **kwargs)[source]¶ Revert this atom.
This method should undo any side-effects caused by previous execution of the atom using the result of the
execute()
method and information on the failure which triggered reversion of the flow the atom is contained in (if applicable).Parameters: - args – positional arguments that the atom required to execute.
- kwargs – any keyword arguments that the atom required to
execute; the special key
'result'
will contain theexecute()
result (if any) and the**kwargs
key'flow_failures'
will contain any failure information.
-
-
class
L7RuleToErrorOnRevertTask
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.lifecycle_tasks.BaseLifecycleTask
Task to set a l7rule to ERROR on revert.
-
execute
(l7rule, listeners, loadbalancer)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
revert
(l7rule, listeners, loadbalancer, *args, **kwargs)[source]¶ Revert this atom.
This method should undo any side-effects caused by previous execution of the atom using the result of the
execute()
method and information on the failure which triggered reversion of the flow the atom is contained in (if applicable).Parameters: - args – positional arguments that the atom required to execute.
- kwargs – any keyword arguments that the atom required to
execute; the special key
'result'
will contain theexecute()
result (if any) and the**kwargs
key'flow_failures'
will contain any failure information.
-
-
class
ListenerToErrorOnRevertTask
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.lifecycle_tasks.BaseLifecycleTask
Task to set a listener to ERROR on revert.
-
execute
(listener)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
revert
(listener, *args, **kwargs)[source]¶ Revert this atom.
This method should undo any side-effects caused by previous execution of the atom using the result of the
execute()
method and information on the failure which triggered reversion of the flow the atom is contained in (if applicable).Parameters: - args – positional arguments that the atom required to execute.
- kwargs – any keyword arguments that the atom required to
execute; the special key
'result'
will contain theexecute()
result (if any) and the**kwargs
key'flow_failures'
will contain any failure information.
-
-
class
ListenersToErrorOnRevertTask
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.lifecycle_tasks.BaseLifecycleTask
Task to set listeners to ERROR on revert.
-
execute
(listeners, loadbalancer)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
revert
(listeners, loadbalancer, *args, **kwargs)[source]¶ Revert this atom.
This method should undo any side-effects caused by previous execution of the atom using the result of the
execute()
method and information on the failure which triggered reversion of the flow the atom is contained in (if applicable).Parameters: - args – positional arguments that the atom required to execute.
- kwargs – any keyword arguments that the atom required to
execute; the special key
'result'
will contain theexecute()
result (if any) and the**kwargs
key'flow_failures'
will contain any failure information.
-
-
class
LoadBalancerIDToErrorOnRevertTask
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.lifecycle_tasks.BaseLifecycleTask
Task to set the load balancer to ERROR on revert.
-
execute
(loadbalancer_id)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
revert
(loadbalancer_id, *args, **kwargs)[source]¶ Revert this atom.
This method should undo any side-effects caused by previous execution of the atom using the result of the
execute()
method and information on the failure which triggered reversion of the flow the atom is contained in (if applicable).Parameters: - args – positional arguments that the atom required to execute.
- kwargs – any keyword arguments that the atom required to
execute; the special key
'result'
will contain theexecute()
result (if any) and the**kwargs
key'flow_failures'
will contain any failure information.
-
-
class
LoadBalancerToErrorOnRevertTask
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.lifecycle_tasks.LoadBalancerIDToErrorOnRevertTask
Task to set the load balancer to ERROR on revert.
-
execute
(loadbalancer)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
revert
(loadbalancer, *args, **kwargs)[source]¶ Revert this atom.
This method should undo any side-effects caused by previous execution of the atom using the result of the
execute()
method and information on the failure which triggered reversion of the flow the atom is contained in (if applicable).Parameters: - args – positional arguments that the atom required to execute.
- kwargs – any keyword arguments that the atom required to
execute; the special key
'result'
will contain theexecute()
result (if any) and the**kwargs
key'flow_failures'
will contain any failure information.
-
-
class
MemberToErrorOnRevertTask
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.lifecycle_tasks.BaseLifecycleTask
Task to set a member to ERROR on revert.
-
execute
(member, listeners, loadbalancer, pool)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
revert
(member, listeners, loadbalancer, pool, *args, **kwargs)[source]¶ Revert this atom.
This method should undo any side-effects caused by previous execution of the atom using the result of the
execute()
method and information on the failure which triggered reversion of the flow the atom is contained in (if applicable).Parameters: - args – positional arguments that the atom required to execute.
- kwargs – any keyword arguments that the atom required to
execute; the special key
'result'
will contain theexecute()
result (if any) and the**kwargs
key'flow_failures'
will contain any failure information.
-
-
class
MembersToErrorOnRevertTask
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.lifecycle_tasks.BaseLifecycleTask
Task to set members to ERROR on revert.
-
execute
(members, listeners, loadbalancer, pool)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
revert
(members, listeners, loadbalancer, pool, *args, **kwargs)[source]¶ Revert this atom.
This method should undo any side-effects caused by previous execution of the atom using the result of the
execute()
method and information on the failure which triggered reversion of the flow the atom is contained in (if applicable).Parameters: - args – positional arguments that the atom required to execute.
- kwargs – any keyword arguments that the atom required to
execute; the special key
'result'
will contain theexecute()
result (if any) and the**kwargs
key'flow_failures'
will contain any failure information.
-
-
class
PoolToErrorOnRevertTask
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.lifecycle_tasks.BaseLifecycleTask
Task to set a pool to ERROR on revert.
-
execute
(pool, listeners, loadbalancer)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
revert
(pool, listeners, loadbalancer, *args, **kwargs)[source]¶ Revert this atom.
This method should undo any side-effects caused by previous execution of the atom using the result of the
execute()
method and information on the failure which triggered reversion of the flow the atom is contained in (if applicable).Parameters: - args – positional arguments that the atom required to execute.
- kwargs – any keyword arguments that the atom required to
execute; the special key
'result'
will contain theexecute()
result (if any) and the**kwargs
key'flow_failures'
will contain any failure information.
-
octavia.controller.worker.v1.tasks.model_tasks module¶
-
class
DeleteModelObject
(name=None, provides=None, requires=None, auto_extract=True, rebind=None, inject=None, ignore_list=None, revert_rebind=None, revert_requires=None)[source]¶ Bases:
taskflow.task.Task
Task to delete an object in a model.
-
execute
(object)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
UpdateAttributes
(name=None, provides=None, requires=None, auto_extract=True, rebind=None, inject=None, ignore_list=None, revert_rebind=None, revert_requires=None)[source]¶ Bases:
taskflow.task.Task
Task to update an object for changes.
-
execute
(object, update_dict)[source]¶ Update an object and its associated resources.
- Note: This relies on the data_model update() methods to handle complex
- objects with nested objects (LoadBalancer.vip, Pool.session_persistence, etc.)
Parameters: - object – The object will be updated.
- update_dict – The updates dictionary.
Returns: None
-
octavia.controller.worker.v1.tasks.network_tasks module¶
-
class
AdminDownPort
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
-
execute
(port_id)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
revert
(result, port_id, *args, **kwargs)[source]¶ Revert this atom.
This method should undo any side-effects caused by previous execution of the atom using the result of the
execute()
method and information on the failure which triggered reversion of the flow the atom is contained in (if applicable).Parameters: - args – positional arguments that the atom required to execute.
- kwargs – any keyword arguments that the atom required to
execute; the special key
'result'
will contain theexecute()
result (if any) and the**kwargs
key'flow_failures'
will contain any failure information.
-
-
class
AllocateVIP
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to allocate a VIP.
-
class
AllocateVIPforFailover
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.AllocateVIP
Task to allocate/validate the VIP for a failover flow.
-
class
ApplyQos
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Apply Quality of Services to the VIP
-
class
ApplyQosAmphora
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Apply Quality of Services to the VIP
-
class
BaseNetworkTask
(**kwargs)[source]¶ Bases:
taskflow.task.Task
Base task to load drivers common to the tasks.
-
network_driver
¶
-
-
class
CalculateAmphoraDelta
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
-
default_provides
= 'delta'¶
-
execute
(loadbalancer, amphora, vrrp_port=None)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
CalculateDelta
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to calculate the delta between
the nics on the amphora and the ones we need. Returns a list for plumbing them.
-
default_provides
= 'deltas'¶
-
-
class
CreateVIPBasePort
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to create the VIP base port for an amphora.
-
execute
(vip, vip_sg_id, amphora_id)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
revert
(result, vip, vip_sg_id, amphora_id, *args, **kwargs)[source]¶ Revert this atom.
This method should undo any side-effects caused by previous execution of the atom using the result of the
execute()
method and information on the failure which triggered reversion of the flow the atom is contained in (if applicable).Parameters: - args – positional arguments that the atom required to execute.
- kwargs – any keyword arguments that the atom required to
execute; the special key
'result'
will contain theexecute()
result (if any) and the**kwargs
key'flow_failures'
will contain any failure information.
-
-
class
DeallocateVIP
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to deallocate a VIP.
-
class
DeletePort
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to delete a network port.
-
class
FailoverPreparationForAmphora
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to prepare an amphora for failover.
-
execute
(amphora)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
GetAmphoraNetworkConfigs
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to retrieve amphora network details.
-
execute
(loadbalancer, amphora=None)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
GetAmphoraNetworkConfigsByID
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to retrieve amphora network details.
-
execute
(loadbalancer_id, amphora_id=None)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
GetAmphoraeNetworkConfigs
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to retrieve amphorae network details.
-
execute
(loadbalancer_id)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
GetMemberPorts
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
-
execute
(loadbalancer, amphora)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
GetPlumbedNetworks
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to figure out the NICS on an amphora.
This will likely move into the amphora driver :returns: Array of networks
-
default_provides
= 'nics'¶
-
-
class
GetSubnetFromVIP
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to plumb a VIP.
-
class
GetVIPSecurityGroupID
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
-
execute
(loadbalancer_id)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
HandleNetworkDelta
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to plug and unplug networks
Plug or unplug networks based on delta
-
class
HandleNetworkDeltas
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to plug and unplug networks
Loop through the deltas and plug or unplug networks based on delta
-
class
PlugNetworks
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to plug the networks.
This uses the delta to add all missing networks/nics
-
class
PlugPorts
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to plug neutron ports into a compute instance.
-
execute
(amphora, ports)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
PlugVIP
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to plumb a VIP.
-
class
PlugVIPAmpphora
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to plumb a VIP.
-
class
RetrievePortIDsOnAmphoraExceptLBNetwork
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task retrieving all the port ids on an amphora, except lb network.
-
execute
(amphora)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
UnPlugNetworks
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to unplug the networks
Loop over all nics and unplug them based on delta
-
class
UnplugVIP
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to unplug the vip.
-
class
UpdateVIP
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to update a VIP.
-
execute
(loadbalancer)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
UpdateVIPForDelete
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to update a VIP for listener delete flows.
-
execute
(loadbalancer)[source]¶ Activate a given atom which will perform some operation and return.
This method can be used to perform an action on a given set of input requirements (passed in via
*args
and**kwargs
) to accomplish some type of operation. This operation may provide some named outputs/results as a result of it executing for later reverting (or for other atoms to depend on).NOTE(harlowja): the result (if any) that is returned should be persistable so that it can be passed back into this atom if reverting is triggered (especially in the case where reverting happens in a different python process or on a remote machine) and so that the result can be transmitted to other atoms (which may be local or remote).
Parameters: - args – positional arguments that atom requires to execute.
- kwargs – any keyword arguments that atom requires to execute.
-
-
class
UpdateVIPSecurityGroup
(**kwargs)[source]¶ Bases:
octavia.controller.worker.v1.tasks.network_tasks.BaseNetworkTask
Task to setup SG for LB.
octavia.controller.worker.v1.tasks.retry_tasks module¶
-
class
SleepingRetryTimesController
(attempts=1, name=None, provides=None, requires=None, auto_extract=True, rebind=None, revert_all=False, interval=1)[source]¶ Bases:
taskflow.retry.Times
A retry controller to attempt subflow retries a number of times.
This retry controller overrides the Times on_failure to inject a sleep interval between retries. It also adds a log message when all of the retries are exhausted.
Parameters: - attempts (int) – number of attempts to retry the associated subflow before giving up
- name – Meaningful name for this atom, should be something that is distinguishable and understandable for notification, debugging, storing and any other similar purposes.
- provides – A set, string or list of items that this will be providing (or could provide) to others, used to correlate and associate the thing/s this atom produces, if it produces anything at all.
- requires – A set or list of required inputs for this atom’s
execute
method. - rebind – A dict of key/value pairs used to define argument
name conversions for inputs to this atom’s
execute
method. - revert_all (bool) – when provided this will cause the full flow to revert when the number of attempts that have been tried has been reached (when false, it will only locally revert the associated subflow)
- interval (int) – Interval, in seconds, between retry attempts.
-
on_failure
(history, *args, **kwargs)[source]¶ Makes a decision about the future.
This method will typically use information about prior failures (if this historical failure information is not available or was not persisted the provided history will be empty).
Returns a retry constant (one of):
RETRY
: when the controlling flow must be reverted and restarted again (for example with new parameters).REVERT
: when this controlling flow must be completely reverted and the parent flow (if any) should make a decision about further flow execution.REVERT_ALL
: when this controlling flow and the parent flow (if any) must be reverted and marked as aFAILURE
.
-
revert
(history, *args, **kwargs)[source]¶ Reverts this retry.
On revert call all results that had been provided by previous tries and all errors caused during reversion are provided. This method will be called only if a subflow must be reverted without the retry (that is to say that the controller has ran out of resolution options and has either given up resolution or has failed to handle a execution failure).
Parameters: - args – positional arguments that the retry required to execute.
- kwargs – any keyword arguments that the retry required to execute.