Method: OpenStack::Compute::Connection#security_groups
- Defined in:
- lib/openstack/compute/connection.rb
#security_groups ⇒ Object
Security Groups: Returns a hash with the security group IDs as keys:
> { “1381” => { :tenant_id=>“12345678909876”, :id=>1381, :name=>“default”, :description=>“default”,
:rules=> [
{:from_port=>22, :group=>{}, :ip_protocol=>"tcp", :to_port=>22,
:parent_group_id=>1381, :ip_range=>{:cidr=>"0.0.0.0/0"}, :id=>4902},
{:from_port=>80, :group=>{}, :ip_protocol=>"tcp", :to_port=>80,
:parent_group_id=>1381, :ip_range=>{:cidr=>"0.0.0.0/0"}, :id=>4903},
{:from_port=>443, :group=>{}, :ip_protocol=>"tcp", :to_port=>443,
:parent_group_id=>1381, :ip_range=>{:cidr=>"0.0.0.0/0"}, :id=>4904},
{:from_port=>-1, :group=>{}, :ip_protocol=>"icmp", :to_port=>-1,
:parent_group_id=>1381, :ip_range=>{:cidr=>"0.0.0.0/0"}, :id=>4905}],
]
},
"1234" => { ... } }
383 384 385 386 387 388 |
# File 'lib/openstack/compute/connection.rb', line 383 def security_groups raise OpenStack::Exception::NotImplemented.new("os-security-groups not implemented by #{@connection.http.keys.first}", 501, "NOT IMPLEMENTED") unless api_extensions[:"os-security-groups"] or api_extensions[:security_groups] response = @connection.req("GET", "/os-security-groups") res = OpenStack.symbolize_keys(JSON.parse(response.body)) res[:security_groups].inject({}){|result, c| result[c[:id].to_s] = c ; result } end |