octavia.controller.worker.v2.tasks package¶
Submodules¶
octavia.controller.worker.v2.tasks.amphora_driver_tasks module¶
- class AmpListenersUpdate(**kwargs)[source]¶
Bases:
BaseAmphoraTaskTask 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
*argsand**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 AmpRetry(attempts=1, name=None, provides=None, requires=None, auto_extract=True, rebind=None, revert_all=False)[source]¶
Bases:
Times- 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.
- class AmphoraCertUpload(**kwargs)[source]¶
Bases:
BaseAmphoraTaskUpload a certificate to the amphora.
- class AmphoraComputeConnectivityWait(**kwargs)[source]¶
Bases:
BaseAmphoraTaskTask to wait for the compute instance to be up.
- class AmphoraConfigUpdate(**kwargs)[source]¶
Bases:
BaseAmphoraTaskTask to push a new amphora agent configuration to the amphora.
- 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
*argsand**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:
BaseAmphoraTaskTask to finalize the amphora before any listeners are configured.
- class AmphoraGetDiagnostics(**kwargs)[source]¶
Bases:
BaseAmphoraTaskTask to get diagnostics on the amphora and the loadbalancers.
- class AmphoraGetInfo(**kwargs)[source]¶
Bases:
BaseAmphoraTaskTask to get information on an amphora.
- class AmphoraIndexListenerUpdate(**kwargs)[source]¶
Bases:
BaseAmphoraTaskTask to update the listeners on one amphora.
- execute(loadbalancer, amphora_index, amphorae, amphorae_status: dict, new_amphora_id: str, timeout_dict=())[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
*argsand**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:
BaseAmphoraTaskTask to reload all listeners on an amphora.
- class AmphoraIndexUpdateVRRPInterface(**kwargs)[source]¶
Bases:
BaseAmphoraTaskTask to get and update the VRRP interface device name from amphora.
- execute(amphora_index, amphorae, amphorae_status: dict, new_amphora_id: str, 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
*argsand**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:
BaseAmphoraTaskTask to start keepalived on an amphora.
This will reload keepalived if it is already running.
- execute(amphora_index, amphorae, amphorae_status: dict, new_amphora_id: str, 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
*argsand**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:
BaseAmphoraTaskTask to update the VRRP configuration of an amphora.
- class AmphoraPostNetworkPlug(**kwargs)[source]¶
Bases:
BaseAmphoraTaskTask to notify the amphora post network plug.
- class AmphoraPostVIPPlug(**kwargs)[source]¶
Bases:
BaseAmphoraTaskTask to notify the amphora post VIP plug.
- class AmphoraUpdateVRRPInterface(**kwargs)[source]¶
Bases:
BaseAmphoraTaskTask 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
*argsand**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:
BaseAmphoraTaskTask 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
*argsand**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:
BaseAmphoraTaskTask to update the VRRP configuration of an amphora.
- class AmphoraeGetConnectivityStatus(**kwargs)[source]¶
Bases:
BaseAmphoraTaskTask that checks amphorae connectivity status.
Check and return the connectivity status of both amphorae in ACTIVE STANDBY load balancers
- execute(amphorae: List[dict], new_amphora_id: str, 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
*argsand**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 AmphoraePostNetworkPlug(**kwargs)[source]¶
Bases:
BaseAmphoraTaskTask to notify the amphorae post network plug.
- class AmphoraePostVIPPlug(**kwargs)[source]¶
Bases:
BaseAmphoraTaskTask to notify the amphorae post VIP plug.
- class ListenerDelete(**kwargs)[source]¶
Bases:
BaseAmphoraTaskTask to delete the listener on the vip.
- class ListenersStart(**kwargs)[source]¶
Bases:
BaseAmphoraTaskTask to start all listeners on the vip.
- class ListenersUpdate(**kwargs)[source]¶
Bases:
BaseAmphoraTaskTask to update amphora with all specified listeners’ configurations.
- class SetAmphoraFirewallRules(**kwargs)[source]¶
Bases:
BaseAmphoraTaskTask to push updated firewall ruls to an amphora.
- execute(amphorae: List[dict], amphora_index: int, amphora_firewall_rules: List[dict], amphorae_status: dict, 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
*argsand**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.v2.tasks.cert_task module¶
- class GenerateServerPEMTask(**kwargs)[source]¶
Bases:
BaseCertTaskCreate 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
*argsand**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.v2.tasks.compute_tasks module¶
- class AttachPort(**kwargs)[source]¶
Bases:
BaseComputeTask
- class CertComputeCreate(**kwargs)[source]¶
Bases:
ComputeCreate
- class ComputeCreate(**kwargs)[source]¶
Bases:
BaseComputeTaskCreate the compute instance for a new amphora.
- class ComputeDelete(**kwargs)[source]¶
Bases:
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
*argsand**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 ComputeRetry(attempts=1, name=None, provides=None, requires=None, auto_extract=True, rebind=None, revert_all=False)[source]¶
Bases:
Times- 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.
- class ComputeWait(**kwargs)[source]¶
Bases:
BaseComputeTaskWait for the compute driver to mark the amphora active.
- execute(compute_id, amphora_id, availability_zone)[source]¶
Wait for the compute driver to mark the amphora active
- Parameters:
compute_id – virtual machine UUID
amphora_id – id of the amphora object
availability_zone – availability zone metadata dictionary
- Raises:
Generic exception if the amphora is not active
- Returns:
An amphora object
- class DeleteAmphoraeOnLoadBalancer(**kwargs)[source]¶
Bases:
BaseComputeTaskDelete 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
*argsand**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:
BaseComputeTask
- class NovaServerGroupDelete(**kwargs)[source]¶
Bases:
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
*argsand**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.v2.tasks.database_tasks module¶
- class AssociateFailoverAmphoraWithLBID(**kwargs)[source]¶
Bases:
BaseDatabaseTaskAssociate failover amphora with loadbalancer in the database.
- class BaseDatabaseTask(**kwargs)[source]¶
Bases:
TaskBase task to load drivers common to the tasks.
- class CountPoolChildrenForQuota(**kwargs)[source]¶
Bases:
BaseDatabaseTaskCounts 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:
BaseDatabaseTaskTask to create an initial amphora in the Database.
- class CreateVRRPGroupForLB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskCreate a VRRP group for a load balancer.
- class DecrementHealthMonitorQuota(**kwargs)[source]¶
Bases:
BaseDatabaseTaskDecrements the health monitor quota for a project.
Since sqlalchemy will likely retry by itself always revert if it fails
- class DecrementL7policyQuota(**kwargs)[source]¶
Bases:
BaseDatabaseTaskDecrements the l7policy quota for a project.
Since sqlalchemy will likely retry by itself always revert if it fails
- class DecrementL7ruleQuota(**kwargs)[source]¶
Bases:
BaseDatabaseTaskDecrements the l7rule quota for a project.
Since sqlalchemy will likely retry by itself always revert if it fails
- class DecrementListenerQuota(**kwargs)[source]¶
Bases:
BaseDatabaseTaskDecrements the listener quota for a project.
Since sqlalchemy will likely retry by itself always revert if it fails
- class DecrementLoadBalancerQuota(**kwargs)[source]¶
Bases:
BaseDatabaseTaskDecrements the load balancer quota for a project.
Since sqlalchemy will likely retry by itself always revert if it fails
- class DecrementMemberQuota(**kwargs)[source]¶
Bases:
BaseDatabaseTaskDecrements the member quota for a project.
Since sqlalchemy will likely retry by itself always revert if it fails
- class DecrementPoolQuota(**kwargs)[source]¶
Bases:
BaseDatabaseTaskDecrements the pool quota for a project.
Since sqlalchemy will likely retry by itself always revert if it fails
- class DeleteAmpMemberPortInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskDelete an amphora member port record in the DB.
- class DeleteHealthMonitorInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskDelete the health monitor in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class DeleteHealthMonitorInDBByPool(**kwargs)[source]¶
Bases:
DeleteHealthMonitorInDBDelete the health monitor in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class DeleteL7PolicyInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskDelete the L7 policy in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class DeleteL7RuleInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskDelete the L7 rule in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class DeleteListenerInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskDelete the listener in the DB.
- class DeleteMemberInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskDelete the member in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class DeletePoolInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskDelete the pool in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class DisableAmphoraHealthMonitoring(**kwargs)[source]¶
Bases:
BaseDatabaseTaskDisable amphora health monitoring.
This disables amphora health monitoring by removing it from the amphora_health table.
- class DisableLBAmphoraeHealthMonitoring(**kwargs)[source]¶
Bases:
BaseDatabaseTaskDisable 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:
BaseDatabaseTaskTask to retrieve amphora network details.
- class GetAmphoraFirewallRules(**kwargs)[source]¶
Bases:
BaseDatabaseTaskTask to build firewall rules for the amphora.
- execute(amphorae, amphora_index, amphorae_network_config)[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
*argsand**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 GetAmphoraeFromLoadbalancer(**kwargs)[source]¶
Bases:
BaseDatabaseTaskTask to pull the amphorae from a loadbalancer.
- class GetListenersFromLoadbalancer(**kwargs)[source]¶
Bases:
BaseDatabaseTaskTask to pull the listeners from a loadbalancer.
- class GetLoadBalancer(**kwargs)[source]¶
Bases:
BaseDatabaseTaskGet an load balancer object from the database.
- class GetVipFromLoadbalancer(**kwargs)[source]¶
Bases:
BaseDatabaseTaskTask to pull the vip from a loadbalancer.
- class MarkAmphoraAllocatedInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskWill 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:
_MarkAmphoraRoleAndPriorityInDBAlter the amphora role to: Backup.
- class MarkAmphoraBootingInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the amphora as booting in the database.
- class MarkAmphoraDeletedInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the amphora deleted in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkAmphoraHealthBusy(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark amphora health monitoring busy.
This prevents amphora failover by marking the amphora busy in the amphora_health table.
- class MarkAmphoraMasterInDB(**kwargs)[source]¶
Bases:
_MarkAmphoraRoleAndPriorityInDBAlter the amphora role to: MASTER.
- class MarkAmphoraPendingDeleteInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the amphora pending delete in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkAmphoraPendingUpdateInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the amphora pending update in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkAmphoraStandAloneInDB(**kwargs)[source]¶
Bases:
_MarkAmphoraRoleAndPriorityInDBAlter the amphora role to: Standalone.
- class MarkHealthMonitorActiveInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the health monitor ACTIVE in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkHealthMonitorPendingCreateInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark 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:
BaseDatabaseTaskMark 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:
BaseDatabaseTaskMark the health monitor pending update in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkHealthMonitorsOnlineInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTask
- class MarkL7PolicyActiveInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the l7policy ACTIVE in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkL7PolicyPendingCreateInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the l7policy pending create in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkL7PolicyPendingDeleteInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the l7policy pending delete in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkL7PolicyPendingUpdateInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the l7policy pending update in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkL7RuleActiveInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the l7rule ACTIVE in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkL7RulePendingCreateInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the l7rule pending create in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkL7RulePendingDeleteInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the l7rule pending delete in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkL7RulePendingUpdateInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark 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:
BaseDatabaseTaskMark the load balancer active in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkLBActiveInDBByListener(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the load balancer active in the DB using a listener dict.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkLBAmphoraeDeletedInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskTask to mark a list of amphora deleted in the Database.
- class MarkLBAmphoraeHealthBusy(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark 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:
BaseDatabaseTaskMark 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:
BaseDatabaseTaskMark the load balancer deleted in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkLBPendingDeleteInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark 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:
BaseDatabaseTaskMark the listener deleted in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkListenerPendingDeleteInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the listener pending delete in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkMemberActiveInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the member ACTIVE in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkMemberPendingCreateInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the member pending create in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkMemberPendingDeleteInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the member pending delete in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkMemberPendingUpdateInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the member pending update in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkPoolActiveInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the pool ACTIVE in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkPoolPendingCreateInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the pool pending create in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkPoolPendingDeleteInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the pool pending delete in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class MarkPoolPendingUpdateInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskMark the pool pending update in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class ReloadAmphora(**kwargs)[source]¶
Bases:
BaseDatabaseTaskGet an amphora object from the database.
- class ReloadLoadBalancer(**kwargs)[source]¶
Bases:
BaseDatabaseTaskGet an load balancer object from the database.
- class UpdateAdditionalVIPsAfterAllocation(**kwargs)[source]¶
Bases:
BaseDatabaseTaskUpdate a VIP associated with a given load balancer.
- class UpdateAmpFailoverDetails(**kwargs)[source]¶
Bases:
BaseDatabaseTaskUpdate amphora failover details in the database.
- class UpdateAmphoraCertBusyToFalse(**kwargs)[source]¶
Bases:
BaseDatabaseTaskUpdate the amphora cert_busy flag to be false.
- class UpdateAmphoraComputeId(**kwargs)[source]¶
Bases:
BaseDatabaseTaskAssociate amphora with a compute in DB.
- class UpdateAmphoraDBCertExpiration(**kwargs)[source]¶
Bases:
BaseDatabaseTaskUpdate the amphora expiration date with new cert file date.
- class UpdateAmphoraInfo(**kwargs)[source]¶
Bases:
BaseDatabaseTaskUpdate amphora with compute instance details.
- class UpdateAmphoraVIPData(**kwargs)[source]¶
Bases:
BaseDatabaseTaskUpdate amphorae VIP data.
- class UpdateAmphoraeVIPData(**kwargs)[source]¶
Bases:
BaseDatabaseTaskUpdate amphorae VIP data.
- class UpdateHealthMonInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskUpdate the health monitor in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class UpdateL7PolicyInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskUpdate the L7 policy in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class UpdateL7RuleInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskUpdate the L7 rule in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class UpdateLBServerGroupInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskUpdate 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:
BaseDatabaseTaskUpdate the listener in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class UpdateLoadbalancerInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskUpdate the loadbalancer in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class UpdateMemberInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskUpdate the member in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class UpdatePoolInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskUpdate the pool in the DB.
Since sqlalchemy will likely retry by itself always revert if it fails
- class UpdatePoolMembersOperatingStatusInDB(**kwargs)[source]¶
Bases:
BaseDatabaseTaskUpdates the members of a pool operating status.
Since sqlalchemy will likely retry by itself always revert if it fails
- class UpdateVIPAfterAllocation(**kwargs)[source]¶
Bases:
BaseDatabaseTaskUpdate a VIP associated with a given load balancer.
octavia.controller.worker.v2.tasks.lifecycle_tasks module¶
- class AmphoraIDToErrorOnRevertTask(**kwargs)[source]¶
Bases:
BaseLifecycleTaskTask 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
*argsand**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**kwargskey'flow_failures'will contain any failure information.
- class AmphoraToErrorOnRevertTask(**kwargs)[source]¶
Bases:
AmphoraIDToErrorOnRevertTaskTask 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
*argsand**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**kwargskey'flow_failures'will contain any failure information.
- class HealthMonitorToErrorOnRevertTask(**kwargs)[source]¶
Bases:
BaseLifecycleTaskTask 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
*argsand**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**kwargskey'flow_failures'will contain any failure information.
- class L7PolicyToErrorOnRevertTask(**kwargs)[source]¶
Bases:
BaseLifecycleTaskTask to set a l7policy to ERROR on revert.
- execute(l7policy, listeners, 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
*argsand**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_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**kwargskey'flow_failures'will contain any failure information.
- class L7RuleToErrorOnRevertTask(**kwargs)[source]¶
Bases:
BaseLifecycleTaskTask to set a l7rule to ERROR on revert.
- execute(l7rule, l7policy_id, listeners, 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
*argsand**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, l7policy_id, listeners, 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**kwargskey'flow_failures'will contain any failure information.
- class ListenerToErrorOnRevertTask(**kwargs)[source]¶
Bases:
BaseLifecycleTaskTask 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
*argsand**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**kwargskey'flow_failures'will contain any failure information.
- class ListenersToErrorOnRevertTask(**kwargs)[source]¶
Bases:
BaseLifecycleTaskTask to set a listener to ERROR on revert.
- execute(listeners)[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
*argsand**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, *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**kwargskey'flow_failures'will contain any failure information.
- class LoadBalancerIDToErrorOnRevertTask(**kwargs)[source]¶
Bases:
BaseLifecycleTaskTask 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
*argsand**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**kwargskey'flow_failures'will contain any failure information.
- class LoadBalancerToErrorOnRevertTask(**kwargs)[source]¶
Bases:
LoadBalancerIDToErrorOnRevertTaskTask 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
*argsand**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**kwargskey'flow_failures'will contain any failure information.
- class MemberToErrorOnRevertTask(**kwargs)[source]¶
Bases:
BaseLifecycleTaskTask to set a member to ERROR on revert.
- execute(member, listeners, loadbalancer, pool_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
*argsand**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_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**kwargskey'flow_failures'will contain any failure information.
- class MembersToErrorOnRevertTask(**kwargs)[source]¶
Bases:
BaseLifecycleTaskTask to set members to ERROR on revert.
- execute(members, listeners, loadbalancer, pool_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
*argsand**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_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**kwargskey'flow_failures'will contain any failure information.
- class PoolToErrorOnRevertTask(**kwargs)[source]¶
Bases:
BaseLifecycleTaskTask to set a pool to ERROR on revert.
- execute(pool_id, 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
*argsand**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_id, 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**kwargskey'flow_failures'will contain any failure information.
octavia.controller.worker.v2.tasks.network_tasks module¶
- class AdminDownPort(**kwargs)[source]¶
Bases:
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
*argsand**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**kwargskey'flow_failures'will contain any failure information.
- class AllocateVIP(**kwargs)[source]¶
Bases:
BaseNetworkTaskTask to allocate a VIP.
- class AllocateVIPforFailover(**kwargs)[source]¶
Bases:
AllocateVIPTask to allocate/validate the VIP for a failover flow.
- class ApplyQos(**kwargs)[source]¶
Bases:
BaseNetworkTaskApply Quality of Services to the VIP
- class ApplyQosAmphora(**kwargs)[source]¶
Bases:
BaseNetworkTaskApply Quality of Services to the VIP
- class BaseNetworkTask(**kwargs)[source]¶
Bases:
TaskBase task to load drivers common to the tasks.
- property network_driver¶
- class BuildAMPData(**kwargs)[source]¶
Bases:
BaseNetworkTaskGlue task to store the AMP_DATA dict from netork port information.
- execute(loadbalancer, amphora, port_data)[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
*argsand**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 CalculateAmphoraDelta(**kwargs)[source]¶
Bases:
BaseNetworkTask- default_provides = 'delta'¶
- execute(loadbalancer, amphora, availability_zone)[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
*argsand**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:
BaseNetworkTaskTask to calculate the delta between
the nics on the amphora and the ones we need. Returns a list for plumbing them.
- default_provides = 'deltas'¶
- execute(loadbalancer, availability_zone)[source]¶
Compute which NICs need to be plugged
for the amphora to become operational.
- Parameters:
loadbalancer – the loadbalancer to calculate deltas for all amphorae
availability_zone – availability zone metadata dict
- Returns:
dict of octavia.network.data_models.Delta keyed off amphora id
- class CreateSRIOVBasePort(**kwargs)[source]¶
Bases:
BaseNetworkTaskTask to create a SRIOV base port for an amphora.
- execute(loadbalancer, amphora, subnet)[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
*argsand**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, loadbalancer, amphora, subnet, *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**kwargskey'flow_failures'will contain any failure information.
- class CreateVIPBasePort(**kwargs)[source]¶
Bases:
BaseNetworkTaskTask to create the VIP base port for an amphora.
- execute(vip, vip_sg_id, amphora_id, additional_vips)[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
*argsand**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, additional_vips, *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**kwargskey'flow_failures'will contain any failure information.
- class DeallocateVIP(**kwargs)[source]¶
Bases:
BaseNetworkTaskTask to deallocate a VIP.
- class DeleteAmphoraMemberPorts(**kwargs)[source]¶
Bases:
BaseNetworkTaskTask to delete all of the member ports on an Amphora.
- execute(amphora_id, 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
*argsand**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 DeletePort(**kwargs)[source]¶
Bases:
BaseNetworkTaskTask to delete a network port.
- class GetAmphoraNetworkConfigs(**kwargs)[source]¶
Bases:
BaseNetworkTaskTask 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
*argsand**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:
BaseNetworkTaskTask 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
*argsand**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:
BaseNetworkTaskTask 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
*argsand**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:
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
*argsand**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:
BaseNetworkTaskTask 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:
BaseNetworkTaskTask to plumb a VIP.
- class GetVIPSecurityGroupID(**kwargs)[source]¶
Bases:
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
*argsand**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:
BaseNetworkTaskTask to plug and unplug networks
Plug or unplug networks based on delta
- class HandleNetworkDeltas(**kwargs)[source]¶
Bases:
BaseNetworkTaskTask to plug and unplug networks
Loop through the deltas and plug or unplug networks based on delta
- class PlugPorts(**kwargs)[source]¶
Bases:
BaseNetworkTaskTask 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
*argsand**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 PlugVIPAmphora(**kwargs)[source]¶
Bases:
BaseNetworkTaskTask to plumb a VIP.
- class RetrievePortIDsOnAmphoraExceptLBNetwork(**kwargs)[source]¶
Bases:
BaseNetworkTaskTask 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
*argsand**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:
BaseNetworkTaskTask to unplug the networks
Loop over all nics and unplug them based on delta
- class UnplugVIP(**kwargs)[source]¶
Bases:
BaseNetworkTaskTask to unplug the vip.
- class UpdateAmphoraSecurityGroup(**kwargs)[source]¶
Bases:
BaseNetworkTaskTask to update SGs for an Amphora.
- execute(loadbalancer_id: str)[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
*argsand**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 UpdateVIP(**kwargs)[source]¶
Bases:
BaseNetworkTaskTask to update a VIP.
- execute(listeners)[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
*argsand**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:
BaseNetworkTaskTask to update a VIP for listener delete flows.
- 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
*argsand**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:
BaseNetworkTaskTask to setup SG for LB.
octavia.controller.worker.v2.tasks.notification_tasks module¶
- class BaseNotificationTask(**kwargs)[source]¶
Bases:
Task- event_type = None¶
- 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
*argsand**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 SendCreateNotification(**kwargs)[source]¶
Bases:
BaseNotificationTask- event_type = 'octavia.loadbalancer.create.end'¶
- class SendDeleteNotification(**kwargs)[source]¶
Bases:
BaseNotificationTask- event_type = 'octavia.loadbalancer.delete.end'¶
- class SendUpdateNotification(**kwargs)[source]¶
Bases:
BaseNotificationTask- event_type = 'octavia.loadbalancer.update.end'¶
octavia.controller.worker.v2.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:
TimesA 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
executemethod.rebind – A dict of key/value pairs used to define argument name conversions for inputs to this atom’s
executemethod.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.
octavia.controller.worker.v2.tasks.shim_tasks module¶
- class AmphoraToAmphoraeWithVRRPIP(name=None, provides=None, requires=None, auto_extract=True, rebind=None, inject=None, ignore_list=None, revert_rebind=None, revert_requires=None)[source]¶
Bases:
TaskA shim class to convert a single Amphora instance to a list.
- execute(amphora: dict, base_port: dict)[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
*argsand**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.