diff options
| author | Trey Morris <trey.morris@rackspace.com> | 2011-06-27 16:48:03 -0500 |
|---|---|---|
| committer | Trey Morris <trey.morris@rackspace.com> | 2011-06-27 16:48:03 -0500 |
| commit | 0a2c2e0975c3037372b47b09a7f547eb197ef7d7 (patch) | |
| tree | a9bf06911ddd8765bb322727dce61c695502dcde /nova/db | |
| parent | e2a734a19584a1d46b85e28e427320b4cd1a840c (diff) | |
| parent | 8a8c013cd4513b07e936125a23188e7608f40d58 (diff) | |
trunk merge, getting fierce..
Diffstat (limited to 'nova/db')
| -rw-r--r-- | nova/db/api.py | 10 | ||||
| -rw-r--r-- | nova/db/sqlalchemy/api.py | 21 |
2 files changed, 31 insertions, 0 deletions
diff --git a/nova/db/api.py b/nova/db/api.py index a3a3d2b6b..b372ac6a7 100644 --- a/nova/db/api.py +++ b/nova/db/api.py @@ -1094,6 +1094,16 @@ def provider_fw_rule_get_all(context): return IMPL.provider_fw_rule_get_all(context) +def provider_fw_rule_get_all_by_cidr(context, cidr): + """Get all provider-level firewall rules.""" + return IMPL.provider_fw_rule_get_all_by_cidr(context, cidr) + + +def provider_fw_rule_destroy(context, rule_id): + """Delete a provider firewall rule from the database.""" + return IMPL.provider_fw_rule_destroy(context, rule_id) + + ################### diff --git a/nova/db/sqlalchemy/api.py b/nova/db/sqlalchemy/api.py index c3de412d7..d13efb874 100644 --- a/nova/db/sqlalchemy/api.py +++ b/nova/db/sqlalchemy/api.py @@ -2421,6 +2421,7 @@ def provider_fw_rule_create(context, rule): return fw_rule_ref +@require_admin_context def provider_fw_rule_get_all(context): session = get_session() return session.query(models.ProviderFirewallRule).\ @@ -2428,6 +2429,26 @@ def provider_fw_rule_get_all(context): all() +@require_admin_context +def provider_fw_rule_get_all_by_cidr(context, cidr): + session = get_session() + return session.query(models.ProviderFirewallRule).\ + filter_by(deleted=can_read_deleted(context)).\ + filter_by(cidr=cidr).\ + all() + + +@require_admin_context +def provider_fw_rule_destroy(context, rule_id): + session = get_session() + with session.begin(): + session.query(models.ProviderFirewallRule).\ + filter_by(id=rule_id).\ + update({'deleted': True, + 'deleted_at': utils.utcnow(), + 'updated_at': literal_column('updated_at')}) + + ################### |
