You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@deltacloud.apache.org by ma...@apache.org on 2011/07/12 11:07:58 UTC

svn commit: r1145498 - in /incubator/deltacloud/trunk/server: lib/deltacloud/drivers/ec2/ec2_driver.rb server.rb views/firewalls/show.html.haml views/firewalls/show.xml.haml

Author: marios
Date: Tue Jul 12 09:07:57 2011
New Revision: 1145498

URL: http://svn.apache.org/viewvc?rev=1145498&view=rev
Log:
Restores delete firewall rule semantics:

DELETE /api/firewalls/:firewall/:rule_id

Also, exposes URI for each firewall rule in
returned XML.

Modified:
    incubator/deltacloud/trunk/server/lib/deltacloud/drivers/ec2/ec2_driver.rb
    incubator/deltacloud/trunk/server/server.rb
    incubator/deltacloud/trunk/server/views/firewalls/show.html.haml
    incubator/deltacloud/trunk/server/views/firewalls/show.xml.haml

Modified: incubator/deltacloud/trunk/server/lib/deltacloud/drivers/ec2/ec2_driver.rb
URL: http://svn.apache.org/viewvc/incubator/deltacloud/trunk/server/lib/deltacloud/drivers/ec2/ec2_driver.rb?rev=1145498&r1=1145497&r2=1145498&view=diff
==============================================================================
--- incubator/deltacloud/trunk/server/lib/deltacloud/drivers/ec2/ec2_driver.rb (original)
+++ incubator/deltacloud/trunk/server/lib/deltacloud/drivers/ec2/ec2_driver.rb Tue Jul 12 09:07:57 2011
@@ -640,7 +640,7 @@ module Deltacloud
 #--
         def delete_firewall_rule(credentials, opts={})
           ec2 = new_client(credentials)
-          firewall = opts[:id]
+          firewall = opts[:firewall]
           protocol, from_port, to_port, addresses, groups = firewall_rule_params(opts[:rule_id])
           safely do
             ec2.manage_security_group_ingress(firewall, from_port, to_port, protocol, "revoke", addresses, groups)

Modified: incubator/deltacloud/trunk/server/server.rb
URL: http://svn.apache.org/viewvc/incubator/deltacloud/trunk/server/server.rb?rev=1145498&r1=1145497&r2=1145498&view=diff
==============================================================================
--- incubator/deltacloud/trunk/server/server.rb (original)
+++ incubator/deltacloud/trunk/server/server.rb Tue Jul 12 09:07:57 2011
@@ -994,6 +994,19 @@ get "#{Sinatra::UrlForHelper::DEFAULT_UR
   end
 end
 
+#delete a firewall rule
+delete '/api/firewalls/:firewall/:rule' do
+  opts = {}
+  opts[:firewall] = params[:firewall]
+  opts[:rule_id] = params[:rule]
+  driver.delete_firewall_rule(credentials, opts)
+  respond_to do |format|
+    format.html {redirect firewall_url(params[:firewall])}
+    format.xml {204}
+    format.json {204}
+  end
+end
+
 #FIREWALLS
 collection :firewalls do
   description "Allow user to define firewall rules for an instance (ec2 security groups) eg expose ssh access [port 22, tcp]."
@@ -1073,20 +1086,4 @@ collection :firewalls do
     end
   end
 
-#delete a firewall rule DELETE /api/firewalls/:firewall/rule - with param rule_id
-  operation :rule, :method => :delete, :member => true do
-    description 'Delete the specified firewall rule from the given firewall'
-    param :firewall, :required, :string
-    param :rule_id,  :required, :string
-    with_capability :delete_firewall_rule
-    control do
-      driver.delete_firewall_rule(credentials, params)
-      respond_to do |format|
-        format.html {redirect firewall_url(params[:id])}
-        format.xml {204}
-        format.json {204}
-      end
-    end
-  end
-
-end #firewalls
+end

Modified: incubator/deltacloud/trunk/server/views/firewalls/show.html.haml
URL: http://svn.apache.org/viewvc/incubator/deltacloud/trunk/server/views/firewalls/show.html.haml?rev=1145498&r1=1145497&r2=1145498&view=diff
==============================================================================
--- incubator/deltacloud/trunk/server/views/firewalls/show.html.haml (original)
+++ incubator/deltacloud/trunk/server/views/firewalls/show.html.haml Tue Jul 12 09:07:57 2011
@@ -36,9 +36,8 @@
             type: #{source[:type]}, family: #{source[:family]}, address: #{source[:address]}, prefix: #{source[:prefix]}
             %br
       %dd
-        %form{ :action => "#{firewall_url(@firewall.name)}/rule", :method => :post}
+        %form{ :action => "#{firewall_url(@firewall.name)}/#{rule.id}", :method => :post}
           %input{:type => "hidden", :name => "_method", :value => "delete"}
-          %input{:type => "hidden", :name => "rule_id", :value => rule.id}
           %input{:type => :submit, :value => "Delete Rule"}
   %dd
     = link_to_action 'Delete Firewall', destroy_firewall_url(@firewall.name), :delete

Modified: incubator/deltacloud/trunk/server/views/firewalls/show.xml.haml
URL: http://svn.apache.org/viewvc/incubator/deltacloud/trunk/server/views/firewalls/show.xml.haml?rev=1145498&r1=1145497&r2=1145498&view=diff
==============================================================================
--- incubator/deltacloud/trunk/server/views/firewalls/show.xml.haml (original)
+++ incubator/deltacloud/trunk/server/views/firewalls/show.xml.haml Tue Jul 12 09:07:57 2011
@@ -9,7 +9,7 @@
         - haml_concat @firewall.send(attribute)
   %rules
     - @firewall.rules.each do |rule|
-      %rule{:id => rule.id}
+      %rule{:href => firewall_url(@firewall.id) + '/' + rule.id, :id => rule.id}
         - rule.attributes.select{|attr| attr != :sources && attr != :id}.each do |rule_attrib|
           - haml_tag("#{rule_attrib}".tr('-', '_'), :<) do
             - haml_concat rule.send(rule_attrib)
@@ -18,4 +18,4 @@
             - if source[:type] == "group"
               %source{:name => source[:name], :type=> source[:type], :owner=>source[:owner]}
             - else
-              %source{:prefix => source[:prefix], :address=> source[:address], :family=>source[:family], :type => source[:type]}
\ No newline at end of file
+              %source{:prefix => source[:prefix], :address=> source[:address], :family=>source[:family], :type => source[:type]}