neutron_fwaas.services.firewall.service_drivers.driver_api module

neutron_fwaas.services.firewall.service_drivers.driver_api module

class neutron_fwaas.services.firewall.service_drivers.driver_api.FirewallDriver(service_plugin)

Bases: object

Firewall v2 interface for driver

That driver interface does not persist Firewall v2 data in any database. The driver needs to do it by itself.

create_firewall_group(context, firewall_group)
create_firewall_policy(context, firewall_policy)
create_firewall_rule(context, firewall_rule)
delete_firewall_group(context, id)
delete_firewall_policy(context, id)
delete_firewall_rule(context, id)
get_firewall_group(context, id, fields=None)
get_firewall_groups(context, filters=None, fields=None)
get_firewall_policies(context, filters=None, fields=None)
get_firewall_policy(context, id, fields=None)
get_firewall_rule(context, id, fields=None)
get_firewall_rules(context, filters=None, fields=None)
insert_rule(context, policy_id, rule_info)
is_supported_l2_port(port)
is_supported_l3_port(port)
remove_rule(context, policy_id, rule_info)
update_firewall_group(context, id, firewall_group)
update_firewall_policy(context, id, firewall_policy)
update_firewall_rule(context, id, firewall_rule)
class neutron_fwaas.services.firewall.service_drivers.driver_api.FirewallDriverDB(*args, **kwargs)

Bases: neutron_fwaas.services.firewall.service_drivers.driver_api.FirewallDriverDBMixin

FirewallDriverDBMixin interface for driver with database.

Each firewall backend driver that needs a database persistency should inherit from this driver. It can overload needed methods from the following pre/postcommit methods. Any exception raised during a precommit method will result in not having related records in the databases.

create_firewall_group_postcommit(context, firewall_group)
create_firewall_group_precommit(context, firewall_group)
create_firewall_policy_postcommit(context, firewall_policy)
create_firewall_policy_precommit(context, firewall_policy)
create_firewall_rule_postcommit(context, firewall_rule)
create_firewall_rule_precommit(context, firewall_rule)
delete_firewall_group_postcommit(context, firewall_group)
delete_firewall_group_precommit(context, firewall_group)
delete_firewall_policy_postcommit(context, firewall_policy)
delete_firewall_policy_precommit(context, firewall_policy)
delete_firewall_rule_postcommit(context, firewall_rule)
delete_firewall_rule_precommit(context, firewall_rule)
insert_rule_postcommit(context, policy_id, rule_info)
insert_rule_precommit(context, policy_id, rule_info)
remove_rule_postcommit(context, policy_id, rule_info)
remove_rule_precommit(context, policy_id, rule_info)
update_firewall_group_postcommit(context, old_firewall_group, new_firewall_group)
update_firewall_group_precommit(context, old_firewall_group, new_firewall_group)
update_firewall_policy_postcommit(context, old_firewall_policy, new_firewall_policy)
update_firewall_policy_precommit(context, old_firewall_policy, new_firewall_policy)
update_firewall_rule_postcommit(context, old_firewall_rule, new_firewall_rule)
update_firewall_rule_precommit(context, old_firewall_rule, new_firewall_rule)
class neutron_fwaas.services.firewall.service_drivers.driver_api.FirewallDriverDBMixin(*args, **kwargs)

Bases: neutron_fwaas.services.firewall.service_drivers.driver_api.FirewallDriver

FirewallDriverDB mixin to provision the database on behalf of the driver

That driver interface persists Firewall data in its database and forwards the result to pre and post commit methods.

create_firewall_group(context, firewall_group)
create_firewall_group_postcommit(context, firewall_group)
create_firewall_group_precommit(context, firewall_group)
create_firewall_policy(context, firewall_policy)
create_firewall_policy_postcommit(context, firewall_policy)
create_firewall_policy_precommit(context, firewall_policy)
create_firewall_rule(context, firewall_rule)
create_firewall_rule_postcommit(context, firewall_rule)
create_firewall_rule_precommit(context, firewall_rule)
delete_firewall_group(context, id)
delete_firewall_group_postcommit(context, firewall_group)
delete_firewall_group_precommit(context, firewall_group)
delete_firewall_policy(context, id)
delete_firewall_policy_postcommit(context, firewall_policy)
delete_firewall_policy_precommit(context, firewall_policy)
delete_firewall_rule(context, id)
delete_firewall_rule_postcommit(context, firewall_rule)
delete_firewall_rule_precommit(context, firewall_rule)
get_firewall_group(context, id, fields=None)
get_firewall_groups(context, filters=None, fields=None)
get_firewall_policies(context, filters=None, fields=None)
get_firewall_policy(context, id, fields=None)
get_firewall_rule(context, id, fields=None)
get_firewall_rules(context, filters=None, fields=None)
insert_rule(context, policy_id, rule_info)
insert_rule_postcommit(context, policy_id, rule_info)
insert_rule_precommit(context, policy_id, rule_info)
remove_rule(context, policy_id, rule_info)
remove_rule_postcommit(context, policy_id, rule_info)
remove_rule_precommit(context, policy_id, rule_info)
update_firewall_group(context, id, firewall_group_delta)
update_firewall_group_postcommit(context, old_firewall_group, new_firewall_group)
update_firewall_group_precommit(context, old_firewall_group, new_firewall_group)
update_firewall_policy(context, id, firewall_policy_delta)
update_firewall_policy_postcommit(context, old_firewall_policy, new_firewall_policy)
update_firewall_policy_precommit(context, old_firewall_policy, new_firewall_policy)
update_firewall_rule(context, id, firewall_rule_delta)
update_firewall_rule_postcommit(context, old_firewall_rule, new_firewall_rule)
update_firewall_rule_precommit(context, old_firewall_rule, new_firewall_rule)
class neutron_fwaas.services.firewall.service_drivers.driver_api.FirewallDriverRPCMixin

Bases: object

FirewallAgent interface for driver with rpc callback listener.

Each firewall backend driver that needs a rpc callback listener should inherit from this driver.

start_rpc_listener()
Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.