Sha256: 4f1b24b9f35d9939091ff5b03279cfd5d9510e67b44f315761c552dac648fa8c
Contents?: true
Size: 1.52 KB
Versions: 15
Compression:
Stored size: 1.52 KB
Contents
require 'yao/resources/security_group_rule' module Yao::Resources class SecurityGroup < Base include TenantAssociationable friendly_attributes :name, :description def rules self[["rules", SecurityGroupRule].join("__")] ||= (case self.class.service when "compute" self["rules"].map{|r| SecurityGroupRule.new(r) } when "network" self["security_group_rules"].map{|r| SecurityGroupRule.new(r) } end) end self.service = "network" self.resource_name = "security-group" self.resources_name = "security-groups" end end Yao.config.param :security_group_service, "compute" do |service| case service when "compute" Yao::Resources::SecurityGroup.service = service Yao::Resources::SecurityGroup.resource_name = "os-security-group" Yao::Resources::SecurityGroup.resources_name = "os-security-groups" Yao::Resources::SecurityGroupRule.service = service Yao::Resources::SecurityGroupRule.resource_name = "os-security-group-rule" Yao::Resources::SecurityGroupRule.resources_name = "os-security-group-rules" when "network" Yao::Resources::SecurityGroup.service = service Yao::Resources::SecurityGroup.resource_name = "security-group" Yao::Resources::SecurityGroup.resources_name = "security-groups" Yao::Resources::SecurityGroupRule.service = service Yao::Resources::SecurityGroupRule.resource_name = "security-group-rule" Yao::Resources::SecurityGroupRule.resources_name = "security-group-rules" end end
Version data entries
15 entries across 15 versions & 1 rubygems